数据库复习题及部分答案.docx
- 文档编号:28625130
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:16
- 大小:29.69KB
数据库复习题及部分答案.docx
《数据库复习题及部分答案.docx》由会员分享,可在线阅读,更多相关《数据库复习题及部分答案.docx(16页珍藏版)》请在冰豆网上搜索。
数据库复习题及部分答案
数据库复习题答案
一、选择题
1.在数据库设计中,将E-R图转换为关系模式的过程属于(C)。
A.需求分析阶段B.概念设计阶段
C.逻辑设计阶段D.物理设计阶段
2.一辆汽车由多个零部件组成,且相同的零部件可适用于不同型号的汽车,则汽车实体集与零部件实体集之间的联系是( D )
A. 1:
1 B. 1:
MC. M:
1 D. M:
N
3.若对于实体集A中的每个实体,实体集B中有n(n>1)与之联系;对以实体集B中的每个实体,实体集A中只有1个实体与之联系,则实体集A和实体集B之间的联系的联系基数是(B)。
A.1:
1B.1:
nC.m:
nD.n:
1
4.在数据库中,产生数据不一致的根本原因是(C)。
A.数据存储量太大B.没有严格保护数据
C.未对数据进行完整性控制D.数据冗余
5.如果关系模式R上有函数依赖AB→C和A→C,则R中存在( B )。
A.完全函数依赖B.部分函数依赖
C.传递函数依赖D.多值依赖
6.SQL语言是一种(B)的语言,易学习和使用。
A.过程化B.非过程化C.格式化D.导航式
7.设有事务T1和T2,其并发操作顺序如下图所示,该并发操作带来的问题是( A )
A.丢失更新B.读“脏数据”C.事务不能提交D.不能重复读
步骤
T1
T2
1
读A=50
2
读A=50
3
A=A*2写回
4
A=A-10写回
5
……
COMMIT
COMMIT
……
8.设有事务T1和T2,其并发操作顺序如下图所示。
该并发操作带来的问题是( C ).
A.丢失更新B.不一致
C.读“脏数据”D.写错误
T1
T2
①READ(A)②A:
=A*2
③WRITE(A)
④
⑤ROLLBACK
READ(A)
8.设有关系R(书号,书名),如果要检索第3个字母为M,且至少包含4个字母的书名,则SQL查询语句中WHERE子句的条件表达式应写成:
书名LIKE( C )
A.'__M_'B.'__M%'C.'__M_%'D.'_%M__'
9.设关系模式R(A,B,C,D,E),及R下成立的函数依赖集F={A→BC,C→D,BC→E,E→A},则分解为R1(ABCE),R2(CD)满足(C)。
A.具有无损连接性、保持函数依赖B.不具有无损连接性、保持函数依赖
C.具有无损连接性、不保持函数依赖D.不具有无损连接性、不保持函数依赖
10.事务的ACID性质中,关于原子性(atomicity)的描述正确的是(C)
A.指数据库的内容不出现矛盾的状态。
B.若事力正常结束,即使发生故障,列新结果也不会从数据库中消失。
C.事务中的所有操作要么都执行,要么都不执行。
D.若多个事务同时进行,与顺序实现的处理结果是一致的。
11.实现关系代数选择运算的SQL子句是(D)
A.SELECTB.ORDERBYC.FROMD.WHERE
12.设有关系模式R(A,B,C),F={A→B,C→B}。
相对于F,R的候选键为(A)
A.ACB.ABCC.ABD.BC
13.已知关系模式R(A,B,C,D,E)及其上的函数相关性集合F={A→D,B→C,E→A},该关系模式的候选关键字是(A)。
A.ABB.BE C.CDD.DE
14.以下关于事务调度和封锁的描述中,正确的是(A)
A.遵守两段封锁协议的并发事务一定是可串行化的
B.可串行化的并发事务一定遵守两段封锁协议
C.遵守两段封锁协议的并发事务不一定是可串行化的
D.遵守两段封锁协议的并发事务一定不会产生死锁
15.设关系模式R(A,B,C),下列结论错误的是(C)。
A.若A→B,B→C,则A→C B.若A→B,A→C,则A→BC
C.若BC→A,则B→A,C→A D.若B→A,C→A,则BC→A
16.在数据库中,下列说法中(A)是不正确的。
A.数据库避免了一切数据的重复
B.若系统是完全可以控制的,则系统可确保更新时的一致性
C.数据库中的数据可以共享
D.数据库减少了数据冗余
17.以下关于E-R图的叙述正确的是(C)。
A.E-R图建立在关系数据库的假设上
B.E-R图使用过程和数据的关系清晰,实体间的关系可导出应用过程的表示。
C.E-R图可将现实世界(应用)中的信息抽象地表示为实体以及实体间的联系
D.E-R图能表示数据生命周期。
18.下列SQL语句中,修改表结构的命令是(A)。
A.ALTERB.CREATEC.UPDATED.INSERT
19.关于日志文件,下列说法错误的是(D)。
A.使用日志文件进行恢复是事务故障和系统故障恢复的主要办法。
B.检查点方法可以提高使用日志文件进行恢复的效率。
C.应该先写数据,后写日志。
D.应该先写日志,后写文件
20.下列聚集函数中不忽略空值(NULL)的是(C)
A.SUM(列名)B.MAX(列名)C.COUNT(*)D.AVG(列名)
21.设关系模式R(X,Y,Z),F={Y→X,Z→X},分解为R1(XY)、R2(YZ),则该分解是( B )
A.是无损联接分解,也保持函数依赖B.是无损联接分解,但不保持函数依赖
C.不是无损联接分解,但保持函数依赖D.既不是无损联接分解,也不保持函数依赖
22.SQL中的“断言”机制用于实现数据库的( A )
A.完整性B.保密性C.并发性D.安全性
23.实现关系代数投影运算的SQL子句是(A)
A.SELECTB.ORDERBYC.FROMD.WHERE
24.SQL语言中,用GRANT/REVOKE语句实现数据库的(D)
A.并发控制B.完整性控制C.一致性控制D.安全性控制
25.对事务回滚的正确描述是(A)。
A.将该事务对数据库的修改进行恢复 B.将事务对数据库的更新写入硬盘
C.跳转到事务程序的开头重新执行 D.将事务中修改的变量值恢复到事务开始时的初值
26.DBS是采用了数据库技术的计算机系统,它是一个集合体,包含数据库、计算机硬件、软件和(C)。
A.系统分析员B.程序员C.数据库管理员D.操作员
27.数据库(DB),数据库系统(DBS)和数据库管理系统(DBMS)之间的关系是(B)。
A.DBS包括DB和DBMSB.DBMS包括DB和DBS
C.DB包括DBS和DBMSD.DBS就是DB,也就是DBMS
28.下面列出的数据库管理技术发展的三个阶段中,没有专门的软件对数据进行管理的是(D)。
I.人工管理阶段II.文件系统阶段 III.数据库阶段
A.I和IIB.只有IIC.II和IIID.只有I
29.下列四项中,不属于数据库系统特点的是(C)。
A.数据共享B.数据完整性C.数据冗余度高D.数据独立性高
30.数据库系统的数据独立性体现在(B)。
A.不会因为数据的变化而影响到应用程序
B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
C.不会因为存储策略的变化而影响存储结构
D.不会因为某些存储结构的变化而影响其他的存储结构
32.要保证数据库的逻辑数据独立性,需要修改的是(C)。
A.模式与外模式的映射B.模式与内模式之间的映射 C.模式D.三层模式
33.用户或应用程序看到的那部分局部逻辑结构和特征的描述是(C),它是模式的逻辑子集。
A.模式B.物理模式C.子模式D.内模式
34.下述(D)不是DBA数据库管理员的职责。
A.完整性约束说明B.定义数据库模式 C.数据库安全D.数据库管理系统设计
36.下述哪个是SQL语言中的数据控制命令(A)。
A.GRANTB.COMMIT C.UPDATED.SELECT
二、填空题(请在每小题的有下划线的空白处填上答案,错填、不填均无分。
)
1.在数据库系统中,存储数据的视图叫物化视图。
2.查询优化中,启发式优化的规则是尽早执行选择运算和尽早执行投影运算。
3.在SQL语言的关系定义语句中,外码定义实现_____完整性约束。
4.事务的所有操作在数据库中要么全部正确反映出来,要么完全不反映,这称为事务ACID特性中的原子性。
5.数据抽象的三个层次包括:
物理层、逻辑层和视图层。
6.空值(NULL)是一个特殊的值,表示值未知或不存在。
7.对关系进行投影、选择、联接运算的结果是___关系_____。
8.两个事务同时在申请对方持有的锁,导致都不能正常执行的情形称为死锁。
9.对于顺序索引和散列索引,在一个范围的值内进行查找,顺序索引效率更高。
10.在基于锁的协议中,如果A类型锁和B类型锁是相容的,则A和B是
共享锁。
11.概念模型是现实世界的第一层抽象,这一类最著名的模型是____E-R_____。
12.区分不同实体的依据是_____属性________。
13.数据库设计中,用E-R图赖描述信息结构但不涉及信息在计算机中的表示,
这是数据库设计的_______概念设计______阶段。
14.在数据库设计中,将E-R图转换成关系数据模型的过程属于____逻辑模式设计_____阶段。
15.子模式DDL是用来描述数据库的_____物理存储______结构。
三、分析简答题
1.假设教学管理规定:
①一个学生可选修多门课,一门课有若干学生选修;
②一个教师可讲授多门课,一门课只有一个教师讲授;
③一个学生选修一门课,仅有一个成绩。
学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。
要求:
(1)根据上述语义画出ER图;
(2)试将ER模型转换成关系模型,并指出每个关系模式的主键和外键。
(该题已多次讲解过,请同学们自行解答)
2.试由Armostrong公理系统推导出下面三条推理规则:
(1)合并规则:
若X→Z,X→Y,则有X→YZ
(2)伪传递规则:
由X→Y,WY→Z有XW→Z
(3)分解规则:
X→Y,Z包含于Y,有X→Z
证:
(1)已知X→Z,由增广律知XY→YZ,又因为X→Y,可得XX→XY→YZ,最后根据传递律得X→YZ。
(2)已知X→Y,据增广律得XW→WY,因为WY→Z,所以XW→WY→Z,通过传递律可知XW→Z。
(3)已知Z包含于Y,根据自反律知Y→Z,又因为X→Y,所以由传递律可得X→Z。
3.假设有下面两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;
部门(部门号,名称,经理名,电话),其中部门号为主码;
用SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:
定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。
答:
(1)CREATETABLEDEPT
(DeptnoNUMBER
(2),
DeptnameVARCHAR(10),
ManagerVARCHAR(10),
PhoneNumberChar(12)
CONSTRAINTPK_SCPRIMARYKEY(Deptno));
(2)CREATETABLEEMP
(EmpnoNUMBER(4),
EnameVARCHAR(10),
AgeNUMBER
(2),
CONSTRAINTC1CHECK(Age《=60),
JobVARCHAR(9),
SalNUMBER(7,2),
DeptnoNUMBER
(2),
CONSTRAINTFK_DEPTNO
FOREIGNKEY(Deptno)
REFERENCESDEPT(Deptno));
4.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:
S(sno,sname,city);
P(pno,pname,color);
J(jno,jname,city);
SPJ(sno,pno,jno,qty)。
其中:
供应商表S由供应商代码sno(长度为6的字符串)、供应商姓名sname(长度为30的可变长字符串)、供应商所在城市city(长度为50的可变长字符串)组成;零件表P由零件代码pno(长度为5的字符串)、零件名pname(长度为30的可变长字符串)、颜色color(长度为6的字符串)组成;工程项目表J由工程项目代码jno(长度为4的字符串)、工程项目名jname(长度为30的可变长字符串)、工程项目所在城市city(长度为10的字符串)组成;供应情况表SPJ由供应商代码sno、零件代码pno、工程项目代码jno、供应数量组成qty(整型)组成,表示某供应商供应某种零件给某工程项目的数量为qty。
请完成以下任务:
(1)写出S、P、J、SPJ四个表的数据定义语句
(2)写出下列查询问题的关系代数表达式
求供应工程号J001零件为红色(red)的供应商号码sno。
(3)写出以下查询SQL语句
①列出天津的供应商的供应商代码和供应商姓名
②列出供应工程J001零件的供应商姓名
③列出供应工程J001零件为红色的供应商号码
(4)设计一个存储过程,通过输入供应商代码和工程项目代码,查询输出供应商姓名、工程项目名、该供应商供应该项目的零件名、供应的零件的数量等信息。
答:
(1)建表
对于S表:
S(SNO,SNAME,STATUS,CITY);
建S表:
CREATETABLES(SNOCHAR(3),SNAMECHAR(10),STATUSCHAR
(2),CITYCHAR(10));
对于P(PNO,PNAME,COLOR,WEIGHT);
建P表:
CREATETABLEP(PNOCHAR(3),PNAMECHAR(10),COLORCHAR(4),WEIGHTINT);
对于J(JNO,JNAME,CITY);
建J表:
CREATETABLEJ(JNOCHAR(3),JNAMECHAR(10),CITYCHAR(10));
对于SPJ(SNO,PNO,JNO,QTY);
建SPJ表:
CREATETABLESPJ(SNOCHAR(3),PNOCHAR(3),JNOCHAR(3),QTYINT);
(2)写查询问题的关系代数表达式
SELECTSNO
FROMSPJ,P
WHEREJNO=‘J1’
ANDSPJ.PNO=P.PNO
ANDCOLOR=‘red’;
对应的关系代数表达式为:
(3)写对应的SQL查询语句
①天津供应商的供应商代码和名称
SELECTSNO,SNAME
FROMS
WHERECITY=‘天津’;
②列出供应工程J001零件的供应商姓名
SELECTSNAME
FROMS,SPJ
WHEREJNO=‘J001’
ANDSPJ.SNO=S.SNO;
③列出供应工程J001零件为红色的供应商号码
SELECTSNO
FROMP,SPJ
WHEREJNO=‘J001’ANDCOLOR=’红’ANDSPJ.PNO=P.PNO;
(4)设计一个存储过程,通过输入供应商代码和工程项目代码,查询输出供应商姓名、工程项目名、该供应商供应该项目的零件名、供应的零件的数量等信息。
createprocedureget_result(@snochar(6),@jnochar(4),@snamevarchar(30)output,@jnamevarchar(30),output,@pnamevarchar(30),output,@qtyintoutput)
as
begin
select@sname=sname
froms
wheresno=@sno
select@jname=jname
fromj
wherejno=@jno
select@pname=pname,@qty=qty
fromP,SPJ
wherep.pno=spj.pnoand@sno=snoand@jno=jno
end
5.建立一个关于系、学生、班级、学会等诸信息的关系数据库。
描述学生的属性有:
学号、姓名、出生年月、系名、班号、宿舍区。
描述班级的属性有:
班号、专业名、系名、人数、入校年份。
描述系的属性有:
系名、系号、系办公室地点、人数。
描述学会的属性有:
学会名、成立年份、地点、人数。
有关语义如下:
一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。
一个系的学生住在同一宿舍区。
每个学生可参加若干学会,每个学会有若干学生。
学生参加某学会有一个入会年份。
请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。
指出各关系的候选码、外部码,有没有全码存在?
答:
(1)各关系模式如下:
学生S(S#,SN,SB,DN,C#,SA)
班级C(C#,CS,DN,CNUM,CDATE)
系D(D#,DN,DA,DNUM)
学会P(PN,DATE1,PA,PNUM)
学生--学会SP(S#,PN,DATE2)
其中,S#—学号,SN—姓名,SB—出生年月,SA—宿舍区
C#—班号,CS—专业名,CNUM—班级人数,CDATE—入校年份
D#—系号,DN—系名,DA—系办公室地点,DNUM—系人数
PN—学会名,DATE1—成立年月,PA—地点,PNUM—学会人数,DATE2—入会年份。
(2)每个关系模式的极小函数依赖集:
S:
S#→SN,S#→SB,S#→C#,C#→DN,DN→SA
C:
C#→CS,C#→CNUM,C#→CDATE,CS→DN,(CS,CDATE)→C#
D:
D#→DN,DN→D#,D#→DA,D#→DNUM
P:
PN→DATE1,PN→PA,PN→PNUM
SP:
(S#,PN)→DATE2
S中存在传递函数依赖:
S#→DN,S#→SA,C#→SA
C中存在传递函数依赖:
C#→DN
(S#,PN)→DATE2和(CS,CDATE)→C#均为SP中的函数依赖,是完全函数依赖
(3)各关系的候选码、外部码及全码情况:
关系候选码外部码全码
SS#C#,无
CC#无无
DD#无无
PPN无无
SP(S#,PN)S#,PN无
6.已知新华书店销售订单的屏幕输出格式如下表所示。
订单编号:
1379465
客户编号:
NC200574
日期:
2005-09-08
客户名称:
新东方学校
客户电话:
65798641
地址:
光华路17号
图书编号
书名
定价
数量
金额
3249786
英语
23.00
100
2300.00
2578964
哲学
25.00
100
2500.00
合计:
4800.00元
书店的业务描述如下:
(1)每一个订单有惟一的订单编号;
(2)一个订单可以订购多种图书,且每一种图书可以在多个订单中出现;
(3)一个订单对应一个客户,且一个客户可以有多个订单;
(4)每一个客户有惟一的客户编号;
(5)每一种图书有惟一的图书编号。
根据上述业务描述和订单格式得到关系模式R:
R(订单编号,日期,客户编号,客户名称,客户电话,地址,图书编号,书名,定价,数量)
问:
(1)写出R的基本函数依赖集。
(2)分析R的候选码及主码。
(3)分析关系模式R可达到的最高范式。
(4)将R分解为一组满足3NF的模式。
解答:
(1)R的基本函数依赖集为:
(订单编号日期,客户编号客户名称,客户编号客户电话,客户编号地址,图书编号书名,图书编号定价,图书编号数量)
(2)关系R的候选码及主码均为:
(订单编号,客户编号,图书编号)
因为,可以计算属性集(订单编号,客户编号,图书编号)的闭包为(订单编号,日期,客户编号,客户名称,客户电话,地址,图书编号,书名,定价,数量)(请同学们计算属性集的闭包)。
所以属性集(订单编号,客户编号,图书编号)是关系模式R的唯一候选码,因而也是主码。
(3)关系模式R最高可达到1NF
因为关系R中的非码属性(日期,客户名称,客户电话,地址,书名,定价,数量)所依赖的属性都是候选码(订单编号,客户编号,图书编号)的一部分,所以R不满足2NF。
而高级范式是低级范式的子集,因而,关系R最高可达到1NF。
(4)将关系R分解为如下3NF
订单关系=(订单编号,日期)
客户关系=(客户编号,客户名称,客户电话,地址)
图书关系=(图书编号,书名,定价,数量)
(请同学们分析分解理由)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 复习题 部分 答案