我正在尝试关注{ER} {ER} User
创建Profile
。用户可以看到他的粉丝以及用户关注的个人资料。
问题是:
两个部分要么"追随者"或者"关注"用户不是个人资料
更新 以下方法是否可以或在上图中?
SQL> Create table users(
2 user_id number(5) primary key,
3 reg_date date,
4 name varchar2(50),
5 password varchar2(50));
Table created.
SQL> Create table Follow(
2 follow_id number(5),
3 following number(5) constraint User_fk references users(user_id),
4 follower number(5) constraint User_fk1 references users(user_id));
Table created.
请指教。在期待中感谢
答案 0 :(得分:1)
这取决于您的要求。如果用户只有一个配置文件(如在许多网站上,例如在此网站上),则配置文件不需要是单独的实体。然后,以下关系是否应指向用户或配置文件的问题消失。但是,如果用户可以拥有多个个人资料(可能是从你的FK type_id
中猜到的),那么就说一个用于他的体育节目而另一个用于他的音乐兴趣,那么就需要两个实体和表格。
如果只有一个用户实体,follower
和following
都必须指向用户,因为没有其他内容。这是您的SQL解决方案。
如果是单独的Profile实体,则会再次符合您的要求。追随者应该跟随整个用户,还是只对用户的某个个人资料角度感兴趣? (跟随杰克,或跟随杰克作为运动员,但不是音乐家。)在第一种情况下,following
指向用户,否则指向个人资料。