SQL Verknüpfte Tabellen, INSERT INTO & Verknüpfungen
Ich bin neu also bitte lieb sein.
Wurde mit SQL server 2008r2 zu erstellen, eine Datenbank basierend auf Informationen, gezogen von einem größeren, proprietäre SQL-Datenbank auf einem anderen server. Ich bin in der Lage zu ziehen-info in der neuen Tabelle über eine INSERT INTO-Funktion, aber wenn ich versuche, fügen Sie ein verknüpftes Feld aus einer anderen Tabelle auf die verlinkte Datenbank über eine Verknüpfung bekomme ich nirgendwo. Ohne weitere Umschweife, hier ist meine Abfrage in all seinen newbish Herrlichkeit:
INSERT INTO [Cust_Info].[dbo].[form_data]
(CustNo
,LastName
,FirstName
,Add1
,Add2
,City
,State
,Zip
,Phone1
,Phone2
,Email)
SELECT [CustNo]
,[LastName]
,[FirstName]
,[Add1]
,[Add2]
,[City]
,[State]
,[Zip]
,[Phone1]
,[Phone2]
,[Email]
FROM [XYZ-SERVER-1\ETC].[Service].[dbo].[Customer]
JOIN [XYZ-SERVER-1\ETC].[Service].[dbo].[EmailInv]
ON [Cust_Info].[dbo].[form_data].[CustNo]=[XYZ-SERVER-1\ETC].[Service].[dbo].
[EmailInv].[CustNo]
Ich bin sicher, ich bin ein sehr noob-Fehler, aber ich weiterhin zu erhalten "Msg 4104"s auf die "AUF Linie" und eine "Msg " 209" (Mehrdeutiger Spaltenname 'CustNo') in der ersten Zeile der select-Anweisung.
Habe ich sortiert durch viele ähnliche Beiträge auf verschiedenen Foren und von meinem Konto, sollte dies funktionieren. Kann einer von Euch Veteranen zeigen Sie bitte diese noob das Licht?
Vielen Dank im Voraus.
InformationsquelleAutor duke_of_dork | 2012-07-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gut, eine Sache habe ich bemerkt ist, die Sie versuchen zu
INSERT INTO
Ihrem Tisch[Cust_Info].[dbo].[form_data]
aber Sie sind nichtJOINing
auf diese Tabelle in derJOIN
- Anweisung. Damit die JOIN-syntax nicht korrekt erscheinen. Ich vermute, Sie versuchen zuJOIN
auf diese Weise bitte beachten Sie, dass ich verwendet Aliase:aber Sie müssen auch angeben, welche Tabelle, jede der Spalten aus. Zum Beispiel, die
[CustNo]
imSELECT
ist in zwei Tabellen, die Sie brauchen?danke für das edit, natürlich habe ich nicht vollständig Lesen diese vor der Buchung. 🙂
InformationsquelleAutor Taryn
Weil
CustNo
ist ein Feld in beiden Tabellen, so dass SQL nicht weiß, welche man wählen.versuchen:
Ich würde gerne wissen, warum erhalte ich ein downvote. Downvoter, hinterlassen Sie bitte einen Kommentar
warum diese Antwort war "dicht" und nicht richtig für Sie ? Es ist eine Verknüpfung, so CustNo Feld werden die gleichen in beiden Tabellen. Es ist indistint, welche Sie wählen
ElV - das habe ich nicht downvote. ich brauchte diese Informationen so gut, aber bluefeet trifft den Nagel auf den Kopf. ich habe unterscheiden müssen zwischen den Tabellen, aber die ALIAS-Konzept ist, was meine Abfrage funktioniert. Also, warum Sie waren in der Nähe, aber ich wollte nicht wählen, Sie als meine Antwort. Ich immer noch WIRKLICH zu schätzen Ihre Eingabe. 🙂
InformationsquelleAutor Gonzalo.-
Haben Sie custno in beiden Tabellen. Sie sollten vorangehen mit Kunden.CustNo zu identifizieren, die die Quelle der Tabelle:
Offensichtlich keine andere Spalten dupliziert werden zwischen den Tabellen. Im Allgemeinen, wenn dabei verbindet, ist es eine gute Idee, vor allen referenzierten Spalten (überall), mit Ihren source-Tabellen.
InformationsquelleAutor Gordon Linoff