1

我有一個數據庫設計問題,我不確定我應該選擇哪個替代方案。數據庫設計:創建關聯關聯

我有一個系統,顯示每個問題上的政治家的投票。用戶可以在每個問題上登錄並「支持」該政治家。我不確定這些協會應該如何工作。下面是兩個備選方案的圖片:

http://i1068.photobucket.com/albums/u447/dmoss18/ScreenShot2012-05-03at111656AM.png

選項1:一個政治家在許多問題上很多選票。用戶支持每個政治家的投票。

選項2:用戶在某個問題(具有三個外鍵的關聯表)上支持政治家。

選項2根本不可行嗎?在一個實體中關聯三個表是不好的做法?哪個選項被認爲是最佳實踐?

回答

2

我寧願選項(1),因爲它表明用戶支持特定投票。在選項(2)中,當某位政治家從未投票支持某個政治人物時,似乎有可能(沒有附加限制)支持某個政治人物! (當然,如果這是一個理想的可能性,那麼你必須去選項(2))。