2012-03-19 57 views
0

我有一个场景,托管提供程序将只提供一个备份SQL脚本的MSSQL数据库。这导致DateTime值被编写为'05/12/2011 17:04:00'。替换字符串'05/12/2011 17:04:00'Cast('05/12/2011 17:04:00'作为日期时间)

因此,错误,

“varchar数据类型为datetime数据类型的转换导致外的范围内的值。”

有谁知道一种方法,我可以找到所有的DateTime值并用Cast(...作为DateTime)包装它们?

+0

http://stackoverflow.com/questions/207190/sql-server-string-to-date-conversion – alexsuslin 2012-03-19 16:43:56

回答

0

试试这个它的工作

select cast('05/12/2011 17:04:00' as DateTime) 
+0

只有月份和日期值的值超出那么它会显示错误。由于Sql Server将接受日期格式为“mm/dd/yyyy”而不是此格式,因此它将显示该错误 – 2012-03-19 17:00:01

+0

请参阅此处我已给出此值'select cast('14/20/2017 17:04:00'为DateTime ),显示的错误是'将varchar数据类型转换为日期时间数据类型导致超出范围的值。“ – 2012-03-19 17:00:50

+0

有许多INSERT语句在哪里发生。有没有办法大规模更新INSERT语句?还是我从错误的方向接近这个? – 2012-03-19 17:02:58

相关问题