sql学生成绩管理系统课程设计数据库Word格式.docx
- 文档编号:16443435
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:15
- 大小:242.04KB
sql学生成绩管理系统课程设计数据库Word格式.docx
《sql学生成绩管理系统课程设计数据库Word格式.docx》由会员分享,可在线阅读,更多相关《sql学生成绩管理系统课程设计数据库Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
|成绩(degree)char(10)非空
|课程名(cname)char(10)非空
1.3数据流图
顶层图:
总数据流图:
2概念模型设计
2.1E-R模型
2.1.1数据库的局部E-R图
概念结构设计阶段是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
课程信息图:
成绩表:
学生信息表:
2.1.2数据库完整E-R图
3逻辑模型设计
3.1逻辑结构设计阶段
E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和候选码。
设计学生成绩管理数据库,包括课程、学生、成绩三个关系,其关系模式中对每个实体定义的属性如下:
课程信息表:
(课程号,课程名,教师号,学分)
此为联系“课程信息表”所对应的关系模式。
课程名为该关系的候选码。
学生信息表:
(学号,姓名,性别,年龄,专业,系别)
此为联系“学生信息表”所对应的关系模式。
学号为该关系的候选码。
(学号,课程号,课程名,成绩)
此为联系“输入”所对应的关系模式。
题目编号、管理号为该关系的候选码。
数据库中包含3个表,即课程信息(classinformation),学生信息(studentinformation),成绩信息(scoreinformation)。
3.2数据模型的规范化
1.)课程信息图
2.)学生信息图
3.)学分信息图
4数据库的物理设计
4.1系统结构设计
4.1.1系统功能模块
5数据库的实施
5.1创建数据库
createdatabasestuDB
5.1.1创建表
在此学生成绩管理系统中需要创建三个表,即课程信息表、学生信息表和成绩表。
创建数据库后,为stuDB数据库添加数据表,步骤如下:
(1)新建查询窗口
(2)在查询窗口中键入下列SQL语句
createtableClass(//创建课程信息表
cnochar(10)primarykey,//课程号
cnamechar(10)notnull,//课程名
teanochar(10)Notnull//教师号
creditchar(4),Notnull//学分
)
执行上述SQL语句即可创建课程信息表相关表格
createtablestudent1(//创建学生信息表
snochar(10)primarykey,//学号
snamechar(10)notnull,//姓名
ssexchar
(2)notnull,//性别
Sagechar
(2)notnull,//年龄
Majorchar(10)notnull,//专业
Departchar(10)notnull,//系别
)
执行上述SQL语句即可创建学生信息表相关表格
createtablescore(//创建成绩表
snochar(10),//学号
cnochar(10),//课程号
cdegreechar(10),//学分
cnamechar(10),//课程名
)
执行上述SQL语句即可创建成绩表相关表格
学生信息相关表格
Sno
sname
ssex
sage
major
depart
0901
薛克强
男
22
软件
计算机系
0902
陈波
23
通信
0903
宋丹丹
女
20
会计
金融系
0904
王恒文
男
园林
土木系
0905
沈网中
课程信息相关表格
Cno
cname
tname
credit
0301
C语言
王月敏
2
0302
信号与系统
杜鹃
2.5
0303
微积分
王可
0304
高等数学
刘甸宝
4
成绩信息表
cdegree
90
84
81
79
85
94
5.1.2创建索引
创建索引:
(1)在class表的cno列上创建非聚集索引。
CreateindexclassrnameONclass(cno)
(2)在student1表的sno列上创建非聚集索引。
Createuniqueindexstudent1noONStudent1(sno)
(3)在Student1表的sno列创建一个非聚集索引,要求索引键值按sno升序排列。
Createindexstudent1noONstudent1(snoASC)
5.2组织数据入库
课程信息表
学生信息表
6数据库的运行于维护
1、数据定义:
基本表的创建、修改及删除;
索引的创建和删除;
视图的创建和删除
(1)基本表的创建,建表语句
createtablestudents(
snochar(10)primarykey,
snamevarchar(40)notnull,
ssexchar
(2)notnull,
sagechar(10)notnull,
smajorchar(10)notnull,
sdepartchar(10)notnull,
)
(2)基本表的删除
droptablestudents
2、数据操作
数据库查询操作
A.单表查询:
(1)查询sno为09901学生的sname
selectsnamefromstudentswheresno='
0901'
结果:
(2)查询ssex为’女’并且sdepart为’金融系’的sname
selectsnamefromstudentswheressex='
女'
andsdepart='
金融系'
(3)查询所有学生的姓名和系别。
selectsname,Departfromstudents
(4)查询Depart为计算机系的sname。
selectsnamefromstudentswhereDepart='
计算机系'
(5)查询所有学生所在院系名称
selectdistinctDepartfromstudents
(6)查询学生信息表中年龄小于21和年龄大于21的学生的姓名和系别
selectsname,Departfromstudentswheresage>
21orsage<
21
B.嵌套查询
查询选修了0304这门课的所有学生的学号、姓名、年龄、院系
selectsno,sname,sage,Departfromstudentswheresnoin(selectsno
fromscorewherecno=’0304’)
查询结果:
3、数据库更新操作
A.插入数据
向Students表中添加一项记录:
姓名:
杨昇昇,学号:
0907,性别:
男,年龄:
22专业:
信息管理,系别:
insertintoStudents(Sno,Sname,Ssex,sage,major,depart)values('
0907'
'
杨昇昇'
'
男'
22'
信息管理'
B.修改数据
修改的学号为0908:
updateStudentssetSno=’0908’whereSname=’陈波’;
C.删除数据
删除所有金融学生的记录
delete*fromstudentswheredepart=’金融系’;
4、视图的操作:
数据库视图的定义(创建和删除)、查询和更新
A.查询所有学生选课的信息,包括学号、姓名、课程号、课程名、成绩
selectstudent.sno'
学号'
student.sname'
学生名'
o'
课程号'
ame'
课程名'
score.degree'
成绩'
fromstudent,class,scorewherestudent.sno=score.snoando=o
B.更新视图:
(1)修改信息:
将宋丹丹的名字改为宋丹
updatescore1set学生名='
宋丹丹'
where学生名='
宋丹'
(2)删除信息:
删除视图score1中王恒文的记录
deletefromscorewhere学生名='
王恒文'
七、总结
经过这一周半的课程设计,我对数据库的理解又加深了一步,从简单的理论到实际上机操作中的种种困难,都必须自己去克服和摸索,这对我来说,是一个巨大的挑战。
而当完成了以后,我发现自己基本能将书本上的章节融汇贯通,从而也达到了复习的效果。
课程设计第一个内容是数据库、数据表的创建开始的,表是建立关系数据库的基本结构,用来定义数据的属性,在表的操作过程中,有查看表信息、查看表属性、修改表中的数据、删除表中的数据及修改表和删除表的操作。
表是重要的,表的创建好坏直接关系到数数据库的好坏。
课程设计的另一个内容是数据库查询与修改。
了解到查询语句的基本结构,和简单SELECT语句的使用。
在整个设计过程中,我也遇到了很多麻烦,这些以前容易忽视掉的问题,有时候在上机的时候就显的尤为重要。
比如说书本上代码基于的版本和实际运行的环境存在不兼容性,这就使得我在整个代码编写的过程中要不断的查阅资料,不断进行调试。
虽然比较浪费时间,但在这同时,也提高了我自学的能力,养成了良好的学习习惯。
此外,在设计整体和局部E-R图时,实体和属性的选择,以及实体于实体间的联系,都是经过几次修改,不断的研究系统性能的情况下才完成的。
而这每一次的修改,又牵动了后续的进行,经过这样反复的修改和思考,才使得系统的模型基于成熟,然后再考虑代码的时候就比较得心应手了。
最后,此次的课程设计确实让我受益匪浅。
起码在已有的水平上,我的理论与实践都有了长足的进步。
这对以后的设计也是一笔宝贵的财富。
参考文献
1.王珊《数据库系统概论》(第四版)。
高等教育出版社,2009
湖南商学院课程设计评审表
姓名
贺尹红
专业班级
信管1101班
题目:
学生成绩数据库设计
评
审
意
见
评审项目
成绩
立题或选题(10%)
A:
优秀B:
良好C:
中等D:
及格E:
不及格
获取信息能力(10%)
方案的新颖性(10%)
方案的综合性(20%)
方案的内容(40%)
文档的格式(10%)
总评100%
指导教师签名
评审时间:
2013年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sql 学生 成绩管理系统 课程设计 数据库
![提示](https://static.bdocx.com/images/bang_tan.gif)