【问题标题】:Er diagram one-to-many relationship - Participation constraintsEr图一对多关系-参与约束
【发布时间】:2017-07-06 09:45:33
【问题描述】:

使用 Chen 符号绘制 ER 图时。 是否所有 1:N 关系都用总参与约束双线绘制? 例如:一张发票可以有多个付款。并且付款必须具有发票编号,因为已为发票完成付款。这有 1:n 的关系,所以我如何把它放在图中? erd example

【问题讨论】:

    标签: database-design entity-relationship erd entity-relationship-model


    【解决方案1】:

    不,所有 1:N 关系都不需要多方实体集的完全参与。一个人可以在一栋楼里,而一栋楼可以容纳多人,但一栋楼可以是空的,人可以在外面。

    在您的示例中,每个Payment 都必须与Invoice 相关吗?如果是,则使用双重关联线表示Payment 完全参与Received 关系。

    双边框菱形表示识别关系。使用它表明Payment 不是由它自己的属性来识别的,而是由它的Invoice 和一个弱键来识别的。弱键通常是一个序数或角色,它本身不是唯一的,但用于细分父实体。例如,考虑一个模型,其中Invoices 有数字,PaymentsInvoice 数字和一个序列号标识,以指示该Invoice 的第一次、第二次或第三次付款。

    弱实体集必须完全参与它们的识别关系,但请记住,完全参与并不意味着识别关系。

    另见我对Is optionality (mandatory, optional) and participation (total, partial) are same?的回复

    【讨论】:

    • 所以,无论 1:N 还是 N:M,我们只需要考虑,实体是否必然与其他实体相关。
    • 是的,同样适用于三元和更高的关系,例如M:N:P
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-12
    • 2015-08-19
    • 2018-06-29
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    • 1970-01-01
    相关资源
    最近更新 更多