将日期数据类型转换为日期时间数据类型会产生
超出范围的价值。
声明已经终止。
我只需要将日期字段转换为日期时间格式。
答案 0 :(得分:1)
将日期转换为datetime2的代码示例
DECLARE @d1 date;
SET @d1 = GETDATE()
-- When converting date to datetime the minutes portion becomes zero.
SELECT CAST (@d1 AS datetime2) AS [date as datetime2]
有关强制转换和转换的详细信息,请参阅Microsoft reference。
答案 1 :(得分:1)
您可能超出了范围异常,因为Date
支持的日期范围为
January 1, 1 and December 31, 9999
,而DateTime
仅支持日期范围
January 1, 1753 to December 31, 9999
。
想知道为什么1753? Read this.(推荐阅读任何喜欢琐事项目的人)
尝试转换为Datetime2
而不是Datetime
,这应该没问题,因为Datetime2
支持类似于日期的日期范围。
转换只需使用CAST
:
SELECT CAST(YourDateTypeColumn As Datetime2)
FROM YourTable