如何将新行的id插入另一个链接表?

时间:2014-04-21 13:48:47

标签: php mysql sql foreign-keys

我有一张桌子,目的是用外键连接另外两张桌子(表3)。

table1 = id, name
table2 = id, sport
table3 = fk_table1_id, dk_table2_id

我用php做服务器端代码,当一行插入table2时,我需要一种自动在表3中插入行的方法。
但是我不知道如何做一个php查询,它将获得table2中新行的生成id?
(表1的id我确实存储在php变量中)
我正在看智能存储过程?

2 个答案:

答案 0 :(得分:1)

要遵循的步骤

  • table2
  • 中插入一行
  • table2中找到生成的密钥,并将其分配给PHP变量。
    -- read this into a php variable, say, $last_key  
    SELECT LAST_INSERT_ID();  
  • 使用$last_key语句中的insert table3

答案 1 :(得分:0)

您可以按照以下步骤操作:

1)在表2中将ID设置为AUTO_INCREMENT

2)创建如下工作的存储过程:

    A) INSERT Value to your Table2 :

    B) Increase ID value :  SELECT LAST_INSERT_ID() INTO VARIABLE; 

    C) Insert Value to your Table3   : use VARIABLE to get ID of Table2