数据库期末考试复习题及答案填空简答.docx
《数据库期末考试复习题及答案填空简答.docx》由会员分享,可在线阅读,更多相关《数据库期末考试复习题及答案填空简答.docx(75页珍藏版)》请在冰点文库上搜索。
数据库期末考试复习题及答案填空简答
得分
二、填空题
(本大题共9小题,每空1分,共10分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
1.关系数据模型由关系数据结构、关系操作和关系完整性约束三部分组成。
关系数据结构,关系操作,关系完整性约束
2.一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的属性属性
3.在Student表的Sname列上建立一个唯一索引的SQL语句为:
CREATEUNIQUEINDEXuniqueindexStusnameONstudent(Sname)
4.SELECT语句查询条件中的谓词“!
=ALL”与运算符NOTIN等价
5.关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A→D,(B,C)→A},则侯选码是A和(B,C),R∈3NF。
6.分E-R图之间的冲突主要有属性冲突、命名冲突、结构冲突三种。
7.事物是DBMS的基本单位,是用户定义的一个数据库操作序列。
8.存在一个等待事务集{T0,T1,…,Tn},其中T0正等待被T1锁住的数据项,T1正等待被T2锁住的数据项,Tn-1正等待被Tn锁住的数据项,且Tn正等待被T0锁住的数据项,这种情形称为死锁。
9.可串行性是并发事务正确性的准则。
得分
三、简答题
(第1、3题3分,第2题4分,共10分)
1.试述关系模型的参照完整性规则?
答:
参照完整性规则:
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
取空值(F的每个属性值均为空值)或者等于S中某个元组的主码值。
2.试述视图的作用?
(1)视图能够简化用户的操作。
(1分)
(2)视图使用户能以多种角度看待同一数据。
(1分)
(3)视图对重构数据库提供了一定程度的逻辑独立性。
(1分)
(4)视图能够对机密数据提供安全保护。
(1分)
3.登记日志文件时必须遵循什么原则?
登记日志文件时必须遵循两条原则:
(1)登记的次序严格按并发事务执行的时间次序。
(1分)
(2)必须先写日志文件,后写数据库。
(2分)
得分
四、设计题
(第1题4分,第2题6分,第3题3分,第4题4分,
第5题8分,共25分)
1.设教学数据库中有三个基本表:
学生表S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。
课程表C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。
选修表SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。
有如下SQL查询语句:
SELECTCNO
FROMC
WHERECNONOTIN
(SELECTCNO
FROMS,SC
WHERES.SNO=SC.SNO
ANDSNAME='张三');
请完成下列问题:
(1)用汉语句子阐述上述SQL语句的含义;
(2)用等价的关系代数表达式表示上述SQL查询语句。
解:
(1)查询张三同学没有选修的课程的课程号。
(2分)
(2)πCNO(C)-πCNO(SNAME='张三'(S)
SC)或
πCNO(C)-πCNO(SNAME='张三'(S
SC))(2分)
2.设有如图3所示的三个关系。
其中各个属性的含义如下:
A#(商店代号)、ANAME(商店名)、WQTY(店员人数)、CITY(所在城市)、B#(商品号)、BNAME(商品名称)、PRICE(价格)、QTY(商品数量)。
AB
A#
ANAME
WQTY
CITY
101
韶山商店
15
长沙
204
前门百货商店
89
北京
256
东风商场
501
北京
345
铁道商店
76
长沙
620
第一百货公司
413
上海
B#
BNAME
PRICE
1
毛笔
21
2
羽毛球
784
3
收音机
1325
4
书包
242
AB
A#
B#
QTY
101
1
105
101
2
42
101
3
25
101
4
104
204
3
61
256
1
241
256
2
91
345
1
141
345
2
18
345
4
74
620
4
125
图3
试用SQL语言写出下列查询:
(1)找出店员人数不超过100人或者在长沙市的所有商店的代号和商店名。
(2)找出至少供应了代号为’256’的商店所供应的全部商品的其它商店的商店名和所在城市。
解:
(1)SELECTA#,ANAMEFROMA
WHEREWQTY<=100ORCITY='长沙';(2分)
(2)SELECTANAME,CITYFROMA
WHERENOTEXISTS
(SELECT*FROMB
WHEREEXISTS
(SELECT*FROMABAB1
WHEREA#='256'ANDB#=B.B#)
ANDNOTEXISTS
(SELECT*FROMABAB2
WHEREA#!
='256'ANDA#=A.A#ANDB#=B.B#)
);(4分)
3.设有职工基本表:
EMP(ENO,ENAME,AGE,SEX,SALARY),其属性分别表示职工号、姓名、年龄、性别、工资。
为每个工资低于1000元的女职工加薪200元,试写出这个操作的SQL语句。
UPDATEEMP
SETSALARY=SALARY+200
WHERESALARY<1000ANDSEX='女';(3分)
4.设某工厂数据库中有两个基本表:
车间基本表:
DEPT(DNO,DNAME,MGR_ENO),其属性分别表示车间编号、车间名和车间主任的职工号。
职工基本表:
ERP(ENO,ENAME,AGE,SEX,SALARY,DNO),其属性分别表示职工号、姓名、年龄、性别、工资和所在车间的编号。
建立一个有关女车间主任的职工号和姓名的视图,其结构如下:
VIEW6(ENO,ENAME)。
试写出创建该视图VIEW6的SQL语句。
参考答案1:
CREATEVIEWVIEW6
AS
SELECTENO,ENAMEFROMEMP
WHERESEX='女'ANDENOIN
(SELECTMGR_ENOFROMDEPT)
参考答案2:
CREATEVIEWVIEW6
AS
SELECTENO,ENAMEFROMDEPT,EMP
WHEREMGR_ENO=ENOANDSEX='女'(4分)
5.设有关系R和函数依赖F:
R(A,B,C,D,E),F={ABC→DE,BC→D,D→E}。
试求下列问题:
(1)关系R的侯选码是什么?
R属于第几范式?
并说明理由。
(3分)
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
(5分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
(1)关系R的候选码是(A,B,C),R∈1NF,因为R中存在非主属性D,E对候选码(A,B,C)的部分函数依赖。
(3分)
(2)首先消除部分函数依赖
将关系分解为:
R1(A,B,C)(A,B,C)为候选码,
R1中不存在非平凡的函数依赖
R2(B,C,D,E),(B,C)为候选码,
R2的函数依赖集为:
F2={(B,C)→D,D→E}
在关系R2中存在非主属性E对候选码(B,C)的传递函数依赖,所以将R2进一步分解:
R21(B,C,D),(B,C)为候选码,
R21的函数依赖集为:
F21={(B,C)→D}
R22(D,E),D为候选码,
R22的函数依赖集为:
F22={D→E}
在R1中已不存在非平凡的函数依赖,在R21、R22关系模式中函数依赖的决定因素均为候选码,所以上述三个关系模式均是BCNF。
得分
五、综合题(15分)
某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。
工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。
(1)根据上述语义画出E-R图;(5分)
(2)将该E-R模型转换为关系模型;(5分)
(要求:
1:
1和1:
n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。
(5分)
(1)本题的E-R图如下图所示。
(2)转化后的关系模式如下:
工厂(工厂编号,厂名,地址)
产品(产品编号,产品名,规格)
职工(职工号,姓名,工厂编号,聘期,工资)
生产(工厂编号,产品编号,计划数量)
(3)每个关系模式的主码、外码如下:
工厂:
主码是工厂编号,无外码;
产品:
主码是产品编号,无外码;
职工:
主码职工号,外码是工厂编号;
生产:
主码是(工厂编号,产品编号),
外码是工厂编号、产品编号。
试题二
得分
得分
二、填空题
(本大题共7小题,每空1分,共10分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
1.关系数据库的实体完整性规则规定基本关系的主码都不能取空。
2.在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码是D,则D在A中称为外键。
3.SQL语言中,用于授权的语句是___grant______。
4.关系R与S的交可以用关系代数的5种基本运算表示为s-(s-r)。
5.数据库系统中最重要的软件是数据库管理系统,最重要的用户是DBA
6.数据库设计分为以下六个设计阶段:
需求分析阶段、概念模型设计、逻辑结构设计阶段、物理结构设计、数据库实施阶段、数据库运行和维护阶段。
7.已知关系R(A,B,C,D)和R上的函数依赖集F={A→CD,C→B},则
R∈2NF。
得分
三、简答题
(本大题共3小题,第1题4分,第2、3题各3分,
共10分)
1.试述数据、数据库、数据库管理系统、数据库系统的概念。
2.说明视图与基本表的区别和联系。
3.数据库系统的故障有哪些类型?
得分
四、设计题
(第1题15分,第2题10分,共25分)
1.设有一个工程供应数据库系统,包括如下四个关系模式:
●S(SNO,SNAME,STATUS,CITY);
●P(PNO,PNAME,COLOR,WEIGHT);
●J(JNO,JNAME,CITY);
●SPJ(SNO,PNO,JNO,QTY);
供应商表S由供应商号、供应商名、状态、城市组成;
零件表P由零件号、零件名、颜色、重量组成;
工程项目表J由项目号、项目名、城市组成;
供应情况表SPJ由供应商号、零件号、项目号、供应数量组成;
(1)用关系代数查询没有使用天津供应商生产的红色零件的工程号;(3分)
(2)用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO;
(3分)
(3)用SQL查询供应工程J1零件为红色的工程号JNO;(2分)
(4)用SQL查询没有使用天津供应商生产的零件的工程号;(3分)
(5)用SQL语句将全部红色零件改为蓝色;(2分)
(6)用SQL语句将(S2,P4,J6,400)插入供应情况关系。
(2分)
2.设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),(S#,CNAME)为候选码,设关系中有如下函数依赖:
(S#,CNAME)→SNAME,SDEPT,MNAME
S#→SNAME,SDEPT,MNAME
(S#,CNAME)→GRADE
SDEPT→MNAME
试求下列问题:
(1)关系STUDENT属于第几范式?
并说明理由。
(3分)
(2)如果关系STUDENT不属于BCNF,请将关系STUDENT逐步分解为巧
BCNF。
(7分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
(1)关系STUDENT是1NF,因为F中存在非主属性SNAME,SDEPT,MNAME对侯选码(S#,CNAME)的部分函数依赖。
(2)
①首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME将关系分解为:
R1(S#,SNAME,SDEPT,MNAME),S#为候选码,
R1的函数依赖集为:
F1={S#→SNAME,SDEPT,MNAME,SDEPT→MNAME}
R2(S#,CNAME,GRADE),S#为候选码,
R2的函数依赖集为:
F2={(S#,CNAME)→GRADE}
②在关系R1中存在非主属性MNAME对候选码S#的传递函数依赖S#→MNAME,所以将R1进一步分解:
R11(S#,SNAME,SDEPT),S#为候选码,
R11的函数依赖集为:
F11={S#→SNAME,SDEPT}
R12(SDEPT,MNAME),SDEPT为候选码,
R12的函数依赖集为:
F12={SDEPT→MNAME}
在R2、R11、R12关系模式中函数依赖都是非平凡的,并且决定因素均是候选码,所以上述三个关系模式均是BCNF。
得分
五、综合题(15分)
某企业集团有若干工厂,每个工厂生产多种产品,且每一种产品可以在多个工厂生产,每个工厂按照固定的计划数量生产产品;每个工厂聘用多名职工,且每名职工只能在一个工厂工作,工厂聘用职工有聘期和工资。
工厂的属性有工厂编号、厂名、地址,产品的属性有产品编号、产品名、规格,职工的属性有职工号、姓名。
(1)根据上述语义画出E-R图;(5分)
(2)将该E-R模型转换为关系模型;(5分)
(要求:
1:
1和1:
n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。
(5分)
试题二
参考答案与评分标准
一、选择题(每题2分)
1.D2.C3.D4.A5.B6.D7.C8.B9.C10.B
11.C12.D13.A14.D15.C16.B17.B18.A19.C20.A
二、填空题(每空1分)
1.主属性空值(或NULL)2.外码3.GRANT
4.R-(R-S)5.数据库管理系统(或DBMS)数据库管理员(或DBA)6.概念结构设计阶段物理结构设计阶段7.2
三、简答题(本大题共3小题,第1题4分,
第2、3题各3分,共10分)
1、参考答案:
答:
数据:
描述事物的符号记录。
(1分)
数据库:
长期存储在计算机内的、有组织的、可共享的数据集合。
(1分)
数据库管理系统:
是位于用户与操作系统之间的具有数据定义、数据操纵、数据库的运行管理、数据库的建立和维护功能的一层数据管理软件。
(1分)
数据库系统:
在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
(1分)
评分标准:
四个基本概念各1分,意思表达正确即可给分。
2、参考答案:
答:
视图是从一个或几个基本表导出的表,它与基本表不同,是一个虚表,数据库中只存放视图的定义,而不存放视图对应的数据,这些数据存放在原来的基本表中,当基本表中的数据发生变化,从视图中查询出的数据也就随之改变(2分)。
视图一经定义就可以像基本表一样被查询、删除,也可以在一个视图之上再定义新的视图,但是对视图的更新操作有限制(1分)。
评分标准:
意思表达正确即可给分。
3、参考答案:
答:
故障主要有下面三种类型:
(1)事务故障(1分)
(2)系统故障(1分)
(3)介质故障(1分)
评分标准:
关键字“事务”、“系统”、“介质”中有错别字一律该项不给分。
四、设计题
1、
(1)参考答案:
πJNO(J)-πJNO(CITY='天津'(S)
SPJ
COLOR='红'(P))
(2)参考答案:
πPNO,JNO(SPJ)÷πPNO(SNO='S1'(SPJ))
(3)
参考答案1:
SELECTDISTINCTJNO
FROMSPJ,P
WHERESPJ.PNO=P.PNOAND
COLOR='红'AND
JNO='J1';
参考答案2:
SELECTDISTINCTSNO
FROMSPJ
WHEREJNO='J1'AND
PNOIN
(SELECTPNO
FROMP
WHERECOLOR='红');
(4)
参考答案1:
SELECTJNO
FROMJ
WHEREJNONOTIN
(SELECTJNO
FROMSPJ
WHERESNOIN
(SELECTSNO
FROMS
WHERECITY='天津'));
参考答案2:
SELECTJNO
FROMJ
WHERENOTEXISTS
(SELECT*
FROMSPJ,S
WHERESPJ.SNO=S.SNOAND
SPJ.JNO=J.JNOAND
CITY='天津');
参考答案3:
SELECTJNO
FROMJ
WHERENOTEXISTS
(SELECT*
FROMSPJ
WHERESPJ.JNO=J.JNOANDEXISTS
(SELECT*
FROMS
WHERES.SNO=SPJ.SNOAND
CITY='天津'));
(5)参考答案:
UPDATEPSETCOLOR='蓝'WHERECOLOR='红';
(6)参考答案:
INSERTINTOSPJVALUES('S2','P4','J6',400);
2、参考答案:
评分标准:
(1)正确指明R∈1NF(1分);正确说明R∈1NF的理由(2分)。
(2)首先正确将R分解为R1(S#,SNAME,SDEPT,MNAME)(2分)和R2(S#,CNAME,GRADE)(1分),再将R1正确分解为R11(S#,SNAME,SDEPT)(2分)和R12(SDEPT,MNAME)(2分),分解过程的叙述斟情扣分。
五、综合题
参考答案:
(1)本题的E-R图如下图所示。
(2)转化后的关系模式如下:
工厂(工厂编号,厂名,地址)
产品(产品编号,产品名,规格)
职工(职工号,姓名,工产编号,聘期,工资)
生产(工产编号,产品编号,计划数量)
(3)每个关系模式的主码、外码如下:
工厂:
主码是工产编号;
产品:
主码是产品编号;
职工:
职工号,外码是工厂编号;
生产:
主码是(工产编号,产品编号),
外码是工产编号、产品编号。
试题三
得分
阅卷人
复查人
二、填空题
(本大题共10小题,每小题1分,共10分)
请在每小题的空格中填上正确答案。
错填、不填均无分。
1.数据库系统的三级模式结构是指数据库系统由外模式、模式和内模式三级构成。
2.在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码是D,则D在S中称为外码。
3.关系操作的特点是集合操作。
4.已知学生关系(学号,姓名,年龄,班级),要检索班级为空值的学生姓名,其SQL查询语句中WHERE子句的条件表达式是班级isnull。
5.集合R与S的连接可以用关系代数的5种基本运算表示为。
6.SELECT语句查询条件中的谓词“=ANY”与运算符in等价。
7.在数据库中,只存放视图的定义,不存放视图对应的数据。
8.“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的物理设计阶段。
9.并发控制的主要方法是封锁机制。
10.已知关系R(A,B,C,D)和R上的函数依赖集F={A→CD,C→B},R属于第2范式。
得分
阅卷人
复查人
四、设计题
(第1题4分,第2、3、4题各8分,共28分)
1.设有学生选课关系SC(学号,课程号,成绩),试用SQL语句检索每门课程的最高分。
SELECT课程号,MAX(成绩)FROMSCGROUPBY课程号
2.关系模式如下:
商品P(PNO,PN,COLOR,PRICE)
商店S(SNO;SN,CITY)
销售SP(PNO,SNO,QTY)
分别用关系代数和SQL写出查询语句:
查询销售商品"TV”的商店名SN。
selectsnfromswheresno
In
(select)
3.设有关系R和S如图2所示。
RS
A
B
a1
b1
a2
b2
a3
b3
A
C
a1
40
a2
50
a3
55
试用SQL语句实现:
(1)查询属性C>50时,R中与相关联的属性B之值。
(3分)
(2)当属性C=40时,将R中与之相关联的属性B值修改为b4。
(5分)
4.设有关系R和函数依赖F:
R(W,X,Y,Z),F={X→Z,WX→Y}。
试求下列问题:
(1)关系R属于第几范式?
(3分)
(2)如果关系R不属于BCNF,请将关系R逐步分解为BCNF。
(5分)
要求:
写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
(1)R是1NF。
侯选码为WX,则Y,Z为非主属性,又由于X→Z,因此F中存在非主属性对侯选码的部分函数依赖。
(2)将关系分解为:
R1(W,X,Y),F1={WX→Y}
R2(X,Z),F2={X→Z}
消除了非主属性对码的部分函数依赖。
F1和F2中的函数依赖都是非平凡的,并且决定因素是候选码,所以上述关系模式是BCNF。
得分
阅卷人
复查人
五、综合题(15分)
某医院病房管理系统中,包括四个实体型,分别为:
科室:
科名,科地址,科电话
病房:
病房号,病房地址
医生:
工作证号,姓名,职称,年龄
病人:
病历号,姓名,性别
且存在如下语义约束:
①一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室;
②一个医生可负责多个病人的诊治,一个病人的主管医生只有一个;
③一个病房可入住多个病人,一个病人只能入住在一个病房。
注意:
不同科室可能有相同的病房号。
完成如下设计:
(1)画出该医院病房管理系统的E-R图;(5分)
(2)将该E-R图转换为关系模型;(5分)
(要求:
1:
1和1:
n的联系进行合并)