【发布时间】:2017-09-12 12:36:00
【问题描述】:
我正在为学校成绩分析器创建一个数据库。
在我的数据库中,我有像“students 和 subjects”这样的表格......我需要一个表格来记录每个学生的分数(分数表)。
对于此表,我正在考虑 2 个选项..
1:我将有一个包含许多列的表(标记),即 students_regno,(所有科目的列 - 可能约为 20。
该表将有更少的行。也许700
要么
2 :我可以有一个很少列的标记表,即 students_regno,subject_id,marks 这将只有 3 列,但行可能跨越 5000 多行。
我应该走哪条路?
【问题讨论】:
-
请澄清您的问题。行和列的使用不一致,例如以下语句:'这将只有 3 行,但行可能跨越 5000 多行。没有意义。您的确切意思是列在哪里?
-
它们不被称为标记。它们被称为等级。
-
@shogunivar 当标记被馈送到数据库时,该选项将导致超过 5000 行......拥有所有这些行会影响数据库的速度吗?......速度是我的另一个主要问题。 subject_id 和 students_regno 也会一遍又一遍地重复......这是个问题吗?
-
@MikeNakis 也许不是你来自哪里。
-
@pickmanmurimi 5000 行不必担心。当索引正确时,它不应该真正影响你的速度。由于您的 student_regno 和 subject_id 将是一个复合主键,因此它们应该重复,这很好
标签: mysql database-normalization