【问题标题】:On the relationship of database tables to a pivot/junction table关于数据库表与枢轴/联结表的关系
【发布时间】:2010-09-03 21:39:54
【问题描述】:

在数据库中,可以通过创建第三个表来创建表之间的多对多关系,该表使用外键将两者映射在一起。第三张表和原来的两张表是什么关系?

例如,如果表 A 和表 B 具有多对多关系并且表 AB 是数据透视表,那么 A->AB 关系是否始终是多对一关系,并且 B-> AB关系也总是多对一的关系?

【问题讨论】:

    标签: database relational-database foreign-key-relationship database-theory


    【解决方案1】:

    我相信简短的回答是“是”。 :)

    简单地说,外键关系必须将AB列映射到A中的单个列或B中的单个列。但是由于AB的内容代表了A和B之间的多对多关系,因此可以定义是 AB 中 A 键或 B 键的多个实例。同时,AB中出现重复记录,即。多次表示相同的 A-B 关系,会出错。

    所以,是的:AB 两侧的一对多。

    【讨论】:

      【解决方案2】:

      挑剔,A->AB和B->AB是一对多的关系,不是多对一的:A中的实体应该在A中出现一次,但在AB中可以出现多次(链接它到几个 B 实例); B 中的实体应该在 B 中出现一次,但在 AB 中可能再次出现多次(将其链接到多个 A 实例)。

      【讨论】:

        猜你喜欢
        • 2020-04-13
        • 1970-01-01
        • 1970-01-01
        • 2021-01-07
        • 1970-01-01
        • 2019-08-20
        • 2019-07-05
        • 1970-01-01
        相关资源
        最近更新 更多