我正在进行一些数据库设计练习,但遇到了一个问题,无法解决。
我还是个新手,可能不够好,但我会尽力。
我想创建两个不同的表,一个叫做Team,另一个叫做Player。这两个表之间非常不同。
然后我想再创建一个称为Challenge的表,它可以引用Team或Player。
基本上有比赛,它们可以单独比赛,也可以组成团队比赛。如果是团队挑战,则需要一个外键引用Team,如果是个人挑战,则需要引用Player。
由于这两个表包含的元素非常不同,所以我不能将它们合并在一起。
我有点困惑如何操作。我是否可以只有一个外键来引用其中一个表?或者我应该有两个外键,其中一个为空。
或者我可以在Team和Player中添加另一个ID键。然后,在Challenge中,如果新Type键指示它是团体,则引用Team;如果是个人,则引用Player。
因为我是新手,希望我的意思能够表达清楚。