学生成绩管理系统Word下载.docx
《学生成绩管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统Word下载.docx(27页珍藏版)》请在冰点文库上搜索。
2)学籍变更信息10
3)学生奖励记录10
4)学生处罚记录10
5)班级信息11
6)院系信息11
3.2数据模型优化11
3.2.1确定数据依赖11
3.2.2对各关系模式间数据依赖进行极小化处理,消除冗余12
3.2.3第三范式12
3.3外模式设计(视图)13
第四章物理结构设计13
4.1存储结构设计13
4.2存储设计方法14
第五章数据库实施14
5.1数据库的创建14
5.2数据表的创建14
5.2.1.学生个人信息表stunents的创建:
14
5.2.2.学籍变更信息表schoolregister15
5.2.3创建学生奖励记录表reward15
5.2.4创建学生处罚记录表punish16
5.2.5创建班级信息表class16
5.2.6创建院系信息表department16
5.3对数据库进行基础操作17
5.3.1插入基本信息17
5.3.2对数据库进行添加操作18
5.3.3对数据库进行查询操作19
5.3.4对数据库进行修改操作19
5.3.5对数据库进行删除操作19
5.4创建视图20
5.5创建索引21
5.6创建角色21
5.7创建触发器22
第六章数据库的维护22
总结24
参考文献24
序论
高校学生的信息管理工作量大、繁杂,人工处理非常困难。
学生管理信息系统借助于计算机强大的处理能力,大大减轻了管理人员的工作量,并提高了处理的准确性。
学生信息管理系统的开发运用,实现了学生信息管理的自动化,不仅把广大教师从繁重的成绩管理工作中解脱出来、把学校从传统的信息管理模式中解放出来,而且对学生各种信息的判断和整合更合理、更公正,同时也给学工处、教务处提供了一个准确、清晰、轻松的信息管理环境。
本系统主要完成对学生信息的管理,包括添加、修改、删除、插入、查询等六个方面。
系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。
系统的核心是添加、删除和修改三者之间的联系,当完成添加或删除操作时系统会自动的完成学生信息的修改。
查询功能也是系统的核心之一,在系统中主要根据学生学号进行查询,其目的是为了方便用户使用。
第一章需求分析
1.1数据需求分析
学生信息管理系统就是对学生信息的管理,所以首先我们需要知道的是学生有那些信息,并且是怎样进行分类的。
学生的信息包含1:
基本信息;
2:
课程及成绩;
3课程表。
基本信息根据要求应该包括学生的基本情况、获得奖励情况、受到处分情况、学生的家庭信息等;
课程及成绩应该包含对应课程对应学生的成绩;
课程表包含课程号及其先导课。
学生唯一一一对应的是学号,所以学号是唯一的主键,其他的都不能是,根据学号我们可以查找学生的姓名信息,还有学生的上过课的课程成绩等有关信息;
根据学号,可以知道学生的各科成绩查询。
1.2关系模式
学生基本信息(学号、姓名、性别、出生日期、籍贯、所在院系编号、所在班级、电话号码、联系地址、邮编、电子邮件、相片、个人信息备注)
学籍变更信息(记录号、学号、变更情况、记录对象、记录时间、详细描述)
学生奖励记录(记录号、学号、级别、奖励对象、记录时间、详细描述)
学生处罚记录(记录号、学号、级别、处罚对象、记录时间、详细描述、是否生效)
班级信息(班级编号、班级名称、所属院系)
院系信息(院系编号、院系名称)
1.3数据流图
数据流图
1.4数据字典(DD)
1.4.1学生个人信息表students
(学号s_number、姓名s_name、性别sex、出生日期birthday、籍贯native、所在院系编号dep_number、所在班级c_number、电话号码tel、联系地址address、邮编zipcode、电子邮件email、相片photo、个人信息备注note)
字段名
字段类型
长度
主键或外键
字段值约束
对应中文属性名
s_number
char
10
主键
不为空
学号
s_name
8
姓名
sex
2
性别
birthday
datetime
出生日期
native
20
籍贯
c_number
外键
所在班级编号
dep_number
所在院系编号
tel
电话号码
address
varchar
50
联系地址
zipcode
邮编
email
电子邮件
photo
image
16
相片
note
100
个人信息备注
1.4.2学籍变更信息表schoolregister
(记录号t_number、学号s_number、变更情况change、记录对象t_object、记录时间t_time、详细描述t_memo)
t_number
int
4
记录号
change
变更情况
t_object
记录对象
t_time
记录时间
t_memo
详细描述
1.4.3学生奖励记录表reward
(记录号r_number、学号s_number、级别r_rank、奖励对象r_object、记录时间r_time、详细描述r_memo)
r_number
6
r_rank
5
级别
r_object
奖励对象
r_time
r_memo
1.4.4学生处罚记录表punish
(记录号p_number、学号s_number、级别p_rank、处罚对象p_object、记录时间p_time、详细描述p_memo、是否生效effect)
p_number
p_rank
p_object
处罚对象
p_time
p_memo
effect
是否生效
1.4.5班级信息表class
(班级编号c_number、班级名称c_name、所属院系dep_number)
班级编号
c_name
班级名称
所属院系
1.4.6院系信息表department
(院系编号dep_number、院系名称dep_name)
院系编号
dep_name
院系名称
第二章概念结构设计
2.1学生个人信息实体
图
(1)学生个人信息实体
2.2学籍变更记录实体
图
(2)学籍变更记录实体
2.3奖励记录实体
图(3)奖励记录实体
2.4处罚记录实体
图(4)处罚记录实体
2.5班级实体
图(5)班级实体
2.6院系实体
图(6)院系实体
2.7全局E-R图
图(7)全局E-R图
第三章逻辑设计结构
3.1总体E-R图向关系模式转换
1)学生基本信息
(学号、姓名、性别、出生日期、籍贯、所在院系编号、所在班级、电话号码、联系地址、邮编、电子邮件、相片、个人信息备注)
2)学籍变更信息
(记录号、学号、变更情况、记录对象、记录时间、详细描述)
3)学生奖励记录
(记录号、学号、级别、奖励对象、记录时间、详细描述)
4)学生处罚记录
(记录号、学号、级别、处罚对象、记录时间、详细描述、是否生效)
5)班级信息
(班级编号、班级名称、所属院系)
6)院系信息
(院系编号、院系名称)
1
2
3
3.1
3.2数据模型优化
3.2
3.2.1确定数据依赖
A、根据表学生个人信息设置(学号、姓名、性别、出生日期、籍贯、所在院系编号、所在班级、电话号码、联系地址、邮编、电子邮件、相片、个人信息备注)写出数据依赖。
学号-->
姓名,学号-->
性别,学号-->
出生日期,学号-->
籍贯,学号-->
所在院系编号,学号-->
所在班级,学号--电话号码,学号--联系地址,学号—邮编,学号—电子邮箱,学号—相片,学号—个人信息备注
B、根据表学籍变更信息(记录号、学号、变更情况、记录对象、记录时间、详细描述)写出数据依赖。
记录号-->
学号,记录号-->
变更情况,记录号-->
记录对象,记录号-->
记录时间,记录号-->
详情描述
C、根据表学生奖励记录(记录号、学号、级别、奖励对象、记录时间、详细描述)写出数据依赖。
级别,记录号-->
奖励对象,记录号-->
D、根据表学生处罚记录(记录号、学号、级别、处罚对象、记录时间、详细描述、是否生效)写出数据依赖。
处罚对象,记录号-->
想请描述,记录号-->
E、根据表班级信息(班级编号、班级名称、所属院系)写出数据依赖。
班级编号-->
班级名称,班级编号-->
F、根据表院系信息(院系编号、院系名称)写出数据依赖。
院系编号-->
3.2.2对各关系模式间数据依赖进行极小化处理,消除冗余
学号-->
所在班级,学号-->
电话号码,学号-->
联系地址,学号-->
邮编,学号-->
电子邮箱,学号-->
相片,学号-->
3.2.3第三范式
A、学生个人信息表(学号、姓名、性别、出生日期、籍贯、所在院系编号、所在班级、电话号码、联系地址、邮编、电子邮件、相片、个人信息备注)
B、学籍变更信息表(记录号、学号、变更情况、记录对象、记录时间、详细描述)
C、学生奖励记录表(记录号、学号、级别、奖励对象、记录时间、详细描述)
D、学生处罚记录表(记录号、学号、级别、处罚对象、记录时间、详细描述、是否生效)
F、班级信息(班级编号、班级名称、所属院系)
G、院系信息(院系编号、院系名称)
3.3外模式设计(视图)
为学生信息建立视图:
学生信息(记录号、学号、姓名、性别、出生日期、籍贯、院系编号、班级编号、电话号码、联系地址、邮编、电子邮件、相片、个人信息备注、奖励级别、处罚级别)
第四章物理结构设计
数据库物理设计的主要任务是确定数据库物理结构,即确定数据库的存储结构设计和存取方法。
包括确定关系、索引、聚簇、日志、备份等的存储安排和存储结构,确定系统配置等。
4.1存储结构设计
为了提高系统的性能,根据应用情况将数据的易变部分与稳定部分、经常存取部分与不经常存取部分分开存放。
由于现在的计算机都有多个磁盘,将表(如员工信息表)和索引放在不同的磁盘上,在查询过程中,大大提高I/O读写的效率,而对于较大的分放在两个磁盘上,可以加快存取速度,在多用户环境下的作用更有效;
为了改进系统的性能,将日志文件与数据库对象(表、索引等)放在了不同的盘上。
同时,考虑到本系统是多用户的,为了提高效率,数据库备份的数据和日志文件将保存在磁盘中。
在数据库中经常存取的部分包括:
在数据库设计初始阶段,为了对以后的数据库进行物理优化,提供了一些系统配置变量、存储分配系数,并对这些变量赋予合理的缺省值。
但这些值不一定适合每一种应用环境,在进行物理设计时,对这些变量重新赋值,以改善系统的性能。
在选择硬件设备、服务器操作系统、数据库时应该考虑能够逐步增加和扩展。
在配置系统变量时,要注意同时使用数据库的用户数,同时打开的数据库对象数,内存分配参数,缓冲区分配参数,时间片大小,数据库的大小,锁的数目等。
这些参数值都会影响数据库的存储时间和存储空间的分配。
4.2存储设计方法
在本系统中,采用顺序查找,平均查找n/2次,建立B+树索引,则平均查找次数为B+树的层数log2n+1。
所以选择B+树作为索引,再设计过程中对关系的码建立索引。
第五章数据库实施
5.1数据库的创建
5.2数据表的创建
CREATETABLEstudents
(s_numberchar(10)NOTNULLPRIMARYKEY,
s_namechar(8)NOTNULL,
sexchar
(2)NOTNULL,
birthdaydatetimeNOTNULL,
nativechar(20)NOTNULL,
c_numberchar(10)NOTNULL,
dep_numberchar(10)NOTNULL,
telchar(20),
addressvarchar(50),
zipcodechar(8),
emailvarchar(20),
photoimage,
notevarchar(100)
)
5.2.2.学籍变更信息表schoolregister
CREATETABLEschoolregister
(t_numberintNOTNULLPRIMARYKEY,
s_numberchar(10)NOTNULL,
changechar(20),
t_objectchar(20)NOTNULL,
t_timedatetimeNOTNULL,
t_memochar(100)NOTNULL,
5.2.3创建学生奖励记录表reward
CREATETABLEreward
(r_numberintNOTNULLPRIMARYKEY,
r_rankchar(5),
r_objectchar(20)NOTNULL,
r_timedatetimeNOTNULL,
r_memochar(100)NOTNULL,
foreignkey(s_number)referencespunish(s_number)
5.2.4创建学生处罚记录表punish
CREATETABLEpunish
(p_numberintNOTNULLPRIMARYKEY,
p_rankchar(5),
p_objectchar(20)NOTNULL,
p_timedatetimeNOTNULL,
p_memochar(100)NOTNULL,
effectchar
(2)NOTNULL
foreignkey(s_number)referencespunish(s_number)
5.2.5创建班级信息表class
CREATETABLEclass
(c_numberchar(10)NOTN
c_namechar(10)NOTNULL,
dep_numberchar(10)NOTNULL
5.2.6创建院系信息表department
CREATETABLEdepartment
(dep_numberchar(10)NOTNULLPRIMARYKEY,
dep_namechar(10)NOTNULL,
5.3对数据库进行基础操作
5.3.1插入基本信息
1)插入班级信息
2)插入院系信息
3)插入处罚信息
4)插入奖励信息
5)插入学籍变更信息
6)插入学生个人信息
5.3.2对数据库进行添加操作
altertableclassaddnationchar(10)
5.3.3对数据库进行查询操作
selects_name,sex,telfromstudentswheresex='
男'
5.3.4对数据库进行修改操作
updatestudents
setsex='
wheres_name='
张璇'
5.3.5对数据库进行删除操作
Delete
Fromdepartment
wheredep_number='
1'
5.4创建视图
createview视图_students
as
select
s_numberas学号,
s_nameas姓名,
sexas性别,
birthdayas出生日期,
nativeas学生所在系,
c_numberas班号,
dep_numberas院系,
telas电话,
addressas联系地址
fromstudents
5.5创建索引
Createindexxueshengonstudents(s_number)
Createindexbanjionclass(c_number)
Createindexschoolonschoolregister(t_number)
Createindexrewonreward(r_number)
Createindexpunonpunish(p_number)
Createindexdep_nameondepartment(dep_number)
5.6创建角色
createroleR1;
/*创建用户角色R1*/
grantinsert,select,update,delete/*赋予R1各表增、删、改、查的权限*/
ontablestudents
toR1;
grantinsert,select,update,delete
ontableschoolregister
ontablereward
ontablepunish
ontableclass
ontabledepartment
usestudents/*调用系统存储过程创建系统用户张璇*/
go
execsp_addlogin张璇;
usestudents/*调用系统存储过程将张璇置为数据库用户*/
execsp_grantdbaccess张璇,1234;
5.7创建触发器
createtriggerm
onclassforupdate
ifupdate(c_number)
begin
Rollbacktran
Print'
c_number不能修改,请联系教务处'
end
updateclasssetc_number=1wherec_number='
2'
第六章数据库的维护
数据库试运行合格后,数据库开发工作就基本完成,即可投入正式运行了。
但是,由于应用环境在不断变化,数据库运行过程中物理存储也会不断变化,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。
在数据库运行阶段,对数据库经常性的维护工作主要是由DBA完成的,它包括:
1.数据库的转储和恢复
数据库的转储和恢复是系统正式运行后最重要的维护工作之一。
DBA要针对不同的应用