我已经创建了一个包含多个表的数据库,并试图回溯并创建它的 ER 图,但我正在努力解决它。数据库系统将用于匹配具有相似偏好的人。
- 每个用户都有管理信息(存储在 user_core)、关于他们自己的信息(存储在 user_profile 的记录中)和关于他们偏好的信息(存储在 EAV user_prefs 表中)。
- “首选项”表存储首选项的 pref_id 及其名称
- 'shortlist' 表存储用户的 id 和他们已入围的用户的另一个 id。每个用户将在其中拥有与入围的人一样多的条目。
- 'groups' 表存储关于一组人的信息。每个组都有一个 id,成员在他们的 user_core 中指定这个,以及组中的最大人数
大部分麻烦来自于识别实体是什么——它们大部分只是表名吗?
这些是我的桌子。开头的名称是表名,CSV 是字段名:
user_core = {id, birthday, sign_up_date, access token, group ID}
user_profile = {id, gender, course, university, religion}
user_prefs = {id, pref_id, value, weight}
preferences = {pref_id, name}
shortlist = {id, targ_id}
groups = {group_id, max_no}
那么,如果我要以此制作 ER 图,我会怎么做呢?
如果我要拆分它,我会说我的应用程序中的实体是:用户、偏好、候选名单、组。但是,当我尝试考虑这些关系时,它开始变得混乱——很可能是因为我在这里逆向工作!任何帮助或指点将不胜感激,谢谢!