【发布时间】:2017-11-15 02:55:39
【问题描述】:
部分关系用单线表示,总关系用双线表示。在一些 ER 图中,可选和强制关系分别用虚线和单线表示。
这些概念之间的定义的确切区别是什么?如果可能,请使用示例。
【问题讨论】:
标签: entity entity-relationship erd
部分关系用单线表示,总关系用双线表示。在一些 ER 图中,可选和强制关系分别用虚线和单线表示。
这些概念之间的定义的确切区别是什么?如果可能,请使用示例。
【问题讨论】:
标签: entity entity-relationship erd
考虑以下示例:
Patient 或Laboratory 可以独立于任何关系而存在。一些Patients 可能是Purchase Medicine,一些Laboratories 可能是Produce Medicine,因此这些实体集部分参与了它们的关系。
Medicine 不能通过Laboratory 成为Produced,因此Medicine 完全参与Produced 关系。 Medicine 可以在没有 Purchased 的情况下存在,因此 Medicine 部分参与 Purchase 关系。
Patient 可能Purchase 一些Medicine 没有Prescription,因此Prescription 对于Buys 关系是可选的。相反,如果没有Patient 和Medicine,Purchase 就不能存在,因此这些角色对于关系来说是强制性的。在Produced 关系中,这两个角色都是强制性的。
这里的基本区别是基数限制了关系的存在,而参与限制了实体的存在。当关系集中的角色是强制性的时,这意味着如果没有填充该角色的实体,关系实例就无法存在。当一个实体集完全参与到一个关系中时,就意味着一个实体没有关联就不能存在。
【讨论】: