2013-08-24 149 views
0

在php mysql中,如何在兩個表中同時輸入數據,並且這兩個表都具有主鍵 - 外鍵關係。比如說。使用一個查詢將數據插入到兩個表中

表1

id(P.K) | username | password 

表2

id(F.K) | fname | lname | email 

我已經研究,我不想使用LAST_INSERT_ID()或mysql_insert_id()。還有其他方法嗎?

+0

爲什麼你不想使用last_insert_id或類似的?除了不使用身份列,答案是否定的。不使用身份將很難推薦,並且您仍然希望在同一個事務中插入兩個身份... –

回答

0

有很多方法可以做到這一點,其中之一(和最好的恕我直言)正在您的主表創建一個觸發器,將更新您的第二個表。例如:

CREATE TRIGGER <trigger name> AFTER INSERT ON <your_primary_table> 
FOR EACH ROW 
BEGIN 
    SET @id = NEW.id; 
    INSERT INTO <your_second_table>(id) VALUES (@id); 
END; 
相關問題