我想提高我的理解的基数限制在ER图。

我有两个实体:

  1. User
  2. Location

但是,我想之间的关系,这两个实体是许多对多(一个用户可以在许多地点和位置,可以有许多的用户)。

要做到这一点,我要介绍关联类 UserLocation.

是不正确的说我现在有3个实体?

如果我们绘制一个ER diagam于上述,我会画画的 UserLocation 实体,并将基数看起来像这样吗?

User 1 ------ * User Location *  ------ 1 Location
有帮助吗?

解决方案

你不需要一个第三实体。

在实体的世界里,这是仿照这样的:

  • 该实体用户都有一个列表中的位置。
  • 该实体的位置具有一个清单的用户。

在关系世界,这是模拟是这样的:

  • 表用户,主要的关键USER_ID
  • 表中的位置,与主键LOCATION_ID
  • 表USER_LOCATION,有两个外键,一个为上述各表。

我认为,在关系图"中介"不可见。所以,我想你会需要的东西,像这样:

用户*-------*位置

其他提示

这一切都取决于类型和级别的entitiy映射你正在做的事情。

你可以表达的关系,因为它是

实体1 <>实体2

如使用'乌鸦脚'表示的许多关系。

当先地图你就打破了许多对多关系的中间表,这通常包含的主键的许多表

实体的1>实体3 < 实体2

在实体3(你intermedite表)将举行PK的两个表,并ocassionally任何其他数据,例如一个独特的ID等。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top