用 Chen 符号绘制 ER 图时。是否所有 1:N 关系都用总参与约束双线绘制?例如:一张发票可以有多次付款。并且付款必须具有发票编号,因为已为发票完成付款。这有 1:n 的关系,所以我如何把它放在图表中? 例子
问问题
1106 次
1 回答
0
不,所有 1:N 关系都不需要多方实体集的完全参与。一个人可以在一栋楼里,一栋楼可以容纳多人,但一栋楼可以是空的,人可以在外面。
在您的示例中,必须每个都Payment
必须与Invoice
吗?如果是这样,则使用双关联线表示完全参与关系Payment
。Received
双边框菱形表示识别关系。使用它表明 aPayment
不是由它自己的属性来标识的,而是由它的Invoice
和一个弱键来标识的。弱键通常是一个序数或角色,它本身不是唯一的,但用于细分父实体。例如,考虑一个模型,其中Invoices
有数字,Payments
并由一个数字和一个序列号标识,Invoice
以指示其上的第一次、第二次或第三次付款Invoice
。
弱实体集必须完全参与它们的识别关系,但请记住,完全参与并不意味着识别关系。
另请参阅我对可选性(强制、可选)和参与(全部、部分)是否相同的回答?
于 2017-07-06T19:19:40.427 回答