Sql server 2008 SQL Update语句-靠近“的语法错误;设置“;?
我正在根据一些coldfusion逻辑生成下面的sql语句,但它出错了,我似乎找不到原因,我尝试了许多不同的修改,但似乎没有任何帮助Sql server 2008 SQL Update语句-靠近“的语法错误;设置“;?,sql-server-2008,sql-update,Sql Server 2008,Sql Update,我正在根据一些coldfusion逻辑生成下面的sql语句,但它出错了,我似乎找不到原因,我尝试了许多不同的修改,但似乎没有任何帮助 UPDATE MAIN_RECORDS SET JONUM = NULL, SET CUSTNAME = 'Super Sweet Name', SET CONTACTDT = 02/28/2011, SET ENGRECDT = 03/07/2011, SET HOW_WR_DT = 03/07/2011, SET COMM_DT = 03/29/2
UPDATE MAIN_RECORDS
SET JONUM = NULL,
SET CUSTNAME = 'Super Sweet Name',
SET CONTACTDT = 02/28/2011,
SET ENGRECDT = 03/07/2011,
SET HOW_WR_DT = 03/07/2011,
SET COMM_DT = 03/29/2011,
SET FACAVALDT = NULL,
SET FAX_SUPDT = 03/07/2011,
SET LINENUM = 'CLPRO L6',
SET POLENUM = 'CLPRO 125 T T3',
SET REASON = '03/07/11 NO VAC FAC THIS IS THE WRONG INFORMATION IT WAS ON HERE TWICE',
SET REC_TYPE = 'H',
SET ORDER_TYPE = 'P',
SET CANCEL_ORDER = 'Y',
SET State_abbr = 'IL',
SET dbfk_state = 17,
SET xx_streetnumber = '2626',
SET xx_street = 'Fake St',
SET xx_city = 'NEWTON',
SET xx_class_of_service_ind = 'R',
SET xx_cellphone_ind = '1',
SET xx_assigned_phone = '3045653897',
SET xx_exchange_name = 'NEWTON',
SET XX_new_ref_code = '60',
SET xx_new_service_type = '11',
SET ORD_COMDT = 03/11/2011,
SET delivery_date = NULL
WHERE ordernum = '08824112' AND exchnum = '304565'
目前management studio给我的错误是:
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'SET'.
您只需要一个
SET
语句,而不需要多个语句
此外,你的约会日期周围需要有单引号
e、 g:
看看这个声明。帖子中的语法完全错误:)
有关部分:
SET
{ column_name = { expression | DEFAULT | NULL }
| @variable = expression
| @variable = column = expression } [ ,...n ]
请注意,SET
只能指定一次。,…n
表示先前的构造(即在{}
中,可以再指定n次,用逗号分隔:SET
关键字本身不在该构造内
愉快的编码。通常情况下,此命令的语法将遵循此逻辑
UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value
因此,只有一个集合而不是您拥有的多个集合更新关键字中只需要一个集合来更新n个列-例如:
Update Employee
set City = Chennai,Country ='India',Employee name = 'Vignesh'
where Employee Id = 1X234
啊,有时候当你睡眠不足时,简单的事情就会从缝隙中溜走,谢谢你!好的,确保你也在约会前后加上引号。在提交我的答案后,我注意到了这一点。除了引用日期文字,我还建议坚持使用
'yyyymmdd'
,因为根据服务器或用户的语言或区域设置,您使用的格式可能会被误解'yyyymmdd'
是DATETIME
/SMALLDATETIME
的唯一格式,根据语言/区域设置,该格式保证不会中断。
Update Employee
set City = Chennai,Country ='India',Employee name = 'Vignesh'
where Employee Id = 1X234