通过引用表插入到另一个表中的表中?

时间:2013-11-18 06:03:17

标签: php mysql sql codeigniter

在与许多人通过IRC讨论之后,我想出了这个数据库设计。 enter image description here

在我的项目中,用户又称会员可以拥有许多“团队”和“项目”在他的帐户上,也可以成为一些“项目”的一部分。此外,“团队”也可以有很多“会员”,包括创建它的会员。

现在我的问题是,假设一位会员希望在他的帐户下创建项目或团队(稍后我希望看到由特定成员创建的所有项目),我可以做一个在PHP中插入使用以下内容?

INSERT INTO projects VALUES(values) WHERE member_id = something

我猜可以使用会话变量获取member_id。

3 个答案:

答案 0 :(得分:1)

使用常规INSERT创建projectsteams行,然后使用在此处创建的ID插入projects_membersteams_members。您还可以使用表格的复数或单数名称(目前您有team而不是teams)。

答案 1 :(得分:0)

您的查询将是这样的事情

Insert into 
       table(columns) 
select (columns) from 
       another_table 
where 
       conditions=.

请记住,列的顺序和名称必须匹配。

答案 2 :(得分:0)

如果会员想要在他的帐户下创建项目或团队,则无法使用当前结构。

您需要在项目和团队表上再添加一列created_by。

“团队”表的名称应为“团队”。