在我的應用程序中,我需要爲用戶分配多個組。有1000多個用戶和10-15個組。數據庫設計。一對多還是多對多?
哪個數據庫設計更好?
一到多:
USER_ID | GROUP_1 | GROUP_2 | ... | GROUP_15
--------------------------------------------
1 | true | false | ... | true
2 | false | true | ... | true
3 | true | true | ... | true
. | . | . | ... | .
. | . | . | ... | .
. | . | . | ... | .
或許多一對多:
USER_ID | GROUP_ID
------------------
1 | 1
1 | 15
2 | 2
2 | 15
3 | 1
3 | 2
3 | 15
. | .
. | .
. | .
?
第一個不是從任何傳統意義上說是「一對多」,第二個是您應該使用的設計。 – Uueerdo
[這篇文章](http://stackoverflow.com/questions/23194292/normalization-what-does-repeating-groups-mean)可能對你有用。 –
嘗試編輯此問題並以鼓勵具體答案而不是一般性意見的方式對其進行改寫。一般來說,數據庫的設計應該是業務特定的。通常會有多個同樣可以接受的解決方案。 – SunSparc