教务管理系统大数据库设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
教务管理
数据库系统课程设计
目录
1、需求分析 (3)
1.1 信息要求: (3)
1.2 处理要求: (3)
1.3 安全性与完整性要求: (4)
1.4 系统功能的设计和划分 (4)
第一部分:用户管理部分 (4)
第二部分:管理员管理部分 (5)
2、概念设计 (5)
2.1概念模型(E-R图): (5)
2.2数据字典: (7)
a.数据项 (7)
b、数据结构 (8)
c、数据流 (8)
d、数据存储 (9)
e、处理过程 (9)
2.3 数据流图 (10)
3、逻辑结构设计 (10)
3.1 E-R图向关系模型的转换(关系的码用下横线表出) (10)
3.2 设计用户子模式 (12)
4、物理设计 (12)
4.1 选择存取方法 (12)
4.2 确定数据库的存储结构 (12)
4.3 评价物理结构 (12)
5、系统实施 (13)
6、运行维护 (14)
1、需求分析
1.1 信息要求:
教务管理系统涉及的实体有:
●教师——工作证号、姓名、职称、电话等;
●学生——学号、姓名、性别、出生年月等;
●班级——班号、最低总学分等;
●系——系代号、系名和系办公室电话等;
●课程——课序号、课名、学分、上课时间及名额等。
这些实体之间的联系如下:
●每个学生都属于一个班,每个班都属于一个系,每个教师也都属于一个系。
●每个班的班主任都由一名教师担任。
●一名教师可以教多门课,一门课可以有几位主讲老师,但不同老师讲的同一门课其课序号是不同
的(课序号是唯一的)。
●一名同学可以选多门课,一门课可被若干同学选中。
●一名同学选中的课若已学完,应该记录有相应成绩。
●本单位学生、教师都有重名,工作证号、学号可以作为标识。
1.2 处理要求:
教学系统主要提供数据维护、选课和信息查询。其中常见的查询有:系统中各对象的基本信息查询。查询指定班、系的学生信息(名单、人数等)。查询学生的成绩、学分情况。查询教师授课情况和学生选课情况……。
1.3 安全性与完整性要求:
●安全性要求:
1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;
2.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;
3.系统应对不同用户设置不同的权限,区分不同的用户,如学生,教师,系统管理员。
●完整性要求:
1.各种信息记录的完整性,关键信息记录内容不能为空;
2.各种数据间相互的联系的正确性;
3.相同的数据在不同记录中的一致性。
1.4 系统功能的设计和划分
根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分:
第一部分:用户管理部分
1、处理用户注册
2、处理用户登录
3、用户可以查询学生信息。
4、用户可以查询快件信息。
5、用户可以提交与查询报修信息。
6、用户可以插入与删除用户自己的离返校信息。
7、用户可以修改用户自己密码。
第二部分:管理员管理部分
各部分完成的功能如下:
1、处理管理员登录
2、管理员可以查询学生信息。
3、管理员可以发布与更新快件信息。
4、管理员可以插入、修改与查询报修信息。
5、管理员可以插入与查询学生夜归信息。
6、管理员可以查询在校与离校学生信息。
7、管理员可以修改管理员密码。
2、概念设计
2.1概念模型(E-R图):
选修联系的分E-R图
负责联系的分E-R图
授课联系的分E-R图
教务管理系统的总E-R图
2.2数据字典:
a.数据项
b、数据结构
c、数据流
d、数据存储
e、处理过程
2.3 数据流图
总数据流图
3、逻辑结构设计
3.1 E-R图向关系模型的转换(关系的码用下横线表出)
代码表示:Teacher ( Tno, Tname, Title, Tel, Dno )
此为“教师”实体对应的关系模式。其中1:n联系“工作”与此关系模式合并,Dno为外码。存在的函数依赖为Tno →(Tname,Title,Tel,Dno),且不存在多值依赖,所以满足4NF。
代码表示:Student ( Sno, Sname, Ssex, Sbirth, Class )
此为“学生”实体对应的关系模式。其中1:n联系“属于”与此关系模式合并,Class为外码。存在的函数依赖为Sno →(Sname,Ssex,Sbirth,Class),且不存在多值依赖,所以满足4NF。
代码表示:Department ( Dno, Dname, Dphone )
此为“系”实体对应的关系模式。存在的函数依赖为Dno →(Dname,Dphone),且不存在多值依赖,所以满足4NF。
代码表示:Course ( Cno, Cname, Credit, Ctime, Cnum, Tno )
此为“课程”实体对应的关系模式。其中1:n联系“授课”与此关系模式合并,Tno为外码。存在的函数依赖为Cno →(Cname,Credit,Ctime,Cnum,Tno),且不存在多值依赖,所以满足4NF。
代码表示:SC ( Sno, Cno, Grade )
此为m:n联系“选修”所对应的关系模式。Sno和Cno均为外部码。存在的函数依赖为完全函数依赖(Sno,Cno)→Grade,且不存在多值依赖,所以满足4NF。
代码表示:Class ( Class, TotalCredit, Tno, Dno )
此为“班级”实体对应的关系模式。其中1:n联系“属于”和1:1联系“负责”与此关系模式合并
\
Tno和Dno为外码。该关系模式中存在传递函数依赖:Class →Tno, (Tno Class),Tno →Dno,可得Class →Dno,故Class 不属于3NF。解决方法是将其模式分解为:Class ( Class, TotalCredit, Tno )和T-D( Tno, Dno),分解后的关系模式满足4NF,并且T-D与Teacher的码相同,可合并为同一模式。但是考虑到系统要经常进行系的学生信息查询,此时就不得不对Student、Class和Teacher三个表进行连接查询,而连接是影响查询效率的主要原因,所以取消对Class的模式分解。此时Class关系模式满足2NF。