我在SQL初学者的模式,我有一个简单的MySQL数据库,其中包含两个表:设计为球员和比赛
- 玩家(ID,姓名)
- 锦标赛(ID,姓名,参与者)
我想保存有关每个比赛参与者的信息。我的第一个想法是participants
应该包含players
表中的大量id
字段,但这看起来不太好。
我应该如何正确设计?
我在SQL初学者的模式,我有一个简单的MySQL数据库,其中包含两个表:设计为球员和比赛
我想保存有关每个比赛参与者的信息。我的第一个想法是participants
应该包含players
表中的大量id
字段,但这看起来不太好。
我应该如何正确设计?
制作另一个名为参与者的表格,其中包含两个字段。 Player_ID和Tournament_ID。这张表可以容纳尽可能多的线,以便将谁玩的时间相关联,并且可以根据需要交叉参考。
从第二个表中删除“参与者”并添加第三个表:TournamentPlayers(playerid,tournamentid)。
您应该避免在一个字段中存储多个值。这将打破数据库设计的第一种正常形式(1NF),其中规定只有原子值可以存储在一个字段中。关系数据库系统并不适合处理非标准化的数据,并且将很难写入对非1NF表的查询。
大量的ID,呃? – LittleBobbyTables