首页 > 解决方案 > 尝试在 SQL 中更新表

问题描述

我正在尝试使用查询来更新我的表,但它一直给我错误。请阅读 rem 以了解错误

UPDATE VM1DTA.DCIRPG CM     -- invalid column name cm
SET ILCHDRNUM =             -- incorrect syntax near SET and =
    (SELECT ILCHDRNUM FROM VM1DTA.DCIARG WHERE INCHDRNUM = CM.CHDRNUM);
COMMIT;

UPDATE dbo.DCIRPG CM        -- invalid column name cm
SET ILPYCLT =               -- incorrect syntax near SET and =
    (SELECT CLNTKEY
     FROM dbo.DCIARG
     WHERE CLNTKEY = CM.PAYCLT --the multipath CM.PAYCLT can't bound
       AND SEQNUMB = 1
       AND);

标签: sqlsql-server

解决方案


SQL Server 不允许在UPDATE. 您需要使用一个FROM子句:

UPDATE CM 
   SET ILCHDRNUM =    --incorrect syntax near SET and =
       (SELECT ILCHDRNUM FROM VM1DTA.DCIAPF WHERE INCHDRNUM = CM.CHDRNUM)
   FROM VM1DTA.DCIRGPF CM;

UPDATE CM     --invalid column name cm
    SET ILPYCLT =     --incorrect syntax near SET and =
           (SELECT CLNTKEY
            FROM dbo.DCIARG
            WHERE CLNTKEY = CM.PAYCLT AND
                  SEQNUMB = 1
           )
    FROM dbo.DCIRPG CM;

推荐阅读