Like 和 DisLike 的 SQL 数据库结构

Aaf*_*Aaf 0 sql database sql-server relational-database

我是网络编程的新手,需要一些专家建议。我正在为我的网站项目之一使用 SQL 数据库。我的网站将显示一个带有“喜欢”和“不喜欢”按钮的主题列表。已登录的用户将能够单击每个主题的“喜欢”或“不喜欢”按钮。我能够为每个主题记录喜欢和不喜欢的数量。因此,如果用户单击某个主题,它将显示该特定主题的喜欢和不喜欢的数量,但是我想要实现的是,当有人单击特定用户个人资料时,它应该显示用户喜欢或不喜欢的所有主题. 例如,当我们点击 Facebook 中的用户个人资料时,它会显示该特定用户的所有评论或喜欢,我该如何做类似的事情。我想知道实现这个的数据结构并查询数据谢谢大家。

Dav*_*vid 5

如果您有一个主题表和一个用户表,您将添加一个链接到两者的喜欢表。像这样的东西:

User
----------
ID (int, PK)
Name (string)
etc...

Topic
----------
ID (int, PK)
Title (string)
etc...

Like
----------
ID (int, PK)
UserID (int, FK to User.ID)
TopicID (int, FK to Topic.ID)
IsLike (boolean)
etc...
Run Code Online (Sandbox Code Playgroud)

因此,每当用户“喜欢”某些内容时,您都会向该表设置中添加一条记录IsLiketrue. 如果他们“不喜欢”某些东西,那么您将记录添加到该表设置IsLikefalse。您可以更改术语/名称/类型/等。但总体思路是一样的。“like”成为 aUser和 a之间的链接记录Topic

因此,在显示主题时,您只需从链接表中选择与该主题相关联的记录数。当显示用户时,您从链接表中选择与该用户关联的记录。