Datensätze duplizieren
heinetz
- datenbank
Hallo Forum,
ich möchte Datensätze duplizieren ...
Zuerst mal einen Datensatz mit der id=x innerhalb der Tabelle table_a.
Das dürfte ja (eigentlich) so gehen:
INSERT INTO table_a SELECT * FROM table_a WHERE id=x
Wenn die id nicht der primary key wäre. Aber ich könnte das Feld doch aussparen, oder?:
INSERT INTO table_a SELECT alles, ausser, der, id FROM table_a WHERE id=x
Die ID der eingefügten Zeile bekomme ich dann mit:
SELECT last_insert_id() FROM table_a;
(ich nenne sie mal $new_id)
Nun gibt es aber eine weitere Tabelle table_b. In der gibt es 0-n Datensätze, die im zweiten Schritt auch kopiert werden sollen, wenn sie die a_id=x haben. Einen primary key gibt es in der table_b nicht. Geht das genauso mit mehreren Datensätzen?
INSERT INTO table_b SELECT alles, ausser, der, a_id, $new_id as a_id FROM table_b WHERE id=x
gruss, heinetz