2013-11-23 53 views
0

有兩個表...合適的關係表設計?

  • 「廣告」
  • 「成員」

我想成員能夠按照自己的意願來拯救儘可能多的廣告。

的三種方法我能想到的是....

  1. 在名爲「savedAdvert」與廣告ID的增加,隨着更多的逗號分隔字符串「成員」 A柱加..喜歡「123,143,15,235」

  2. 在稱爲「memberSaved」用逗號分隔構件的ID其隨着更多加入的字符串「廣告」 A柱..像「123,143,15,235」

  3. 使另一個表所謂的'SavedAds'有兩列s'memberID','advertID',每次保存一個新的廣告時,它會相應地添加一個全新的行。

哪種方法最好?

回答

3

確實是3號。

不要在數據庫設計中再次提到「逗號分隔字符串」。在99%的案例中,這是數據庫中最糟糕的設計(我不能提出一個可能的案例)。

方法3確保您可以輕鬆找到每個成員的所有廣告,反之亦然。它也很乾淨,易於理解。

+0

謝謝。我很多年都沒有嘗試過數據庫關係,並且我忘記了我(和其他人)習慣這樣做的方式。這一次我會確保我記得! – paddyfields