我有一个以16/08/2010 17:17
我试图将其存储为日期时间,以便我可以对其进行转换。
问题是当我这样做时,我发现了超出范围的错误。 我该如何解决这个问题?
我的查询:
CAST(agreement_Date AS Datetime)
CONVERT(varchar,agreement_date,126)
错误:
varchar数据类型的转换 到日期时间数据类型导致了 超出范围的价值。
答案 0 :(得分:3)
而不是CAST
使用:
CONVERT(datetime, agreement_Date, 103)
103
指定dd/mm/yy
转换,我认为这是您的问题。 SQL Server首先查找月份,这会导致超出范围的异常。
答案 1 :(得分:1)
尝试使用103风格的CONVERT: http://msdn.microsoft.com/en-us/library/ms187928.aspx
SELECT CONVERT(datetime,'16/08/2010 17:17',103)
- > 2010-08-16 17:17:00.000
@Edit:错误的样式参数