多对多关系的联结表是否应具有代理主键?

时间:2014-05-15 10:18:04

标签: php mysql laravel

我正在使用mySQL和Laravel。 我有两个表:用户和组。每个都有一个id字段和一个名字字段。 我希望用户能够属于许多组,反之亦然;所以我设置了与联结表的多对多关系:group_user。

我的第一个想法是它只需要两个字段:user_id和group_id,两个外键。 但有些东西告诉我,我可能也需要/想要这个表的id。我已经在互联网上的代码示例中看到了这两种方式,我只是想知道没有它我会失去什么。

我无法想到我将如何实际使用它;因为该表只是为了与其他两个表相关联。

1 个答案:

答案 0 :(得分:1)

人工主键有时在您的代码中非常有用。例如,当您要删除记录时,可以使用与其他表格相同的模式。 您只需传递一个ID而不是复合键的部分。