图5-39 学生选课的数据流图
5. 数据字典
数据项名:学生编号
说明: 标识每个学生身份 类型: CHAR 长度: 7
别名: 学号
取值范围:970000-979999 数据流名:选课申请
说明: 由学生的个人信息,欲选课程信息组成选课申请 来自过程:无
流至过程:身份验证
数据结构:学生个人信息 欲选课信息
数据结构:学生个人信息
说明: 说明了学生的个人情况。 组成: 帐号 密码
数据存储:上课时间信息
说明: 说明了每门课的上课时间,一门课可以有多个上课时间,同一时间可以有多门 课程在上课。
输出数据流:课程上课时间
数据描述:课程编号 上课时间
数量: 每学期20-30个 存取方式:随机存取
处理过程:身份验证
说明: 对学生输入的帐号,密码进行验证,确定正确,得到相应的学生编号。 输入: 学生帐号 密码
选课的课程编号
输出: 学生编号 选课的课程编号
二、数据库的概念设计
1.系统的概念模型:
选课系统DEMO概念模型的E/R图
上图是选课系统DEMO的概念模型的E/R图,该系统涉及的实体集有:
班级实体集:具有属性班级名称和选课学分限制。 学生实体集:具有属性学号、姓名、性别和生日。
课程实体集:具有属性课程号、课程名、学分、授课教师、接纳人数。
上课时间实体集:具有属性时间。 一个班级可以有多个学生,一个学生只能属于
一个班级,所以班级和学生之间的联系为1:M的联系。 一个班级可以有多门必修课程,一门课程是多个班级的必修课,所以班级和课程之间的必修联系是M:N的联系。
一个学生课以选修多门课程,一门课程可以被多个学生选修,所以学生和课程之间的联系是M:N的联系。
一门课程可以有多个上课时间,同一时间内可以有多门课程在上课,所以课程和上课时间的联系是M:N的联系。
三、将概念模型转换成关系模型
1. 将E-R模型转换为关系模式 (1) 班级实体集可以转换为关系:
CLASS(CLASSNAME,MAXCREDIT,MINCREDIT)
CLASSNAME表示班级名称,MAXCREDIT表示最大学分限制,MINCREDIT表示最小学分限制。
(2) 学生实体集可以转换为关系
STUDENT(STUDENTID , NAME , SEX , BIRTHDAY)
STUDENTID表示学号,NAME表示姓名,SEX表示性别,BIRTHDAY表示生日
(3) 课程实体可以转换为关系
COURSE(COURSEID, COURSENAME, CREDIT, TEACHER, ACCEPTION) COURSEID表示课程号,COURSENAM表示课程名,CREDIT表示学分,TEACHER表示授课教师,ACCEPTION表示接纳人数。
(4) 班级和学生之间的联系是1:M的联系,所以没有必要为其建立一个关系,可以通过扩展学生关系来表示:
STUDENT(STUDENTID , NAME , SEX , BIRTHDAY , CLASSNAME) CLASSNAME表示学生所在班级名。
(5) 班级和课程之间的必修联系可以转换为关系: CLASSCOURSE(CLASSNAME , COURSEID)
CLASSNAME表示班级名称,COURSEID表示课程号。
(6) 学生和课程之间的选修联系可以转化为关系: STUDENTCOUSE(STUDENTID, COURSEID)
STUDENTID表示学号,COURSEID表示课程号。
(7) 课程和上课之间的联系可以转化为关系: COURSETIME(COURSEID , TIME)
COURSEID表示课程号,TIME表示上课时间。
2. 数据库表结构设计:
把关系模型转化为表结构:
班级信息表(class):包含所有的班级信息,定义如下:
学生信息表(student):包含所有学生的个人信息,定义如下:
课程信息表(course):包含所有课程信息,定义如下:
安阳师院教务管理系统(四)
安阳师范学院
安阳师范学院