以下内容为学生成绩管理系统初稿
第一章 绪论
1.1设计原因
随着计算机的发展、信息技术不断更新迭代,计算机迅速改善了人们的生活质量,提高了人们的工作效率。而在校园中,以往传统的学生成绩统计方式已跟不上时代的发展,为了方便学生成绩的查阅,同时减轻学校教职工的工作负担,高效地完成学生成绩录入工作,因此设计了一套学生成绩管理系统,供全校师生使用。
1.2.设计内容
能够进行数据库的数据定义、数据操纵等处理功能。具体功能应包括:系统提供课程安排数据的插入、删除、修改、查询;成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。
1.3.设计目标
一套学生成绩管理系统应该能够为用户提供充足的信息和快捷的的查询手段。对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的信息要求和处理要求。
第二章 数据库需求分析
2.1需求分析
2.1.1.需求分析的任务
高校学生的成绩管理工作量大、繁杂,人工处理非常困难。学生成绩管理系统借助于计算机强大的处理能力,减轻了管理人员的工作量,并提高了处理的准确性。学生成绩管理系统的开发运用,实现了学生成绩管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的成绩管理模式中解放出来,而且对学生成绩的判断和整理更合理、更公正,同时也给教师提供了一个准确、清晰、轻松的成绩管理环境。
2.1.2需求分析的内容
(1)学生信息管理
对全体学生信息查询,或某个学生信息査询,并能直接实现添加记录、删除记录、打印报表及刷新等功能。学生表包括的字段:学号、姓名、性别、班号、入学年份、专业、地址。
(2)成绩查询管理
对全体学生所有科目成绩进行査询,也能单独对某个学生某一科进行査询并能实现添加、删除记录、打印报表及刷新,还有就是能统计出补考的学生的名单及数量。成绩表包括的字段学号、教师编号、课程号、成绩。
2.2数据流图
数据流图( Data Flow Diagram,DFD)是用来描绘软件系统逻辑模型的图形工具,用于描绘信息在系统中的流动和处理情况。数据流图是结构系统分析的主要工具,它表示了系统内部信息的流向,并表示了系统的逻辑处理的功能,是一种功能模型。
本系统数据流图如图2-1所示。
图2-1系统数据流图
2.3. 数据字典
数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。其中数据项是数据的最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。
2.3.1.数据项
(1).数据项名:学生
类型:nvarchar
长度:20
别名:学生编号
取值范围:10000000~-99999999
(2).数据项名:课程号
类型:nvarchar
长度:20
别名:课程编号
取值范围:10000000~-99999999
(3).数据项名:教师
类型:nvarchar
长度:20
别名:教师编号
2.3.2数据结构
(1).数据结构:学生
含义说明:是学生成绩管理系统的主体数据结构,定义了学生的有关信息
组成:学号,姓名,性别,入学年份,班号,专业,学分,地址
(2).数据结构:课程
含义说明:是学生成绩管理系统中成绩的数据结构,定义了学生成绩的有关信息
组成:课程号,课程名,教师编号,学分
(3).数据结构:成绩
含义说明:是学生成绩管理系统中学生成绩的数据结构,定义了学生成绩的有关信息
组成:学号,课程号,课程名,成绩
(4).数据结构:教师
含义说明:是学生成绩管理系统的数据结构,定义了教师的有关信息
组成:教师姓名,教师编号,教师性别,职称
2.3.3.数据流
(1).数据流名:添加
说明:对学生的基本信息进行添加
数据流来源:学生
数据流去向:增加信息
(2).数据流:登记
说明:学校根据学生所在专业将学生进行分配
数据流来源:学生信息登记
数据流去向:学生
(3).数据流:成绩统计
说明:把学生成绩进行统计
数据流来源:成绩统计
数据流去向:学生
(4).数据流:删除
说明:对学生的基本信息进行删除操作
数据流来源:学生
数据流去向:删除信息
(5).数据流:查询
说明:对学生的基本信息进行查询操作
数据流来源:学生
数据流去向:查询信息
(6).数据流:修改
说明:对学生的基本信息进行修改操作
数据流来源:学生
数据流去向:修改信息
(7).数据流:学生编号
说明:对学生的基本信息进行查询操作
数据流来源:学生信息
数据流去向:学生查询
(8).数据流:课程编号
说明:对学生的基本信息进行查询操作
数据流来源:学生信息
数据流去向:学生查询
(9).数据流:教师编号
说明:对教师的基本信息进行查询操作
数据流来源:教师信息
数据流去向:教师查询
(10).数据流:学生信息
说明:将学生结果返回给用户
数据流来源:学生查询
数据流去向:学生
2.3.4.数据存储
(1).数据存储名:学生基本信息
说明:用来存储有关学生属于哪个专业的信息。
输岀数据流:学生信息
组成:学号,姓名,性别,入学年份,班号,专业,学分,地址
存取方式:随机存取
(2).数据存储名:课程信息
说明:用来存储学校中所分的各个课程的基本信息。
输入数据流:学校中为每个课程所设置的代码及该代码对应的名称。
组成:课程号,课程名,教师编号,学分
存取方式:随机存储
(3).数据存储名:成绩信息
说明:用来存储学校中学生成绩的基本信息。
输入数据流:成绩信息
组成:学号,课程号,课程名,成绩
存取方式:随机存储
(4).数据存储名:教师信息
说明:用来存储学校中教师的基本信息。
输入数据流:教师信息
组成:教师姓名,教师编号,教师性别,职称
存取方式:随机存储
第三章 概念结构和逻辑结构
3.1.项目功能结构
学生管理系统项目主要分为5个功能模块,分别是系统模块、学生信息模块、成绩信息模块、课程信息模块和教师信息模块,如图3-1。
3.2.2.关系模型的转换
设计学生成绩管理系统数据库,包括课程、学生、教师、成绩四个关系,其关系模式中对每个实体定义的属性如下:
课程信息表
Course1:(课程号,课程名,教师编号,学分)
学生信息表
Student1:(学号,姓名,性别,班号,专业,入学年份,学生地址)
成绩表
CV1:(学号,课程号,成绩,教师编号)
教师表
Teacher1:(教师姓名,教师编号,教师性别,职称)
3.3.函数依赖与第三范式
求证关系模式集为第二范式过程如下:
已知关系模式集为:
Login(Login_Username,Login_Password)
Student1(Sname,Sno,Sex,Mno,Classno,Year,ScouruseNum,Addressst)
Teacher1(Tame,Tno,TSex,Title)
Course1(Cname,Cno,Tno,Credit)
CV1(Sno,Cno,Tno,Result)
Login:Login_Username为主键,Login_Password为用户密码
Student1:Sname学生姓名,Sno学号为表Student1 主键,Sex性别,Mno专业号,Classno班号,Year入学年份,ScouruseNum总学分,Addressst地址
Teacher1:Tame教师姓名,Tno编号 为表Teacher1 主键,TSex性别,Title职称,
Course1:Cname课程名,Cno课程号 为主键,Credit 学分
CV1:Sno, Cno, Tno,Result 成绩(Sno,Cno)为主键
由此可得关系模式集的基本函数依赖为
Login_Username->Login_Password
Sno->(Sname,Sex,Mno,Classno,Year,ScouruseNum,Addressst)
Tno->(Tname,TSex,,Title)
Cno->(Cname,Credit,Tno)
(Sno,Cno,Tno)->Result
由于关系Login,Student1,Teacher1,Course1,CV1均不存在非主属性对候选键的部分函数依赖,因此Login属于2NF
Student1属于2NF
Teacher1 属于2NF
Course1属于2NF
CV1属于2NF
求证关系模式集为第三范式过程如下:
- login={ Login_Username->Login_Password }候选键为Login_Username由前面第二范式过程可知 Login 属于2NF,且非主属性Login_Password不传递依赖与候选键Login_Username。所以login属于3NF
- 由前面第二范式过程可知 关系模式Student1 属于2NF,且在关系模式集的基本函数依赖中 Student1中不存在传递函数依赖,所以Student1属于3NF
- 由前面第二范式过程可知 关系模式Teacher1 属于2NF,且在关系模式集的基本函数依赖中 Teacher1中不存在传递函数依赖,所以Teacher1属于3NF
- 由前面第二范式过程可知 关系模式Course1 属于2NF,且在关系模式集的基本函数依赖中 Course1中不存在传递函数依赖,所以Course1属于3NF
- 由前面第二范式过程可知 关系模式CV1 属于2NF,且在关系模式集的基本函数依赖中 CV1中不存在传递函数依赖,所以CV1属于3NF
第四章 数据库的实施
4.1.数据库的设计
4.1.1登录表
登录信息表中需要设计的字段有用户名称(Useraname)、用户密码(Password),该数据库表的具体信息如表4-1所示。
表4-1登录表
字段名 |
类型 |
长度 |
是否为空 |
描述 |
UserName |
nvarchar |
10 |
否 |
用户名称 |
Password |
nvarchar |
10 |
否 |
用户密码 |
4.1.2学生表
学生表中需要设计的字段有学号(Sno)、学生姓名 (Sname)、学生性别(Sex)、专业(Mno)、班号(Classno)、入学年份(Year)、总学分(Scouruse)、地址(Addresst)。该数据库表的具体信息如表4-2所示。
表4-2学生表
字段名 |
类型 |
长度 |
是否为空 |
描述 |
Sno |
nvarchar |
20 |
N |
学号 |
Sname |
nvarchar |
20 |
N |