2011-06-25 40 views
2

我需要在許多表中創建用於插入的sql腳本 - 總數接近2000,但鏈接表(它是一個xml連接模型) - 所以在插入table1後,接收id,添加一些數據,插入表2中的fk - 先前的id,以及針對表4的重複for table3後的數據,... 鏈表長度 - 超過20個。 問題是:存在一些可以讀取關係的代碼生成器在來自信息模式的表之間和 - 以點爲根後的某個表之後 - 生成插入查詢的所有樹? 謝謝。MySQL爲依賴表生成sql插入

+0

是用一個鍵鏈接的表嗎?如「id」或每個表格中是否有多個不同的鍵 –

+0

簡答題:不。 – Johan

回答

1

如果你不能在應用層做到這一點,我建議試着用Triggers做到這一點。

本質上,您將在每個表上創建一個「AFTER INSERT」觸發器。如下所示:

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 

然後,insert into table1會觸發insert into table2,這會觸發insert into table3,等等。