如何解决"将varchar数据类型转换为日期时间数据类型会导致超出范围的值。"错误

时间:2016-10-27 08:07:03

标签: sql-server datetime

select top 10  
    FormANo, Created, Changed 
from 
    FormA 
where  
    Created >= convert(datetime, '2015-07-05 14:04:11.000') 
    and Created <= convert(datetime, '2016-04-21 20:13:08.280')

当我运行查询时,我收到以下错误

  

Msg 242,Level 16,State 3,Line 4
  将varchar数据类型转换为日期时间数据类型会导致超出范围的值。

如何在SQL Server 2014中使用原始SQL查询解决此问题?

1 个答案:

答案 0 :(得分:4)

很可能SQL Server正在尝试以您提供的另一种格式解析数据。

您可以使用this table:

中的一个值设置格式

convert(datetime, '2016-04-21 20:13:08.280', 121)

121 = yyyy-mm-dd hh:mi:ss.mmm(24h)