数据库帮助,用于在多个游戏和分数类型之间保持分数

时间:2014-03-19 21:48:16

标签: database database-design relational-database database-schema

基本上,我想做的是跟踪球员和比赛中不同的比赛得分。我认为db应该从匹配表开始,链表到一个播放器表,以及一个游戏表。我无法弄清楚的是在哪里放分数表 因为它不仅仅是一种类型的得分,我们谈论了几十种得分类型的迭代,有时候金钱被称为黄金,或者信用,有时候,还有金钱得分,但也加入了胜利点数。

我认为有两种方法可以做到这一点。制作一个包含所有可能分数类型的游戏核心表。 要么 我正在为每个棋盘游戏的得分类型考虑不同的表格

信息流将是

  1. 播放输入日期
  2. 输入棋盘游戏
  3. 输入玩该游戏的玩家
  4. 输入与该游戏相关的所有分数
  5. 为了统计目的,我希望所有数据能够链接到匹配项或玩家。有任何想法吗?我发布了一个我认为可行的模型

    Database mockup

1 个答案:

答案 0 :(得分:0)

任何时候你有一个包含columnA1,columnA2,columnA3等的表,你可能会走错方向。这适用于上面的分数表。它通过拥有所谓的重复组来打破常规形式的规则。查找第三范式(3NF),它应该是您设计数据库的指南。

将ScoreType更改为:

ScoreTypeId int
ScoreTypeName varchar(50)

在分数中,只有一个ScoreField并添加ScoreTypeId。然后对于每个游戏等,你可以有多种类型的分数。