2017-10-09 1 views
1

Ich erhalte diesen Fehler, nachdem ich die Abfrage ausführen. Beide Tabellen haben eine Spalte ID. Ich bin mit Microsoft SQL Server 2012Getting Die mehrteilige Bezeichner konnte nicht gebunden werden Fehler in SQL Server 2012

Msg 4104, Ebene 16, Status 1, Zeile 1
Die mehrteilige Bezeichner "CDATA.ID" konnte nicht gebunden werden.

Code:

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

Antwort

3

Um zu überprüfen, ob Datensatz bereits in der Tabelle vorhanden ist können Sie NOT EXISTS verwenden:

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]); 

Alternativ 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; 
Verwandte Themen