我可以有两张外键的桌子吗?

时间:2015-07-18 22:56:50

标签: sql database database-design

我正在创建一个社交媒体网站。用户可以创建一个类别(1个用户到多个类别),每个类别都有许多条目。我想允许用户发布活动(1个活动可以有很多帖子)。

换句话说,该活动拥有该帖子,但我希望能够识别创建该帖子的用户。

这是否意味着我应该为很多帖子创建1个事件以及1个用户到多个帖子?这是否会产生规范化问题。最好的方法是什么?

1 个答案:

答案 0 :(得分:2)

我没有看到类别和事件之间的任何关系 在这种情况下,在事件

中添加categoryID作为FK
  • 用户表

    1. userID Primary key
  • 分类表

    1. categoryID Primary key
    2. userID Foreign Key (users)
  • 活动

    1. eventID Primary key
  • 帖子

    1. postID Primary key
    2. eventID Foreign Key (events)
    3. userID Foreign Key (users)