在谈论数据模型和数据库时,术语基数(Cardinality)通常用来描述给定集合中允许的元素数量。
UML通常将相同的属性称为多重性(Multiplicity)。
这两个术语之间是否有区别或者它们是同义词?
简而言之:一个 多重性 由下限和上限的 基数 组成。 基数是集合中元素的数量。 因此,多重性告诉您集合中允许的最小和最大成员数量。它们不是同义词。
感谢您提出以上问题和答案。
今天早上因这些术语而感到困惑(喝咖啡也没用)。
给定以下示例:
0-1 ---------- 1-*
多重性:
第一个多重性,适用于左侧实体:0-1
第二个多重性,适用于右侧实体:1-*
第一个多重性的基数:
下限基数:0
上限基数:1
第二个多重性的基数:
下限基数:1
上限基数:*
Multiplicity 是关联对象集合的约束条件,而 Cardinality 是集合中对象的计数。
实际上,多重性是对基数的约束。
一个事件的多重性 = 元素的参与度 + 元素的基数。 参与度指的是实体在特定关系中出现的最少次数,而基数则表示特定实体在关系中出现的最大(上限)和最小(下限)次数。