学生成绩管理系统模型.docx
- 文档编号:29609314
- 上传时间:2023-07-25
- 格式:DOCX
- 页数:15
- 大小:22.21KB
学生成绩管理系统模型.docx
《学生成绩管理系统模型.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统模型.docx(15页珍藏版)》请在冰豆网上搜索。
学生成绩管理系统模型
学生成绩管理系统数据库
概念结构设计
设计教室管理数据库包括班级、教室、课程、教师四个关系。
E-R图如下
课程号课程名
教师号学分教课学时系别专业性别学号年龄
teano教师号Notnullchar(10)
credit学分Notnullchar(4)
ctime学时Notnull
char(50)
字段名描述字段权限学号Primarykeysno姓名Notnullsname
课程信息表
教师信息表
成绩
学号选课课程号成绩学生信息表姓名数据类型char(10)char(10)
教师教师教师性教师系别
逻辑结构设计其关系,设计学生成绩管理数据库,包括课程、学生、教师、成绩四个关系模式中对每个实体定义的属性如下:
课程信息表:
(课程号,课程名,教师号,学分,学时)Class学生信息表)Student1:
(学号,姓名,性别,年龄,专业,系别成绩表(学号号,课程名,成绩):
Score
教师表
:
()教师号,教师名,教师性别,教师系别Teacher11、课程信息表(class)
字段名描述数据类型字段限制
cno课程号Primarykeychar(10)
cname课程名Notnullchar(10)
2、学生信息表(student1)
性别Notnullssexchar
(2)
年龄Notnullsagechar
(2)专业Notnullmajorchar(10)系别Notnull
depart
char(10)
3.教师表(teacher1)
字段名属性数据类型字段权限
teano教师号Primarykeychar(10)
tname教师名Notnullchar(10)
Tsex教师性别Notnullchar
(2)
Tdepart
教室系别Notnull
char(10)
4.成绩表
字段名属性数据类型字段权限
sno
学号Primarykey
char(10)
cno课程名char(10)Notnull
degree
成绩Notnull
char(10)
数据库实现
数据库实施是指建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
1、创建数据库
(1)打开SQL工具“查询分析器”
(2)在查询窗口中键入下列SQL语句
createdatabaseScoreSystem
执行上述SQL语句即可新建一名为ScoreSystem的数据库
2、创建数据表
在此学生成绩管理系统中需要创建四个表,即课程信息表、学生信息表、教师信息表和成绩表。
创建数据库后,为ScoreSystem数据库添加数据表,步骤如下。
(1)新建查询窗口
(2)在查询窗口中键入下列SQL语句
createtableClass(//创建课程信息表
cnochar(10)primarykey,//课程号
cnamechar(10)notnull,//课程名
teanochar(10)Notnull//教师号
creditchar(4),Notnull//学分
ctimechar(50),Notnull//学时
)
执行上述SQL语句即可创建课程信息表相关表格
createtablestudent1(//创建学生信息表
snochar(10)primarykey,//学号
snamechar(10)notnull,//姓名
ssexchar
(2)notnull,//性别
Sagechar
(2)notnull,//年龄
char(10)notnull,Major//专业
Departchar(10)notnull,//系别
)
语句即可创建学生信息表相关表格SQL执行上述.
createtableteacher1(//创建教师信息表
tnochar(10)primarykey,//教师号
tnamevarchar(50)notnull,//教师名
tsexchar
(2),//教师性别
tdepartvarchar(50)//教师系别
)
执行上述SQL语句即可创建教师信息表相关表格
createtablescore(//创建成绩表
snochar(10),//学号
cnochar(10),//课程号
)
执行上述SQL语句即可创建成绩表相关表格
学生信息相关表格
Sno
sname
ssex
sage
major
depart
101
陈琦
男
22
信息
工商
102
崔雪娇
女
23
信息
工商
103
董朝阳
男
22
数学教育
数学系
104
杜鹃
女
22
计算机应用
计算机系
105
方卉
女
20
汉语言
文法系
课程信息相关表格
Cno
cname
tno
credit
ctime
301
财务管理
001
2
24
302
供应链管理
002
2.2
18
303
生产与运作管理
003
2.4
36
304
统计学
004
2.6
32
305
网页制作
005
2.8
30
306
操作系统原理
006
3.0
32
307
数据库原理
007
3.2
30
308
项目管理
008
3.4
45
309
程序设计web
009
3.5
35
成绩信息表
Sno
Cno
Degree
101
0306
85
101
0303
90
101
0305
86
102
0306
82
102
0304
84
102
0301
81
103
0306
93
103
0302
79
103
0304
85
104
0306
94
104
0308
74
104
0307
86
教师信息表
tno
tname
tsex
tdepart
001
卢亚君
女
财经
002
李昌明
男
财经
003
张富强
男
财经
004
刘翠杰
女
会计
005
王庆石
男
会计
006
黄立明
男
会计
007
王纲
男
计算机
008
徐伟丽
女
计算机
009
刘书霞
女
计算机
数据库运行和维护阶段
:
基本表的创建、修改及删除;索引的创建和删除;视图的创建和删除、数据定义1.
(1)基本表的创建,建表语句
createtablestudents(
stunochar(10)primarykey,
stunamevarchar(40)notnull,
stusexchar
(2)notnull,
stuagechar(10)notnull,
char(10)notnull,stumajor
studepartchar(10)notnull,
)
(2)基本表的删除
studentsdroptable2、数据操作
数据库查询操作
A.单表查询:
(1)查询sno为101学生的sname
selectsname
fromstudent1
wheresno='101'
(2)查询ssex为'女'并且sdepart为'工商'的sname
selectsname
fromstudent1
wheressex='女'and
sdepart='工商'
(3)查询所有学生的姓名和系别。
selectsname,depart
fromstudent1
(4)查询depart为数学系的sname。
selectsname
fromstudent1
wheredepart='数学系'
(5)查询所有学生所在院系名称
selectdistinctdepart
fromstudent
(6)查询学生信息表中年龄小于21和年龄大于21的学生的姓名和系别
selectsname,depart
fromstudent1
wheresage>21orsage<21
(7)查询所有学生的平均年龄selectavg(sage)as平均年龄
fromStudent1B.连接查询
(1)学生的学号、姓名,所选课程的课程号、课程名和成绩、任课教师名
Select
,student1.sno,student1.sname,o,ame,score.degree
teacher1.tname
fromstudent,class,score,teacher1
Where
student1.sno=score.sno
and
o=o
and
teacher1.tno=class.tno
(2)找出教授数据库原理的老师的教师名
selectteacher1.tname
fromclass,teacher1
'数据库原理cname='teacher1.tnoandclass.Whereclass.tno=C.操作结果集查询
查询102号同学和103号同学共同选修的课程
Selectcno
Fromscore
Wheresno='102'
Intersect
Selectcno
Fromscore
Wheresno='103'
D.嵌套查询
查询选修了0306这门课的所有学生的学号、姓名、年龄、院系
Selectsno,sname,sage,depart
Fromstudent1
Wheresnoin
(selectsno
Fromscore
Wherecno='0306')
3、数据库更新操作
A.插入数据
向Student1表中添加一项记录:
姓名:
叶问,学号:
201,性别:
男,年龄:
36专业:
信息管理,系别:
工商
Insert
Into
Student1(Sno,Sname,Ssex,sage,major,depart)
Values('201','叶问','男','36','信息管理','工商')
B.修改数据
修改陈琦的学号为023:
UpdateStudent1
SetSno='203'
WhereSname='陈琦';
C.删除数据
删除所有工商学生的记录
Delete
fromstudent1
);
'工商'Where(depart=
4、为数据库建立索引
A.创建索引:
(1)在class表的cno列上创建非聚集索引。
CreateindexclassrnameONclass(cno)
(2)在student1表的sno列上创建非聚集索引。
Createuniqueindexstudent1noONStudent1(sno)
(3)在Student1表的sno列创建一个非聚集索引,要求索引键值按sno升序排列。
Createindexstudent1noONstudent1(snoASC)
B.删除索引:
(1)删除student1表中的student1no索引。
Dropindexstudent1no
5、视图的操作:
数据库视图的定义(创建和删除)、查询和更新
A.查询所有学生选课的信息,包括学号、姓名、课程号、课程名、成绩
createviewscore3
as
selects.sno'学号',sname'学生名',o'课程号',cname'课程名',sc.degree'成绩'
fromstudent1s,classc,scoresc
wheres.sno=sc.snoando=o
go
B.更新视图:
(1)修改信息:
将陈琦的名字改为陈琪琪
Updatescore3
set学生名='陈琪琪'
where学生名='陈琦
(2)删除信息:
删除视图中陈琪琪的记录score3delete
fromscore
='陈琪琪'where学生名删除视图:
删除前面的视图。
score3dropviewscore3
6、数据库的安全性
创建SQLServer身份验证的登录账户陈琦、崔雪娇、董朝阳、杜鹃
EXECsp_addlogin‘陈琦','000','AAA'
EXECsp_addlogin‘崔雪娇','000','AAA'
EXECsp_addlogin‘董朝阳',000','AAA'
EXECsp_addlogin‘杜鹃','000','AAA'
创建数据库用户
EXECsp_adduser‘陈琦'
EXECsp_adduser'崔雪娇'
EXECsp_adduser'董朝阳'
','managers'杜鹃','杜鹃EXECsp_adduser'.
建立数据库角色
EXECsp_addrole‘managers'
删除身份验证的登录账户'杜鹃'SQLServerEXECsp_droplogin‘杜鹃'
从当前数据库中删除用户'杜鹃'
EXECsp_dropuser‘杜鹃'
授权操作
(1)把对表的权限授予用户董朝阳,并允许他再将此权限授予其他用户。
insertstudentgrantinsert
ontableGoods
to董朝阳
withgrantoption
(2)把查询表和修改属性的权限授给用户陈琦。
nowpriceGoodsgrantselect,update(nowprice)
ontableGoods
to陈琦
(3)把用户陈琦查询表权限收回。
Goodsrevokeselect
ontableGoods
from陈琦cascade
7、数据库的完整性
对于class表:
class(cno,cname,tno,credit,ctime),cno的值应该在0和20之间:
createtableClass(//创建课程信息表
cnochar(10)primarykey,//课程号
cnamechar(10)notnull,//课程名
teanochar(10)Notnull//教师号
creditchar(4),Notnull//学分
ctimechar(50),Notnull//学时
check(cno>0andcno<=20)
)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 模型