学生成绩管理系统数据库设计
数据库设计
一.确定实体、联系集和属性集
根据前面对系统进行的分析,已经初步了解了学生成绩管理系统的数据处理 流程,找出与系统有关的各个实体及其相互联系如下: ①标识实体集
管理员、教师、学生、班级、课程、成绩 ②标示联系集
管理员和学生:一个管理员管理多个学生信息,能够对学生的个人信息进行增加、查看、修改、删除,能够按照特定要求(比如学号、姓名等) 查找学生; 存在“管理”关系:1:N
管理员和班级:一个管理员管理多个班级信息,能够对班级的信息进行增加、查看、修改、删除,能够按照特定要求(比如班级编号、班级名称等) 查找班级; 存在“管理”关系:1:N
管理员和课程:一个管理员管理多门课程信息,能够对课程信息进行增加、查看、修改、删除,能够按照特定要求(比如课程编号、课程名称等)查找课程; 存在“管理”关系:1:N
管理员和录入的学生的成绩:能够对录入学生的成绩、查看学生的成绩、修改学生的成绩、导出学生的成绩为Exls 表,并且按照特定要求查询(比如以班级为单位,以课程为单位)学生的成绩;
存在“管理”关系:1:N
管理员和教师:能够对教师信息进行增加、查看、修改、删除,能够按照特定要求(比如工号、姓名等)查找课程; 存在“管理”关系:1:N
教师和学生:能够对学生的个人信息进行增加、查看、修改、删除,能够按照特定要求(比如学号、姓名等) 查找学生; 存在“管理”关系:1:N
教师和班级:能够对班级信息进行增加、查看、修改、删除,能够按照特定要求(比如班级编号、班级名称等)查找班级; 存在“管理”关系:1:N
教师和课程:能够对课程信息进行增加、查看、修改、删除,能够按照特定要求(比如课程编号、课程名称等)查找课程; 存在“管理”关系:1:N
教师和成绩:能够对录入学生的成绩、查看学生的成绩、修改学生的成绩、导出学生的成绩为Exls 表,并且按照特定要求查询(比如以班级为单位,以课程为单位)学生的成绩,该教师仅能录入自己所带课程的学生成绩; 存在“管理”关系:1:N
学生和班级:一个班由多个学生组成,一个学生只能归属于某个班;
存在“归属”的关系:N :1
学生和课程、成绩:一个学生可以选修多门课程,一门课程提供给多个学生选修,一个学生选修一门课程产生一个成绩; 存在“选修”的关系:N:M:1 ③标示属性集
管理员(管理员编号、姓名) 教师(工号、姓名、岗位、专业)
学生(学号、姓名、性别、年龄、入学时间、毕业时间、班级编号) 班级(班级编号、班级名称、班级类型、班级状态、班级信息、说明) 课程(课程编号、课程名、课时、课程说明) 成绩(学号,课程号,学期,成绩)
二.确定关联画出ER 图
2.1管理员实体集的ER 图
2.2教师实体集的ER 图
2.3学生实体集的ER 图
2.4班级实体集的ER 图
2.5课程实体集的ER 图
2.6成绩实体集的ER 图
三.画出总ER 图
3.1部分ER 图
3.2部分ER 图
四.逻辑数据库设计
逻辑结构是独立于任何一种数据模型的信息结构。逻辑结构的任务是把概念结构设计阶段设计好的基本E-R 图转化为宜选用的DBMS 所支持的数据模型相符合的逻辑结构,并对其进行优化。 E-R 图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为 关系模式,如何确定这些关系模式的属性和码。
设计学生成绩管理数据库,包括课程、学生、教师、成绩、班级、管理员六个关系, 其关系模式中对每个实体定义的属性如下:
课程信息表:
教师信息表
成绩信息表
班级信息表