更改datetime字段时的转换错误

时间:2014-03-23 13:13:22

标签: sql sql-server sql-server-2008

尝试更新datetime字段时,我收到以下消息

  

将varchar数据类型转换为日期时间数据类型会导致超出范围的值。

SQL:

begin tran
update CCDocumentDCH 
set DocDate = '2013-10-28 12:17:00.000'
where DocNo = '1346815'

1 个答案:

答案 0 :(得分:2)

如果您使用的是SQL Server(这只是猜测),请尝试进行显式转换:

update CCDocumentDCH
    set DocDate = convert(datetime, '2013-10-28 12:17:00.000', 121)
    where DocNo = '1346815';

我确实认为存在可以解释" XXXX-XX-XX" as" YYYY-DD-MM"。显式转换修复了此问题。