数据库课程设计学生成绩管理系统Word文件下载.docx
《数据库课程设计学生成绩管理系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《数据库课程设计学生成绩管理系统Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
![数据库课程设计学生成绩管理系统Word文件下载.docx](https://file1.bdocx.com/fileroot1/2023-2/4/7445fab9-0c7e-46fe-8a91-d94700bb30c6/7445fab9-0c7e-46fe-8a91-d94700bb30c61.gif)
学生姓名、学号、课程
S003
学生成绩查询信息
成绩查询系统
学生学号、成绩、课程
S004
查询者信息
学生
学生学号
S005
学生成绩信息
学号、姓名、成绩
S006
成绩单信息
成绩发布系统
S007
学生成绩修改信息
成绩修改系统
S008
学生成绩发布信息
⑵处理逻辑的描述
处理逻辑编号
处理逻辑名称
简述
输入的数据流
处理描述
输出的数据流
P0
可以查询、修改、发布成绩
管理员账号、密码、学生学号
系统调用各个子系统完成不同功能
学生信息或学生成绩
P01
管理员登录系统,输入想要查询的学生学号,获得成绩
学号
调用成绩查询功能模块处理
成绩
P02
管理员可以修改学生成绩
按照学号查找学生成绩,然后修改,最后保存
新的成绩
P03
成绩发布系统
成绩分发布
首先查询学生的成绩,然后将其发布到网络上
⑶数据存储的描述
数据存储编号
数据存储名称
数据存储组成
关键字
相关联的处理
D01
学生成绩存储
学号、姓名、课程、成绩
D02
D03
学生信息存储
学号、姓名、课程
课程信息存储
课程名、课程号
课程号
⑷外部实体描述
外部实体编号
外部实体名称
E01
对学生的成绩信息进行管理
E02
学生可以查询成绩
五.数据库完整E-R图
由需求分析的结果可知,本系统设计的实体包括:
(1)学生基本信息:
学号,姓名,性别,年龄,专业,院系。
(2)课程基本信息:
课程名,课程号,课时,学分。
(3)成绩基本信息:
课程号,学号,分数。
这些实体间的联系包括:
每位学生可以学习多门课程,每门课程可供多位学生学习。
由上述分析可得到系统的E—R图:
六.学生成绩管理系统设计的逻辑结构设计
数据库中用到的表:
数据库表名
关系模式名称
备注
Student
学生信息表
Course
课程
课程基本信息表
Score
选课成绩信息表
Student基本情况数据表,结构如下:
字段名
字段类型
字段长度
约束控制
说明
Student_sno
Char
10
主键(primarykey)
Student_sname
NotNull
学生姓名
Student_sex
2
‘男’或‘女’
性别
Student_age
年龄
Student_dept
系别
Student
-major
专业
Course数据表,结构如下:
Course_cno
char
Course_cname
notnull
课程名称
Course_hour
int
课时
Course_credit
4
学分
Score情况数据表,结构如下:
Student_sno
primarykey定义主键
外部键
degree
分数
七.创建数据库及表
打开SQLSever2005,选择默认数据库连接。
接下来右键单击数据新建数据库,命名为:
学生成绩管理系统。
或者:
(1)打开SQL工具“查询分析器”
(2)在查询窗口中键入下列SQL语句
CREATEDATABASE学生成绩管理系统
执行上述SQL语句即可新建一名为“学生成绩管理系统”的数据库
创建数据表格
一个完整的数据库不可缺少的就是数据表,若干个数据表的集合成一个数据库。
数据表主要用来存放一定格式的记录,数据表中的行被称为记录,列被称为字段。
创建数据表的过程其实就是定义字段的过程。
在此学生成绩管理系统中需要创建三个表,即课学生信息表、成绩信息表、课程信息表。
创建数据库后,为学生成绩管理系统数据库添加数据表,步骤如下。
(1)新建查询窗口
(2)在查询窗口中键入下列SQL语句
1CREATETABLECourse(课程信息表)
(//创建课程信息表
Course_cno(课号)char(10)primarykey,//课号
Course_cname(课程名称)char(15)notnull,//课程名称
Course_hour(课时)intNotnull,//课时
Course_credit(学分)int,Notnull//学分)
执行上述SQL语句即可创建课程信息表相关表格;
如:
Course_cnoCourse_cnameCourse_creditCourse_hour
C01计算机文化学31
C02VB23
C03计算机网络47
C04数据库基础56
C05高等数学82
2CREATETABLEStudent(学生信息表)
(//创建学生信息表
Student_sno(学号)char(10)primarykey,//学号
Student_sname(姓名)char(4)notnull,//姓名
Student_sex(性别)char
(1)notnull,//性别
Student_age(年龄)intnotnull,//年龄
Student_dept(所在院系)char(15)notnull,//所在院系Student
_major(专业)char(15)notnull//专业)
执行上述SQL语句即可创建学生信息表相关表格;
Student_snoStudent_snameStudent_sexStudent_ageStudent_deptStudent
_major
李勇男19计算机系计算机网络
刘晨男20计算机系平面设计
王敏女20计算机系计算机科学与技术
张立男22数学系应用数学
3CREATETABLEScore(学生成绩表)
(//创建学生成绩表
Student_sno(学号)char(10)primarykey,//学号
Course_cno(课号)char(10)primarykey,//课号
degree(成绩)intnotnull//成绩)
执行上述SQL语句即可创建学生成绩表相关表格;
Student_snoCourse_cnodegree
C0190
C0286
C060
C0278
C0466
C0182
C0575
八.数据库的运行
1.数据定义
(1)基本表的创建,建表语句
CREATETABLE表名
(2)基本表的删除
DROPTABLE表名
2.数据查询(单表查询)
(1)查询学号为学生的姓名
SelectSname(姓名)
from学生信息表
where学号='
'
(2)查询性别为’女’并且所在院系为’计算机系’的学生姓名
select姓名
where性别='
女'
and
所在院系='
计算机系'
(3)查询所有学生的姓名和系别。
select学生,所在院系
from学生信息表
(4)查询所在院系为计算机系的学生姓名。
select姓名
where所在院系='
计算机系'
(5)查询所有学生的平均年龄
selectSage(年龄)as平均年龄
3.数据库的更新
(1)插入数据
向学生信息表中添加一项记录:
姓名:
关羽,学号:
,性别:
男,年龄:
24,所在院系:
计算机系
Insert
Into学生信息表(学号,性别,年龄,所在院系)
Values('
'
关羽'
'
男'
24'
计算机系)
(2)修改数据
修改刘晨的学号为:
Update学生信息表
Set学号=’’
Where姓名=’刘晨’;
(3)删除数据
删除所有计算机系学生的记录
Delete
Where(所在院系=’计算机系’);
4.数据库的完整性
对于学生成绩表:
成绩的值应该在0和100之间:
createtable学生成绩表(//创建学生成绩表
课号char(10)primarykey,//课号
学号char(10)primarykey,//学号
成绩intNotnull//成绩
check(成绩>
0and成绩<
=100)
)