Primärschlüssel in andere tabelle eintragen

SigmundK

Grünschnabel
Hallo ich habe eine Mysql DB mit 2 Tabellen auf die ich mit php zugreife

wenn ich in der tabelle1 einen Datensatz hinzufüge wird automatich ein Primärschlüssel erstellt den ich in der Tabelle2 hinterlegen will.

bisher habe ich es immer so gemacht
(nur so als Beispiel )

INSERT INTO tabelle1 (name) VALUES ('test');
SELECT id FROM tabelle1 WHERE name='test';
UPDATE tabelle2 SET name_id=id;

das funktioniert zwar aber ist natürlich total umständlich und unübersichtlich
gibts da einen Befehl der das auf einmal macht?
hab folgendes ausprobiert hat aber nicht funktioniert

INSERT INTO tabelle1 (name) VALUES ('test') UPDATE tabelle2 SET name_id=id;

oder gibts eine andere möglichkeit den primärschlüssel herauszufinden so dass ich mir SELECT sparen kann?

Danke für euere Hilfe
 
Hi,

du suchst LAST_INSERT_ID(). Das liefert den zuletzt erzeugten Auto-Increment-Wert und kann in Deinem Beispiel wie folgt genutzt werden:

INSERT INTO tabelle1 (name) VALUES ('test');
UPDATE tabelle2 SET name_id=LAST_INSERT_ID();

HTH.
 
Zurück