学生信息管理系统的数据库设计

1.学生选课:学生选择选修课,选修课的表需要两张吗?1张是所有选修课的表1,一张带有学生信息的选修课表2,然后表2和学生建立many-one的联系 。如何让学生和选课关联起来?
2.学生管理:有一张class的表,里面有院,专业,班级,班级最大人数,班级人数的属性,如果需要直接在student表里面通过班级的属性查找不是很浪费时间?如何让学生和班级关联起来?
在系统里面,学生,课程,成绩之间的联系太密切,所以有点理不清。
希望各位大神能在百忙之中抽出时间来解答一下在下的问题,这里先道声谢了- -

选修课一张表:课程,课程编号
学生一张表:个人信息,学号(班级学院可在做一张关联也可在这张表里,关联的话,会有一个班级的属性,会再多一张班级表)
映射关系一张表:课程编号、学号(成绩)
通过最后一张表关联前两张就可以了,可以再最后一张里加成绩,就成了成绩与科目人关联的表了
主键、外键都是学号和课程编号追问

你觉得这样的可以吗? 

追答

结构没有问题,表结构复杂性可以再考虑一下。
举个例子,学生成绩这个可以做成视图,用成绩表、学生课程表映射,可以减少这几张表中的重复数据。
视图的作用比建几张表,都存类似的信息要好的多

温馨提示:答案为网友推荐,仅供参考
相似回答