No SQL Server, tenho uma coluna varchar com valor como:
07/May/2012:00:06:22
07/May/2012:00:06:22
07/May/2012:00:06:22
07/May/2012:00:06:22
07/May/2012:00:06:22
- Como faço para converter esta coluna em uma coluna de data e hora com datas reais?
- Se isso não for possível, como apenas crio uma nova coluna e copio esses valores para ela, mas como valores de data e hora?
Assumindo que as datas em outros meses são truncadas para meses de 3 caracteres:
Depois de verificar, você pode descartar o varchar_col, renomear newcol e adicionar novamente quaisquer índices afetados.
Provavelmente você tem alguns dados que não se encaixam na coluna datetime em algum lugar do arquivo. Insira em uma tabela de preparo com um campo varchar ou navachar para a coluna e observe os dados. Você pode precisar ajustar alguns deles (ou anular registros inválidos) antes de carregar na tabela real.
Se você puder reformatar seu CSV para
07/May/2012 00:00:00
, ele funcionará. O SQL Server não gosta dos dois pontos entre data e hora.Caso contrário, concordo com @HLGEM - você precisa de uma tabela de preparação.
Tente o seguinte:
Contra uma mesa inteira, ficaria assim:
Ou:
1-. você pode verificar esta postagem: https://stackoverflow.com/questions/1509977/convert-varchar-into-datetime-in-sql-server
alguém tem o mesmo problema e poderia resolver com isso:
RESULTADO:
2-. se você quiser adicionar o mesmo valor a uma nova coluna, primeiro crie a coluna com um
e depois disso você pode fazer
Cumprimentos