东软数据库三级项目
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生成绩管理系统
1. 需求描述
设计一个学生成绩的数据库管理系统,数据库中要求包含学生的基本信息,学科基本信息,以及学生所学课程的考试成绩。要方便学生进行成绩查询,通过该课程设计,应该达到把数据库理论知识更加的巩固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。
能够进行数据库的数据定义、数据操纵、数据控制等处理功能,进行联机处理的相应时间要短。
具体功能应包括:系统应该提供课程安排数据的插入、删除、更新、查询;成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。
2. 概念结构设计
3. 逻辑结构设计
设计学生成绩管理数据库,包括课程、学生、教师、成绩四个关系, 其关系模式中对每个实体定义的属性如下:
课程信息表
Class:(课程号,课程名,教师号,学分,学时)
学生信息表
Student1:(学号,,性别,年龄,专业,系别)
成绩表
Score:(学号号,课程名,成绩)
教师表
Teacher1:(教师号,教师名,教师性别,教师系别)
1、课程信息表(class)
2、学生信息表(student1)
3.教师表(teacher1)
4.成绩表
A.创建索引:
(1) 在class表的cno列上创建非聚集索引。
Create index classrname ON class (cno)
(2) 在student1表的sno列上创建非聚集索引。
Create unique index student1no ON Student1 (sno)
(3) 在Student1表的sno列创建一个非聚集索引,要求索引键值按sno升序排列。
Create index student1no ON student1(sno ASC)
B.删除索引:
(1)删除student1表中的student1no 索引。
Drop index student1no
5. 数据库实施
1、创建数据库
(1)打开SQL工具“查询分析器”
(2)在查询窗口中键入下列SQL语句
create database ScoreSystem
执行上述SQL语句即可新建一名为ScoreSystem的数据库
2、创建数据表
创建数据库后,为ScoreSystem数据库添加数据表,步骤如下。
(1)新建查询窗口
(2)在查询窗口中键入下列SQL语句
create table Class( //创建课程信息表
o char(10) primary key, //课程号
ame char(10) not null, //课程名
teano char(10) Not null //教师号
credit char(4), Not null //学分
ctime char(50), Not null //学时
)
执行上述SQL语句即可创建课程信息表相关表格
create table student1( //创建学生信息表
sno char(10) primary key, //学号
sname char(10) not null, //
ssex char(2) not null, //性别
Sage char(2) not null, //年龄
Major char(10) not null, //专业
Depart char(10) not null, / /系别
)
执行上述SQL语句即可创建学生信息表相关表格
create table teacher1( //创建教师信息表
tno char(10) primary key, //教师号
tname varchar(50) not null, //教师名
tsex char(2), //教师性别
tdepart varchar(50) //教师系别
)
执行上述SQL语句即可创建教师信息表相关表格
create table score( //创建成绩表
sno char(10), //学号
o char(10), //课程号
)
执行上述SQL语句即可创建成绩表相关表格
学生信息相关表格
课程信息相关表格
成绩信息表
教师信息表
(1)查询sno为0811080101学生的sname select sname
from student1
where sno=' 0811080101'
结果:
(2)查询ssex为’女’并且sdepart为’工商’的sname select sname
from student1
where ssex ='女' and
sdepart ='工商'
结果:
(3)查询depart为数学系的sname。
select sname
from student1
where depart ='数学系'
结果:
(4)查询所有学生所在院系名称
select distinct depart
from student
结果:
(5)查询0811080102号同学和0811080103号同学共同选修的课程Selecto
From score
Where sno='0811080102'
Intersect
Select o
From score
Where sno='0811080103'
查询结果
(6)查询选修了0306这门课的所有学生的学号、、年龄、院系