mysql工作台上的复合主键

问题描述 投票:0回答:2

我在购物车桌product_IdUser_Id上生成复合主键。这些是product表和user表的主键。

所以

  • 我是否需要引用这些主键(外键,因此唯一的现有ID是两个表中都存在的ID)?
  • 我可以将它作为两个主键吗?
  • 如何在MySql Workbench中添加它们?
mysql mysql-workbench composite-primary-key
2个回答
0
投票

根据我过去的尝试,最好的办法是将product_id和user_id作为外键,并将它们引用到表product和user中各自的主键。这样您就可以确保数据填充错误。


0
投票

这取决于您希望使用数据库实现的目标。

很可能你想将它们作为外键添加到你的n到n表中。最简单的方法是在建模视图中打开工作台,并定义产品和用户之间的n到n关系。

这将确保您的表具有数据完整性。

您可能希望每个用户只有一个连接 - 产品对。您可以通过创建唯一的索引来实现这一点,或者将它们作为新表的主键。我个人不会选择组合键,因为你的模型可能会改变,然后你会更灵活。

© www.soinside.com 2019 - 2024. All rights reserved.