2 Stimmen

MySQL generiert Sql-Insert für abhängige Tabellen

Ich brauche erstellen Sql-Skript für einfügen in viele Tabellen - insgesamt in der Nähe von 2000, aber Tabellen verknüpft (es ist ein xml adjancency Modell) - so nach eingefügt haben in table1, erhalten id, fügen Sie einige Daten, einfügen in fk von table2 - vorherige id, und Daten, nach wiederholen für table3, für Tabelle 4,... Länge der Kette von verknüpften Tabellen - mehr als 20. Die Frage ist: Gibt es einen Code-Generator, der die Beziehungen zwischen den Tabellen aus dem Informationsschema lesen kann und - nachdem er eine Tabelle als Wurzel angegeben hat - den gesamten Baum der Einfügeabfrage generiert? Danke!

1voto

Aurimas Punkte 2478

Wenn Sie es nicht auf der Anwendungsebene machen können, schlage ich vor, dass Sie versuchen, es mit Auslöser .

Im Wesentlichen würden Sie einen "AFTER INSERT"-Trigger für jede der Tabellen erstellen. So etwas in der Art:

CREATE TRIGGER t1
AFTER INSERT ON table1
FOR EACH ROW
BEGIN
INSERT INTO table2 (id, attrib2) VALUES(NEW.id, NEW.attrib2);
END

CREATE TRIGGER t2
AFTER INSERT ON table2
FOR EACH ROW
BEGIN
INSERT INTO table3 (id, attrib3) VALUES(NEW.id, NEW.attrib3);
END

Dann würde eine Einfügung in Tabelle1 eine Einfügung in Tabelle2 auslösen, die wiederum eine Einfügung in Tabelle3 auslösen würde und so weiter.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X