使用特定格式将日期转换为 DATETIME
提供的查询 SELECT CONVERT(VARCHAR(10), GETDATE(), 105),将当前日期转换为 [DD-MM-YYYY] 格式的 VARCHAR。但是,查询不会以相同的格式将日期存储在 DATETIME 数据类型中。
SQL Server 中的 DATETIME 数据类型
与 VARCHAR 不同,SQL Server 中的 DATETIME 存储为两个 4 字节整数,不具有特定的格式。要以所需格式显示日期,必须使用适当的格式标识符将其转换为 VARCHAR。
转换为 DATETIME
如果您有 VARCHAR 格式的日期,并且如果希望将其存储在 DATETIME 字段中,那么使用 SQL Server 始终能正确解释的格式至关重要。安全格式包括:
例如:
INSERT MyTable (DateField) VALUES ('01/10/2010') -- dd/MM/yyyy not safe INSERT MyTable (DateField) VALUES ('20101001') -- yyyyMMdd safe
显示日期时间值
当您使用 SSMS 等工具选择 DATETIME 字段时,为了方便起见,您会看到格式化的值。然而,DATETIME 值的实际内部表示仍然是两个 4 字节整数。
以上是如何在 SQL Server 中安全地将日期与 DATETIME 相互转换?的详细内容。更多信息请关注PHP中文网其他相关文章!