SQL Update语句 - "SET"附近的语法错误?

Som*_*dom 3 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/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' 
Run Code Online (Sandbox Code Playgroud)

目前管理工作室给我的错误是:

Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'SET'.
Run Code Online (Sandbox Code Playgroud)

Pau*_*ock 11

您只需要1个SET语句,而不是您拥有的多个语句.

此外,您的日期需要在它们周围加上单引号.

例如:

UPDATE MAIN_RECORDS 
SET JONUM = NULL, 
    CUSTNAME = 'Super Sweet Name', 
    CONTACTDT = '02/28/2011', 
    ENGRECDT = '03/07/2011', 
    HOW_WR_DT = '03/07/2011', .....
Run Code Online (Sandbox Code Playgroud)


小智 5

查看UPDATE语句.帖子中的语法都错了:)

相关部分:

SET
        { column_name = { expression | DEFAULT | NULL }
        | @variable = expression
        | @variable = column = expression } [ ,...n ] 
Run Code Online (Sandbox Code Playgroud)

请注意,SET只能指定一次.的,...n表示先前consuct(即在{})可指定一个附加的 n次,用逗号分隔:所述SET关键字本身,但是,是构建体的外部.

快乐的编码.