0

我正在尝试在 VB.NET 代码中更新 SQL Server 表中的多行。SELECT但是,在包含更多语句之前,我专注于更新一行。我了解以下方法非常灵活,但会抛出错误“SQL 命令未正确结束”:

UPDATE ndcs 
SET    PACKAGE_TYPE_CODE = x.package_type_code, 
       PACKAGE_DESC = x.package_desc, 
       COMMENTS = x.comments 
FROM   hub_non_dcs_product_pkgtype ndcs 
       INNER JOIN (SELECT PRODUCT_ID = 'SEN0982_pdf_1', 
                          PACKAGE_TYPE_CODE = '', 
                          PACKAGE_DESC = '', 
                          COMMENTS = 'DPDC LITERATURE') x 
               ON x.product_id = ndcs.product_id 

我的语法有什么问题?

4

1 回答 1

1

尝试这个:

UPDATE ndcs 
SET (PACKAGE_TYPE_CODE, PACKAGE_DESC, COMMENTS )  = (
SELECT
    x.package_type_code, 
    x.package_desc, 
    x.comments 
FROM   
    hub_non_dcs_product_pkgtype ndcs 
    INNER JOIN (SELECT PRODUCT_ID = 'SEN0982_pdf_1', 
                      PACKAGE_TYPE_CODE = '', 
                      PACKAGE_DESC = '', 
                      COMMENTS = 'DPDC LITERATURE') x 
           ON x.product_id = ndcs.product_id 
)
于 2013-01-31T19:52:08.363 回答