数据库系统大题Word格式.docx

上传人:b****1 文档编号:14406758 上传时间:2022-10-22 格式:DOCX 页数:13 大小:112.54KB
下载 相关 举报
数据库系统大题Word格式.docx_第1页
第1页 / 共13页
数据库系统大题Word格式.docx_第2页
第2页 / 共13页
数据库系统大题Word格式.docx_第3页
第3页 / 共13页
数据库系统大题Word格式.docx_第4页
第4页 / 共13页
数据库系统大题Word格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

数据库系统大题Word格式.docx

《数据库系统大题Word格式.docx》由会员分享,可在线阅读,更多相关《数据库系统大题Word格式.docx(13页珍藏版)》请在冰豆网上搜索。

数据库系统大题Word格式.docx

(11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)

解:

本题各个查询语句对应的关系代数表达式表示如下:

(1).nC#,CNAME(TEACHER=程军'

(C))

(2).nS#,SNAME((AGE>

21\SEX=男”(C))

(3).nSNAME{&

[nS#,C#(sc)-nC#((TEACHER=程军'

(C))]}

(4).nC#(C)-nC#(oSNAME=李强'

(S)SC)

(5).nS#(d1]=[4]A[2]工⑸(SCXSC))

⑹.

nc#,cname(c(ns#,c#(sc)*ns#(s)))

⑺•

nS#(SCnC#(oTEACHER=程军'

(C)))

(8).

nS#,C#(sc)*nC#(dC#=k1'

VC#='

k5'

(9).

nsname{s[ns#,c#(sc)*nc#(c)]}

(10).

ns#,c#(sc)*nc#(js#='

2'

(sc))

(11).

nS#,SNAME{s[nS#(SC£

NAME‘C语言’

2、关系R和S如下图所示,试计算R*S。

R(No,NAMESEXAGECLASS)

主关键字是NO

其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号

写出实现下列功能的SQL语句。

1插入一个记录(25,“李明”,“男”,21,“95031”);

2插入“95031”班学号为30、姓名为“郑和”的学生记录;

3将学号为10的学生姓名改为“王华”;

4将所有“95101”班号改为“95091”;

5

R

删除学号为20的学生记录;

6删除姓“王”的学生记录;

答案:

1INSERTINTORVALUES(25“李明”,“男”,21,“95031”)

2INSERTINTOR(NQNAMECLASS)VALUES(30,“郑和”,“95031”)

3UPDATERSETNAME=i华”WHERENG10

4UPDATERSETCLASS“95091”WHERECLASS“95101”

5DELETEFROMRWHERENO=20

6DELETEFROMRWHERENAMELf^%”

2、设学生课程数据库中有三个关系:

学生关系S(S#,SNAME,AGE,SEX)

学习关系SC(S#,C#,GRADE)

课程关系C(C#,CNAME)

其中S#、C#、SNAME、AGE、SEX、GRADE、CNAME分别表示学号、课程号、姓名、年龄、性别、成绩和课程名。

用SQL语句表达下列操作

(I)检索选修课程名称为“MATHS”的学生的学号与姓名

(2)检索至少学习了课程号为“C1”和“C2”的学生的学号

(3)检索年龄在18到20之间(含18和20)的女生的学号、姓名和年龄

(4)

(4)将选修课程号为“C1”的同学成绩加5分

(5)找岀每个学生超过他选修课程平均成绩的课程号

(6)查询查询选修“C2'

号课程且成绩在90分以上的所有学生。

(7)查询所有姓刘的学生的姓名、学号和性别

(8)检索平均成绩超过80分的学生学号和平均成绩

(9)检索选修了全部课程的学生姓名

(II)检索选修了三门课以上的学生的姓名

(12)创建视图stu」nfo,包括选修“C1”号课程所有学生的学号、姓名、性别、年龄、选修课程号、课程名、成绩

(1)SELECTSNAME,AGE

FROMS,SC,C

WHERES.S#=SC.S#

ANDC.C#=SC.C#

ANDCNAME='

MATHS

(2)SELECTS#

FROMSC

WHERECNO='

C1'

ANDS#IN(SELECTS#

C2)

(3)SELECTS#,SNAME,AGE

FROMS

WHEREAGEBETWEEN18AND20

(4)INSERTINTOS(S#,SNAME,AGE,SEX)

VALUES(“”,”王丽”,19,”女”);

(5)UPDATESC

SETGRADE=GRADE+5

WHEREC#二'

C1'

;

(6)SELECTS#,C#

FROMSXWHEREGRADE>

=(SELECTAVG(GRADE)FROMCYWHEREY.S#二X.S#);

(7)SELECTS.S#,SNAMEFROMS,SCWHERES.S#=SC.S#ANDSC.C#=C2ANDSC.GRADE>

90;

(8)SELECTSNAME,S#,SEXFROMSWHERELIKE'

刘%;

(9)SELECTS#,AVG(GRADE)'

平均成绩’

GROUPBYS#

HAVINGAVG(GRADE)>

80

(10)SELECTSNAME

WHERENOTEXISTS

(SELECT*

FROMC

WHERES#=S.S#ANDC#=C.C#

(11)SELECTSNAME

FROMS,SC

WHERES.S#二SC.S#

GROUPBYSNAME

HAVINGCOUNT(*)>

3

(12)CREATEVIEWSTU_INFOAS

SELECTS.SNO,SNAME,SEXAGEC.CNOCNAMEGRADE

FROMSSCC

WHERES.SNO=SC.SNOANDC.CNO=SC.CNOANDC.CNO=

3、设学生-课程数据库中包括三个表:

学生表:

Student(Sno,Sname,Sex,Sage,Sdept)

课程表:

Course(Cno,Cname,Ccredit)

学生选课表:

SC(Sno,Cno,Grade)

其中Sno、Sname、Sex、Sage、Sdept、Cno、Cname、Ccredit、Grade分别表示学号、姓名、性别、年龄、所在系

名、课程号、课程名、学分和成绩。

试用SQL语言完成下列项操作:

(1)查询选修课程包括“1042”号学生所学的课程的学生学号

(2)创建一个计科系学生信息视图S_CS_VIEW,包括Sno学号、Sname姓名、Sex性别;

(3)通过上面第2题创建的视图修改数据,把王平的名字改为王慧平

(4)创建一选修数据库课程信息的视图,视图名称为datascore_view,包含学号、姓名、成绩。

⑴SELECTDISTINCTSNO

FROMSCSCX

FROMSCSCY

WHERESCY.SNO='

1042'

AND

NOTEXISTS

FROMSCSCZ

WHERESCZ.SNO=SCX.SNOAND

SCZ.CNO=SCY.CNO));

(2)CREATEVIEWS_CS_VIEW

AS

SELECTSNO,SNAME,SEX

FROMSTUDENT

WHERESDEPT='

CS

(3)UPDATES_CS_VIEW

SETSNAME='

王慧平’

WHERESNAME='

王平’

⑷CREATEVIEWDATASCORE_VIEW

SELECTSNO学号、SNAME姓名、GRADE成绩

FROMSTUDENT,SC,COURSE

WHERESTUDENT.SNO=SC.SNO

ANDCOURSE.CNO=SC.CNO

ANDCNAME='

数据库’

1、设有关系模式S-L-C(Sno,Sdept,Sloc,Cno,Grade),其中属性分别表示:

学号、所在系、

学生住处、课程号、成绩。

假定每个系的学生住在同一个地方,每个学生可选修多门课程,每门课程可被多个学生选修,请根据语义写出该关系模式的主码及基本函数依赖,并通过模式分解,使其分解为与之等价的3NF模式集。

答:

主码为(Sno,Cno)。

基本函数依赖:

(Sno,Cno)Grade

P

Sno+Sdept,(Sno,Cno)—Sdept

Snoloc,(Sno,Cno)-PSJoc,SdeptS^oc

分解结果(3NF):

SC(Sno,Cn,Grade)

S-D(Sno,Sdept)

D-L(Sdept,Sloc)

2、已知学生关系模式

S(Sno,SnameSD,SdnameCourse,Grade)

其中:

Sno学号、Sname生名、SD系名、Sdname系主任名、Course课程、Grade成绩。

(1)写出关系模式S的基本函数依赖和主码。

(2)原关系模式S为几范式?

为什么?

分解成高一级范式,并说明为什么?

(3)将关系模式分解成3NF,并说明为什么?

答:

关系模式S的基本函数依赖如下:

SnofSnameSD^SdnameSno^SD,(Sno,Course)fGrade

关系模式S的码为:

(Sno,Course)。

原关系模式S是属于1NF的,码为(Sno.Course),非主属性中的成绩完全依赖于码,而其

它非主属性对码的函数依赖为部分函数依赖,所以不属于2NF。

消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下:

S1(Sno,SnameSD,Sdname)

S2(Sno,Course,Grade)

将上述关系模式分解成3NF如下:

关系模式S1中存在SncfSD,SD^Sdname即非主属性Sdname传递依赖于Sno,所以S1不是

3NF。

进一步分如下:

S11(Sno,Sname,SD)S12(SD,Sdname)

分解后的关系模式S1

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

当前位置:首页 > 初中教育 > 初中作文

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

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