设计数据库,其中每个用户都有一个收藏列表

时间:2015-02-11 16:23:22

标签: mysql database

我在网站上有一个用户数据库和一个评论数据库,我希望每个用户都能够获得最喜欢的评论列表,而且我不知道如何实现这一点。

我应该为每个用户创建一个包含他/她喜欢的评论ID的新表,还是有更好的方法?

2 个答案:

答案 0 :(得分:3)

常见的normalized方法是many to many relationship

此类表格的架构至少应为:

user_id
comment_id

其中user_idcomment_id分别是userscomments表的外键。

答案 1 :(得分:1)

我会使用三个表:

  1. users表,包含每个用户,包括他们的个人信息等;
  2. 包含所有评论的comments表格;
  3. favorites表,其中包含行的id,用户的id和评论的id
  4. 我没有很好地命名每个表,你应该更多地考虑表的名称(例如:favorites是一个坏名字)。