2016-04-29 29 views
-1

我想創建一個數據庫方案,但並不真正知道以下方案的解決方案: 我有用戶,團隊和項目。我想啓用作爲用戶創建項目,但也作爲一個團隊。我想到的是在項目表中包含兩個外鍵。一個用於'userId',一個用於'teamId'。但是在這種情況下,對於每個實體,userId或teamId都將爲null。 這是一個很好的解決方案,還是有更好的可能性來解決這個問題?數據庫1與幾個所有者表的關係

+0

不是編程問題。請看看這個:http://databaseanswers.org/tutorial4_getting_started_with_db_design/index.htm – spicyramen

回答

0

您可以創建一個強制userId != null OR teamId != null的約束。

或者,您可以要求每個項目有一個非空外鍵userId(團隊中的某些用戶必須主動創建項目,對不對?),然後創建一個associatedTeam外鍵(可以是可選的)。