所以,我想创建一个使用投票系统的应用程序,如FB上的类似按钮或Google上的+1按钮。一个问题是我不知道如何设计数据库,使得每个用户都喜欢和不喜欢每个用户,因为对于每个可能喜欢或不喜欢喜欢/不喜欢的页面来说效率低下每个用户或每个用户的列,每个页面都有一个喜欢/不喜欢的列。如何使MySQL数据库处理喜欢和不喜欢?
答案 0 :(得分:3)
您可以使用链接表:
,而不是创建多个列user_id | user_name
--------+----------
1 | alice
2 | bob
3 | charlie
page_id | page_title
--------+--------------
1 | books
2 | food
3 | entertainment
user_id | page_id
--------+--------
1 | 1
1 | 2
2 | 3
3 | 3
链接表将user_id
值与page_id
值相关联。请注意,一个用户可以使用多个页面,并且一个页面可以被多个用户所喜欢。