【问题标题】:Student's report database design学生报告数据库设计
【发布时间】:2012-06-16 22:11:53
【问题描述】:

我想显示这样的表格

根据学生ID从三个数据库表生成

这是插入学生分数的最佳方式吗?如果我一年有 5,000 名学生和 10 门科目和 12 次考试,我的 Stu_Marks 表中将有超过 500.000 条记录

【问题讨论】:

  • +1。问得非常好,尤其是 StackOverflow 上的第一个问题。做得很好! :-)

标签: mysql database


【解决方案1】:

是的,表格已标准化。顺便说一句,您还应该有一个学生表用于学生信息(姓名、姓氏)。

关于记录数:您指的是数据的粒度,而您的粒度与元组 {student,subject,exam} 相关。如果您想存储每个学生投票的信息,则无法避免使用包含 500,000 条记录的表。

【讨论】:

  • 是的,我有一张学生信息表。这个数字“500,000 yr”的记录在 Stu_Marks 表中是否正常?
  • 对于表 stu_marks 是:每个表都是一个关系-> 学生表通过主键将每个学生与其属性相关联。在您的情况下,关系 stu_marks 的主键是 {student,subject,exam} 并且您必须为主键的每个实例都有一个记录。因此,学生、科目和考试的每个组合都有一个记录。
  • 是的,亲爱的,我知道 .. 我问过数据的大小 .. 它是正常的还是巨大的?? 4 年后,我将在一张表中拥有超过 200 万条记录
  • 我想向你解释的是,“正常”和“巨大”在这里是没有意义的词:如果你想存储这些信息,你将拥有超过 200 万条记录在那张桌子上。这就是 RDBMS 的工作方式,无法避免。
  • 不用担心行数。行很便宜。
猜你喜欢
  • 2014-12-30
  • 2011-12-15
  • 1970-01-01
  • 1970-01-01
  • 2018-08-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多