学生成绩管理系统模型.docx

上传人:b****8 文档编号:29609314 上传时间:2023-07-25 格式:DOCX 页数:15 大小:22.21KB
下载 相关 举报
学生成绩管理系统模型.docx_第1页
第1页 / 共15页
学生成绩管理系统模型.docx_第2页
第2页 / 共15页
学生成绩管理系统模型.docx_第3页
第3页 / 共15页
学生成绩管理系统模型.docx_第4页
第4页 / 共15页
学生成绩管理系统模型.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

学生成绩管理系统模型.docx

《学生成绩管理系统模型.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统模型.docx(15页珍藏版)》请在冰豆网上搜索。

学生成绩管理系统模型.docx

学生成绩管理系统模型

学生成绩管理系统数据库

概念结构设计

设计教室管理数据库包括班级、教室、课程、教师四个关系。

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)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 销售营销

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1