2017-10-09 34 views
1

我在执行查询后出现此错误。两个表都有一列ID。我使用Microsoft SQL Server 2012获取SQL Server 2012中无法绑定多部分标识符错误

消息4104,级别16,状态1,行
多部分标识符 “CDATA.ID” 无法绑定。

代码:

INSERT INTO CDATA(Name, Mobile, Email, [Address], [Date]) 
    SELECT Name, Mobile, Email, [Address], [Date] 
    FROM CustomerData 
    WHERE CustomerData.ID != CDATA.[ID] 

回答

3

要检查是否战绩表已经存在,你可以使用NOT EXISTS

INSERT INTO CDATA(Name, Mobile, Email, [Address], [Date]) 
SELECT Name, Mobile, Email, [Address], [Date] 
FROM CustomerData 
WHERE NOT EXISTS (SELECT 1 FROM CData WHERE CustomerData.ID = CDATA.[ID]); 

或者EXCEPT

INSERT INTO CDATA(Name, Mobile, Email, [Address], [Date]) 
SELECT Name, Mobile, Email, [Address], [Date] 
FROM CustomerData 
EXCEPT 
SELECT Name, Mobile, Email, [Address], [Date] 
FROM CDATA; 
相关问题