设计数据库,为每个用户保留最喜欢的帖子 - 需要建议

时间:2011-01-02 10:11:32

标签: database sql-server-2005 tsql database-design

  

提供:offerID,title,thread ...
  通缉:通缉ID,标题,线程......
  成员:memberID,用户名...

会员可以选择许多主题作为收藏,这些主题将放在UI列表中。我该如何为它设计数据库?

我的解决方案:

Favorite: 

favoriteID (PK)
memberID - FK
offerID - FK
wantedID - FK

很多关系。但是,在offerID或者wantID中总是有NULL,这可以吗?

1 个答案:

答案 0 :(得分:1)

你说你允许每个用户多个收藏夹,对吧?

为什么不用两张桌子呢?

1)favoriteOffers

favoriteOfferID(PK)
memberID - FK
offerID - FK

2)favoriteWanted

favoriteWantedID(PK)
memberID - FK
wantID - FK

您可以获得相同的功能(可能更多),清晰的结构。