2010-10-04 88 views
2
[project_select] 
UserID (fk) | project_id (fk) | project_category_id (fk) 

[project_category] 
project_category_id | category 

[projects] 
project_id | projectname 

[project_user] 
UserID | Name 

如何与表中的PHP project_category项目project_user,插入数据,以获得在project_select台自动值与FK的?插入mysql用PHP - 有外键插入问题

更新: 如何将这3个查询合并为一行?

INSERT INTO project_category 
VALUES (1,'Fruits') 

INSERT INTO projects 
VALUES (4,'Apple') 

INSERT INTO project_user 
VALUES (2,'Adam') 

与在project_select表这一个查询得到这个值:

[project_select] 
UserID (fk) | project_id (fk) | project_category_id (fk) 
    2    4     1 
+0

@elmanio你究竟是什么意思?“我如何在表格project_category,projects和project_user中使用php插入数据,以便自动使用FK的project_select表中的值?”。我猜很多其他人完全不理解。 – 2010-10-04 20:43:52

回答

1

您可以使用mysql_insert_id函数检索刚插入的ID。

mysql_query("INSERT INTO Persons VALUES (4,'Nilsen', 'Johan', 'Bakken 2', 'Stavanger')"); 
$person_id = mysql_insert_id(); 

所以,做插入的表格中,调用mysql_insert_id()每次插入后,存储插入ID和最后使用的ID在mysql命令来创建连接表。

+0

不,我希望与[project_select]表格一样,我怎样才能在表格中插入值,以便在FK字段中自动获取值? – elmanino 2010-10-04 21:24:04

+0

不确定我关注你。使用mysql_insert_id检索三个表上新创建的主键将为您提供插入到project_select中的键。 – 2010-10-04 21:34:21

+0

更新了我的问题 – elmanino 2010-10-04 21:43:53

0

我怀疑我理解正确你的问题。但是如果你想要在project_select表中自动输入值?那么使用MySql触发器怎么样?但是在使用它之前,请确保你已经清楚数据库内部信息。

What are triggers?, Setting up triggers

但是,请说明这一点 -

问题与国外 钥匙插入?