数据库原理课程设计报告学生成绩管理系统Word文件下载.docx
- 文档编号:16257637
- 上传时间:2022-11-22
- 格式:DOCX
- 页数:16
- 大小:157.94KB
数据库原理课程设计报告学生成绩管理系统Word文件下载.docx
《数据库原理课程设计报告学生成绩管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《数据库原理课程设计报告学生成绩管理系统Word文件下载.docx(16页珍藏版)》请在冰豆网上搜索。
1、课程修改
实现对课程名、学时、学分的修改.
2、课程添加
对一门新开设的课程进行录入,并存入数据库。
3、课程删除
对一门不在开设的课程进行删除,并从数据库中删除。
(三)成绩查询
1、成绩修改
先选中要修改的成绩信息,然后进行修改。
2、成绩添加
直接弹出添加对话框,然后进行添加.
3、成绩删除
先选中要删除的成绩信息,然后直接删除。
2。
需求分析
2.1数据流程图
图2—1系统的数据流图
2。
2数据字典
数据项是数据库的关系中不可再分的数据单位,下表分别列出了数据的名称、数据类型、长度、取值能否为空。
利用SQLServer2000建立“StudentCourse”数据库,其基本表清单及表结构描述如下:
数据库中用到的表:
数据库表名
关系模式名称
备注
Student
学生
学生学籍信息表
Course
课程
课程基本信息表
Score
成绩
选课成绩信息表
Student基本情况数据表,结构如下:
字段名
字段类型
NotNull
说明
Student_sno
Char
Primarykey
学号
Student_sname
char
学生姓名
Student_sex
‘男’或‘女’
性别
Student_dept
系别
Student_age
年龄
Student_address
地址
Course数据表,结构如下:
约束控制
Course_cno
主键(primarykey)
课程号
Course_cname
notnull
课程名称
Course_hour
int
课时
Course_score
numeric(2,1)
学分
Score情况数据表,结构如下:
外部键
Student_sno
3存储过程
(1)在Course中插入一元组
CREATEPROCEDURECourse_prod
AS
Insert
IntoCourse
Values('
1018’,'
微机原理’,'
36'
,’3。
5’)
(2)创建一个查询过程
CREATEPROCEDURECourse_prod1
Select*
FromCourse
(3)创建一个删除存储过程
CREATEPROCEDURECourse_prod2
Delete
WhereCourse_cno=’1007'
3.概念结构设计
3。
1E—R图
由需求分析的结果可知,本系统设计的实体包括:
(1)学生基本信息:
学号,姓名,性别,地址,年龄,专业。
(2)课程基本信息:
课程名,课程号,学时,学分。
(3)成绩基本信息:
课程号,学号,分数。
这些实体间的联系包括:
每位学生可以学习多门课程,每门课程可供多位学生学习。
由上述分析可得到系统的E—R图:
4.逻辑结构设计
4.1将E—R图转换为关系模型
实体型转换为关系模式。
实体的属性就是关系的属性,实体的码就是关系的码.对于实体间的联系则有以下不同的情况:
一个m:
n联系转换为一个独立的关系模式。
与该联系相联的个实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合.
一个1:
n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。
如果转换为一个独立的关系模式,则与该联系相联的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。
1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。
3个或3个以上实体间的一个多元联系可以转换为一个关系模式.与该多元联系相联的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合,具有相同的关系模式可合并。
具体的基本E—R图向关系模式的转化如下:
(1)学生(学号,姓名,性别,年龄,地址,系别),其主关键字为学号;
(2)课程(课程名,课程号,学时,学分),其中主关键字为课程号;
(3)成绩(课程号,学号,分数)其中主关键字为学号和课程号。
可以与学生关系模式合并为:
学生(学号,姓名,性别,年龄,地址,系别,成绩,课程号).
4.2模型优化
关系模式学生,课程不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF.
5。
物理结构设计
1.建立数据表
(1)学生信息表的建立。
CREATETABLEStudent
(Student_snochar(10)primarykey,
Student_snamechar(10)notnull,
Student_sexchar
(2),
Student_deptchar(10),
Student_agechar(10),
Student_addresschar(10));
(2)课程信息表的建立
CREATRTABLECourse
(Course_cnochar(10)primarykey,
Course_cnamechar(10)notnull,
Course_hourint,
Course_scorefloat(8));
(3)分数信息表的建立
CREATETABLEScore
(Course_cnochar(10),
Student_snofloat(8),
Scorefloat(8));
2.建立视图
(1)查询学生基本信息的视图定义如下:
CREATEVIEWStudent_view(Student_sno,Student_sname,Student_sex,Student_dept,Student_age,Student_address)
SELECT*
FROMStudent
(2)课程信息查询的视图定义如下:
CREATEVIEWCourse_view(Course_cno,Course_cname,Course_hour,Course_score)
SELECT*
FROMCourse
(3)成绩信息查询视图定义如下:
CREATEVIEWScore_view(Course_no,Student_sno,Scorefloat)
FROMScore
3.建立索引
(1)为学生Student表的学生姓名建立索引。
CreateclusterindexsnameindexonStudent(Student_sname);
(2)为课程Course表的课程名建立索引。
CreateclusterindexcnameindexonCourse(Course_cname);
6.角色与触发器设计
创建一个角色
(1)为普通学生创建一个角色R1,并对其授权查询操作。
CREATEROLER1
GRANTSELECT
ONTABLEStudent,Course,Score
TOR1;
在
①在数据库目录下的角色上右击,选择新建数据库角色。
②单击‘确定’,再选择角色R1属性
③选择权限
④勾选三个表的SELECT权限,确定即可。
(2)为老师创建一个角色R2,并对其授权查询、插入、更新、删除操作。
CREATEROLER2
GRANTSELECT,INSERT,UPDATE,DELETE
ONTABLEStudent,Course,Scorse
TOR2;
方法同
(1),第④步权限选择如下图:
创建触发器
当删除Student表中某一学生基本信息时,触发Course表,删除相应的记录。
CREATETRIGGERStudent—delete
ONStudent
FORDELETE
AS
DELETECourse
FORMDELETED
WHERECourse。
sno=DELETED.sno
7。
数据库的实施和维护
1数据库的实施
数据插入
·
插入新的课程,课程号为1018,课程名为微机原理,学时为36,学分为3。
5
INSERT
INTOCourseVALUES('
1018'
,’微机原理’,’36'
’3.5'
);
插入学号为200803学生的微机原理成绩,分数为81
INTOScoreVALUES('
200803'
'
81'
2.查询数据
查询学号为200801的学生信息:
FromStudent
WhereStudent_sno=‘200801'
查询名字为张三的学生成绩及课程名:
SelectScore,Course_cname
FromScore,Course
WhereStudent_snoin
(SelectStudent_sno
WhereStudent_sname='
张三’andCourse.Course_cno=Score。
Course_cno);
3.删除数据
删除课程号为1018的课程
DELETE
WhereCourse_cno=’1018’
删除学生柴胡的所有成绩记录
(SELECTStudent_sno
WHEREStudent_sname=’柴胡’);
7.2.数据库的维护
数据库试运行合格后,数据库开发工作就基本完成,即可投入正式运行,但是,由于应用环境在不断变化,数据库运行过程中物理结构存储也会不断变化,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。
数据库运行一段时间后,由于记录不断增,删,改,会使数据库的物理存储情况变坏降低了数据的存取效率,数据库的性能下降,这时候作为数据库管理员就要对数据库进行重组织或部分重组织(只对频繁增、删的表进行重组织)。
DBMS一般都提供数据重组织的实用程序。
在重组织的过程中,按原设计要求重新安排存储的位置、回收垃圾、减少指针链等,提高系统性能.
数据库的重组织并不修改原设计的逻辑和物理结构,而数据库的重构造则不同,它是指部分修改数据库的模式和内模式。
由于数据库应用环境发生变化,增加了新的应用或者新的实体,取消了某些应用,有的实体与实体间的联系也发生改变,使原有的数据库设计不能满足新的需求,需要调整数据库的模式和内模式。
8.结束语
在这次的课程设计中不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。
在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督.学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。
通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E—R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,增强了自己在数据库中应用SQL语言的灵活性,其中包括,插入、删除、修改、查询,牵涉表和表之间的联系,主建与外主键的定义,约束项的设置,使逻辑更严密,在学习过程中,我也能过上网查了不少资料,也看了一些别人设计的图书馆管理信息系统的设计报告,学以致用,自我创新,独立完成了这份自己的报告,从中在学到用,从用又到学,不断修改,系统更新.虽然不能达到完善系统,但也做到了尽善尽美,加强理论学习对完善系统会有很多帮助,不管怎么说,对这次做的课程设计自己觉得还算满意.
课程设计是我们专业课程知识综合应用的实践训练,是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础。
8.答辩与成绩考核
答辩问
答
成绩评定
项目
权重
1、设计过程中勤、能力、水平、态度等方面
0.2
2、说明书书写及作品质量程度
0。
4
3、答辩
2
4、系统
总成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 课程设计 报告 学生 成绩管理系统