【问题标题】:One-to-many Using Bridge Table一对多使用桥接表
【发布时间】:2017-06-07 02:21:40
【问题描述】:

我正在建立模型之间的关系,我想知道将桥表用于一对多关系是否有任何危害?

即这些是一些模型

  • 用户
  • 团队

每个用户可能有也可能没有团队或组。在team_idgroup_id 的用户模型中使用可为空的 FK 会更好,还是可以使用桥接表 team_usergroup_user? (这几乎不可能是多对多关系)

将桥接表用于一对多会有什么不良影响吗?

【问题讨论】:

    标签: mysql one-to-many


    【解决方案1】:

    “桥接表”通常用于建模多对多。在您的情况下,一个用户可以在多个团队或组中吗?如果是这样,桥接表就是你想要的。如果没有,我会选择 nullable-FK。

    如果您想要一对多的桥接表,您应该使用唯一索引来确保您只有“一个”。

    现在 null 本身就是一些宗教战争的主题。有很好的论据可以避免它们。在这种情况下,我认为它们没问题 - 这意味着 0(fk 为 NULL)或 1(fk 指向用户所属的团队或组。)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-04
      • 1970-01-01
      • 2019-07-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-19
      相关资源
      最近更新 更多