Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Função de formato de data do SQL Server


No SQL Server, um tipo de dados DATETIME é armazenado como 2 inteiros de 4 bytes para que não tenha uma formatação específica como essa.

Se você deseja retornar a data em um formato específico, você precisa CONVERTER para VARCHAR com o identificador de formato apropriado especificado.

Se você tiver um datetime em um VARCHAR e quiser armazená-lo em um campo DATETIME no SQL Server, certifique-se de passar esse valor para o SQL em um formato que sempre será interpretado com segurança. por exemplo. O formato dd/mm/AAAA não é seguro, pois dependendo das configurações, pode ser tratado como mm/dd/aaaa quando entra. Os formatos seguros são:
yyyyMMdd
yyyy-MM-ddThh:mi:ss.mmm

por exemplo.
INSERT MyTable (DateField) VALUES ('01/10/2010') -- dd/MM/yyyy not safe
INSERT MyTable (DateField) VALUES ('20101001') -- yyyyMMdd safe

Atualização:
Quando você SELECIONA um campo DATETIME (GETDATE(), campo, variável....) o que você vê no SSMS é um valor formatado, pois é isso que é útil para você, em vez de mostrar sua representação interna real de 8 bytes .