我想创建一个数据库方案,并且真的不知道以下方案的解决方案: 我有用户,团队和项目。我希望能够以用户身份创建项目,也可以创建团队。我想到的是,在项目表中包含两个外键。一个用于用户ID'还有一个用于' teamId'。但在这种情况下,对于每个权利,userId或teamId都将为null。 这是一个很好的解决方案还是有更好的解决方案?
答案 0 :(得分:0)
您可以创建一个强制userId != null OR teamId != null
的约束。
或者,您可以要求每个项目都有一个非空外键userId
(团队中的某些用户必须主动创建项目,对吗?),然后创建一个associatedTeam
外键(可以选择)。