Hallo zusammen,
ich habe ein kleines Verständnisproblem beim INSERT INTO von Daten in verknüpfte Tabellen. Ich teste gerade ein wenig mit MSSQL 2005 rum und da taucht folgende Frage auf:
Eine Haupttabelle (Kunden_tbl) enthält Kundeninfos (ID, Name, Anschrift, …) und ist über die ID mit einer untergeordneten Tabelle (Kontakte_tbl) verknüpft. (ID, Kunden_ID, Name, Telefon, Email, …). Zur Verdeutlichung die dazu gehörende SELECT-Abfrage:
SELECT \* FROM Kunden\_tbl
LEFT JOIN Kontakte\_tbl
ON Kunden\_tbl.ID = Kontakte\_tbl.Kunden\_ID
So weit, so gut… Nun sollen die beiden Tabellen mit Daten befüllt werden. Für die Haupttabelle sehe ich noch kein Problem:
INSERT INTO Kunden\_tbl
VALUES ('Beispiel GmbH','Korngasse 99','München',...)
Die ID wird ja vom Server vergeben.
Aber anschließend sollen n Datensätze in die untergeordnete Kontakte-Tabelle eingegeben werden:
INSERT INTO Kontakte\_tbl
VALUES (?,'Herr Mustermann','080-12345','[email protected]', ...)
Mein Problem ist nun das ?-Zeichen… hier müsste ja die vom Server vergebene ID aus der ersten INSERT INTO rein… aber wie kieg’ ich die raus? Doch nicht über eine erneute Abfrage? Da muss es doch irgendeine elegante Lösung für geben, oder?
Gruß und Dank im Voraus
(Woly)