sql >> Base de Datos >  >> RDS >> Sqlserver

Función de formato de fecha de SQL Server

En SQL Server, un tipo de datos DATETIME se almacena como 2 enteros de 4 bytes, por lo que no tiene un formato particular como este.

Si desea devolver la fecha en un formato específico, debe CONVERTIRLO a VARCHAR con el identificador de formato apropiado especificado.

Si tiene una fecha y hora en un VARCHAR y desea almacenarla en un campo DATETIME en SQL Server, debe asegurarse de pasar ese valor a SQL en un formato que siempre se interpretará de manera segura. p.ej. El formato dd/mm/YYYY no es seguro ya que, dependiendo de la configuración, podría tratarse como mm/dd/yyyy cuando se ingresa. Los formatos seguros son:

yyyyMMdd
yyyy-MM-ddThh:mi:ss.mmm

p.ej.

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

Actualización:
Cuando SELECCIONA un campo DATETIME (GETDATE(), campo, variable....) lo que ve en SSMS es un valor formateado ya que esto es lo que le resulta útil, en lugar de mostrar su representación interna real de 8 bytes .