SQL Server 日期格式转换:DATETIME 到 DD-MM-YYYY
在 SQL Server 中,检索 DD-MM 中的日期值时-YYYY 格式,用户经常需要将这些值存储在 DATETIME 数据类型中,同时保留相同的格式。这个问题探讨了此要求的解决方案。
提供的查询 SELECT CONVERT(VARCHAR(10), GETDATE(), 105) 成功地将当前日期转换为所需的 DD-MM-YYYY 格式VARCHAR 数据类型。但是,将此值存储在 DATETIME 数据类型中需要不同的方法。
在 SQL Server 中,DATETIME 值存储为 2 个 4 字节整数,这使得它们本质上是未格式化的。要以特定格式显示或检索日期,必须使用适当的格式标识符将它们转换为 VARCHAR 数据类型。
要在 DATETIME 数据类型中实现所需的格式,请考虑以下事项:
例如插入 dd/MM/yyyy 格式的日期安全地:
INSERT MyTable (DateField) VALUES ('01/10/2010') -- dd/MM/yyyy not safe
请改用安全格式:
INSERT MyTable (DateField) VALUES ('20101001') -- yyyyMMdd safe
请注意,选择 DATETIME 字段时,SSMS 会显示格式化值为了方便。实际的内部表示是一个8字节整数。
以上是如何在 SQL Server 的 DATETIME 数据类型中安全地存储 DD-MM-YYYY 日期?的详细内容。更多信息请关注PHP中文网其他相关文章!