如何使用相同的id在多个表中输入值

时间:2016-03-26 10:12:04

标签: php mysql

我有3张桌子 带字段的 emp_ref_table 1.emp_id(PK,AI)
2.emp_name
3.gender
4.emp_address

emp_login_table
1.id(AI,PK)
2.emp_id(FK)
3.Password(默认:密码)

emp_value_table
1.emp_value_id(PK)
2.emp_id(FK)
3.emp_photo
4.emp_resume

我必须一次在所有3个表中插入值。 假设首先,我在 emp_ref_table 中插入值,emp_id将自动生成
在生成emp_id后,我必须将最后一个emp_id存储在 login_table 中 登录表后,同样的emp_id也必须插入 emp_value_table

我已经尝试了这个并且它工作正常,现在卡在 emp_value_table 两个查询工作完全正常现在帮助我在emp_value_table中存储emp_id

insert into emp_ref_table(emp_name,gender,emp_address) values ('xyz','d','abc');
insert into `login_table`(emp_id) values(LAST_INSERT_ID());

PS:我正在使用存储过程

1 个答案:

答案 0 :(得分:1)

在存储过程中声明一个将保存新员工ID的变量。将记录插入员工参考表后,将新ID分配给varible。使用此变量将值分配给后续2个插入中的员工ID字段。

...
declare empid int;
insert into emp_ref_table(emp_name,gender,emp_address) values ('xyz','d','abc');
set empid=last_insert_id();
insert into `login_table`(emp_id) values(empid);
...