将数据插入2个表中

时间:2014-02-09 11:02:37

标签: php mysql sql

我想问一下如何在数据库中的多个表中插入数据。 我有两张名为大学和部门的表。

university
uni_id |uni_name

department
dept_id|uni_id|dname

uni_id是部门中的外键,uni_id在大学表中设置为自动增量...

insert into university (uni_name) values ("any uni");
insert into department ( uni_id,dname )  values ("same as in uni_id in university table","any") 

我无法在department表(外键)中插入uni_id。大学表中的问题相同。

3 个答案:

答案 0 :(得分:0)

你可以通过插入带内连接的选择来实现这一点:

 insert into department ( uni_id,dname )  
 select u.uni_id , "any" 
 from university u 
 inner join department d
 on d.uni_id = u.uni_id

答案 1 :(得分:0)

希望它能奏效:

insert into university (uni_name) values ("any uni");
insert into department ( uni_id,dname )  values (LAST_INSERT_ID(),"any")

答案 2 :(得分:0)

insert into university (uni_name) values ("any uni");

插入部门表时

insert into department ( uni_id,dname ) 
 select u.uni_id , "any" 
 from university where uni_name = "any uni";