SQL服务器日期错误

时间:2010-12-22 11:08:30

标签: sql date sql-server-2000 spelling

UPDATE tblCampaigns SET startDate = '4 December, 2010', endDate = '14 January, 2011' WHERE ID = 147
UPDATE tblCampaigns SET startDate = '24 December, 2010', endDate = '17 Febuary, 2011' WHERE parentID = 147 and campaignName = 'regerg'

Microsoft OLE DB Provider for SQL Server error '80040e07' 

Syntax error converting datetime from character string. 

/bb/campaignManager/index.asp, line 147 

当这些日期是2010年时,这些工作,但是一旦2011年出现错误,任何想法?它可能是错误的格式吗?

2 个答案:

答案 0 :(得分:4)

这是“二月”,而不是“二月”

答案 1 :(得分:0)

我不会这样做:如果数据库中的默认日期格式发生变化,那么你就会被打破。相反,始终明确地将字符串转换为日期,因此您保留控件:

UPDATE tblCampaigns SET startDate = convert(datetime, '20101204', 112)

http://msdn.microsoft.com/en-us/library/aa226054(v=SQL.80).aspx