2016-10-17 73 views
0

如果你想象一個'幻想足球'數據庫,你有用戶創建聯賽,一個用戶可以分開很多不同的聯賽。實現這種簡單數據庫關係的正確表結構是什麼?

我打算做類似這樣的東西:

create table fantasy_league (
     id int, 
     name varchar(100), 
     password, admin, 
     players_id(array) 
) 

create table player_profiles (
     id int, 
     email, 
     display_name varchar(100), 
leagues_id(array) 
) 

每個聯盟很可能只有6名球員在裏面,但我最近一直在勸存儲陣列中的一列是沒有辦法的辦法,以走。

什麼是更好的選擇?

+0

規範化使用具有以下leagues_id,PROFILE_ID表的關係,這種方式讓你知道所有的地方註冊的用戶,也都在那裏中甲聯賽的註冊用戶聯賽。 – johnnynemonic

回答

1

創建一個名爲leagues_players的第三個表,並將每個表中的id存儲到其中。

off course建立所需的外鍵關係/約束條件,並從各個表中刪除players_id和leagues_id鍵。

create table leagues_players (league_id int, player_id int) 
+0

什麼是:外鍵關係/約束? – RDowns

+0

請閱讀此:https://technet.microsoft.com/en-us/library/ms175464%28v=sql.105%29.aspx?f=255&MSPPError=-2147217396 –

+0

太好了,謝謝 – RDowns

相關問題