首页 > 解决方案 > 0..1 到 * 关联的基数是多少

问题描述

假设我有一个 UML 图,其中有 2 个实体通过关联线相互关联。

--------                    --------
| E1   |- 0..1 -------- * --|  E2  |
--------                    --------

我知道有 4 种映射基数。他们是:

  1. 一对一
  2. 多对一
  3. 一对多
  4. 多对多

在这里,E1 不能是一对多的,因为我知道 E1 必须是一对多的。

但它可以是多对多的吗?因为它在E1的一侧似乎没有“很多”。

标签: databasecardinality

解决方案


好的,我认为有一些误解导致您出现这种情况。

  1. 您的问题的答案可能会因您使用的模型或图表而异,UML 图在它们之间有很大差异

  2. 您将 RDB 映射基数与 UML 多重性混淆了。有类似的,但不一样的。

UML 中有超过 4 个(不仅仅是你提到的那些),你可以有 2..4(不太可能,但可能)或任何你想要的。

  1. 多重性对关系有两种作用,你似乎知道。也通常表示为*..*而不是*
  2. 始终将重点放在 UML 的目的上始终很重要,即建模。所以把你认为最能反映现实的东西放在那个图表的目的上。

希望能帮助到你


推荐阅读