我正在为大学数据库创建一个项目/门户网站,我必须在其中存储学生的出勤率和各种科目的成绩。目前,我已经设计了如下数据库。我需要知道它是否是一种存储数据的好方法。
主表:
Id | roll_number | Department | Year_of_study
为每位学生增加出勤率的表:
Id | roll_number(foreign key) | Attendance_for_period1 | Attendance_for_period2
添加科目的表格:
Id | Subject_name
1 | computer Programming
2 | Data structures
3 | professional ethics
.
.
.
为不同科目的每名学生添加成绩的表格:
Id | roll_number(foreign key) | Marks_in_period1 | Marks_in_period2
1 | 412811104092 | A,B,A,B,C,D | B,C,A,A,D,F
在Marks_in_period1栏中,逗号分隔每个科目的成绩(即)我已为6个科目插入了分数。数据库是否正确或需要进行任何优化?
答案 0 :(得分:1)
您应该(几乎)永远不会在一个字段中存储多个数据。它不仅使得在内部搜索变得非常困难,而且每次在每次写入时都必须解析/序列化。