具有两个外键的表之间的关系

时间:2014-12-17 02:22:02

标签: mysql sql database orm uml

我有users(id)表和friends(user_id1, user_id2),其中user_id1user_id2都是users表的外键。

这是什么关系?

我认为是One to Many,但由于我有两次用户ID,所以有点令人困惑。 (我必须制作一个图表,不知道要使用什么关系。)

3 个答案:

答案 0 :(得分:1)

有两个“一对多”的关系......

Users.id - > 1对多 - > friends.userid1

Users.id - > 1对多 - > friends.userid2

答案 1 :(得分:1)

此UML类图描述了情况(yuml.me script (click to edit)

enter image description here

在UML术语中,该行的名称为navigable association,且已知multiplicity

为了绘制图表,您不需要给关系另一个“名称”

答案 2 :(得分:1)

我会像这样建模:

enter image description here

这实际上是使用您提到的数据库模型实现的逻辑数据模型。

我认为将数据库术语(表)与功能/逻辑概念(关联机智多样性2)混合是一个好主意