我有以下实体关系图(MySQL),这是我为一个小项目(为大学)而做的。我想知道PK和FK之间的关系是否正确。
我知道在used表中不应该使用令牌。

不知道为什么我的大脑不能正确理解这些关系。就我所能想到的是:
许多用户可以有一个角色。(大学行政管理用户)
一个角色可以属于许多用户。
一个用户可以有一个事件。
一个事件可以属于一个用户。
一个用户可以有多个主治医生。
许多主治医生可以属于一个用户。
许多活动可以有许多主治医生。(虽然一项赛事可以有很多人参加?)
许多主治医生可以参加许多活动。(虽然很多病人都属于一个项目)
我使用Workbench的反向工程()做了另一个图表,它给了我几乎相同的结果。唯一的区别是,事件和竞争者之间是一对多的关系。
有时我看他们,我不知道哪一个问题是最好的,当两个问题是可能的。是太多了,还是太多了…这对我的大脑来说是个棘手的问题。这就像有一个缺失的环节,我无法把握,我很确定这不是那么难。
这只是一段简单的关系,我不想知道如果我做一个10-20张表格的话,我的大脑会给我带来什么.欢迎任何其他批评:)谢谢!
发布于 2022-05-16 16:03:50
Many users can have one role. (User, Admin, University)
One role can be belong to many users.
One user can have one event.
One event can belong to one user.
One user can have many attendings.
Many attendings can belong to one user.所有这些说法都是正确的。据我理解,您在描述用户和事件之间的关系时遇到了困难。本质上,你拥有的是用户和事件之间的多到多的关系。为了使多到多的关系在标准关系系统中存在,必须有一个连接表。attenders_to表在此关系中服务于联接列的用途。
事件和用户之间似乎也有一种单独的关系,因为每个事件都有一个userId的直接列(我想这代表了主持/放置事件的人)。这可以被看作是几乎独立于其他关系。
总之,在用户和事件之间实际上有两种关系:一种描述参加活动的人的多对多的关系,还有一种一对多(即一个用户对多个事件)的关系,描述事件的主持人。
如果这能帮我把事情弄清楚,或者还有什么东西我遗漏了,请告诉我!
https://stackoverflow.com/questions/72261982
复制相似问题