2022年广州商学院软件工程专业《数据库原理》科目期末试卷A(有答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2022年广州商学院软件工程专业《数据库原理》科目期末试卷A(有答案)
一、填空题
1、使某个事务永远处于等待状态,得不到执行的现象称为______。
有两个或两个以上的事务处于
等待状态,每个事务都在等待其中另一个事务解除封锁,它才能继续下去,结果任何一个事务都
无法执行,这种现象称为______。
2、设某数据库中有作者表(作者号,城市)和出版商表(出版商号,城市),请补全如下查询
语句,使该查询语句能查询作者和出版商所在的全部不重复的城市。
SELECT城市FROM作者表
_____
SELECT城市FROM出版商表;
3、在一个关系R中,若每个数据项都是不可再分割的,那么R一定属于______。
4、“为哪些表,在哪些字段上,建立什么样的索引”这一设计内容应该属于数据库设计中的
______阶段。
5、数据库系统在运行过程中,可能会发生各种故障,其故障对数据库的影响总结起来有两类:
______和______。
6、在SQL Server 2000中,新建了一个SQL Server身份验证模式的登录账户LOG,现希望LOG在数据库服务器上具有全部的操作权限,下述语句是为LOG授权的语句,请补全该语句。
EXEC sp_addsrvrolemember‘LOG’,_____;
7、数据管理技术经历了______________、______________和______________3个阶段。
8、已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,
专业,系编号)两个关系,系关系的主码是______________,系关系的外码是______________,学
生关系的主码是______________,外码是______________。
9、在VB 6.0中,已经用Adobel连接到数据库,并已绑定到数据库中的某个关系表,现要通过
此控件向表中插入数据,需要用到Adobel.Recordset的_____方法和Update方法,使用Adobel.Recordset的_____方法可以使当前行指针在结果集中向前移动一行。
10、数据的安全性是指____________。
二、判断题
11、在关系模式中,候选码可以有多个,主码只能有一个。
()
12、在综合分E-R图时,会出现属性冲突,结构冲突,命名冲突。
()
13、可以用UNION将两个查询结果合并为一个查询结果。
()
14、数据模型的核心构成要素是数据结构。
()
15、求事务在读取数据前先加共享锁,且直到该事务执行结束时才释放相应的锁,这种封锁协议
是二级封锁协议。
()
16、关系中任何一列的属性取值是不可再分的数据项,可取自不同域中的数据。
()
17、SQL语言有嵌入式和交互式两种使用方法。
()
18、在CREATEINDEX语句中,使CLUSTERED来建立簇索引。
()
19、在SELECT语句中,需要对分组情况满足的条件进行判断时,应使用WHERE子句。
()
20、可串行化的调度一定遵守两段锁协议。
()
21、在数据库恢复中,对已完成的事务进行撤销处理。
()
22、DBMS提供授权功能控制不同用户访问数据的权限,主要目的是为了实现数据库的完整性。
()
23、在CREATEINDEX语句中,使CLUSTERED来建立簇索引。
()
24、在SQL中,ALTERTABLE语句中MODIFY用于修改字段的类型和长度等,ADD用于添加
新的字段。
()
25、全码的关系模式一定属于BC范式。
()
三、选择题
26、关系代数中的⋈连接操作由()操作组合而成。
A.σ和π
B.σ和×
C.π、σ和×
D.π和×
27、数据库恢复的基础是利用转储的冗余数据。
这些转储的冗余数据包指()。
A.数据字典、应用程序、审计档案、数据库后援副本
B.数据字典、应用程序、日志文件、审计档案
C.日志文件、数据库后援副本
D.数据字典、应用程序、数据库后援副本
28、数据库管理系统(DBMS)是()。
A.一个完整的数据库应用系统
B.一组硬件
C.一组系统软件
D.既有硬件,也有软件
29、DB、DBS和DBMS三者的关系是()。
A.DB包括DBS和DBMS
B.DBS包括DB和DBMS
C.DBMS包括DB和DBS
D.DBS和DBMS包括DB
30、设E是关系代数表达式,F是选取条件表达式,并且只涉及A1,…,A n属性,则有()。
A.бF(πA1,…,An(E))≡πA1,…,An(бF(E))
B.бF(πA1,…,An(E))≡πA1,…,An(E)
C.бF(πA1,…,An(E))≡πA1(бF(E))
D.πA1,…,An(бF(E))≡πA1,…,An(бF(πA1,…,An,B1,…,Bm (E)))
31、有关系R(X,Y,Z),主键=X;S(W,X),主键W,外键=X,参照R的属性X,关系R和关系S的元组如下所示。
指出关系S中违反关系完整性规则的元组是()。
A.(1,2)B.(2,null)C.(3,3)D.(4,1)
32、在数据库应用系统的需求分析阶段,需要进行性能分析。
下列关于数据库应用系统性能指标的说法错误的是()。
A.数据访问响应时间是指用户向数据库提交数据操作请求到操作结果返回给用户的时间B.系统吞吐量是指在单位时间内系统能存储的数据量
C.并发用户数是指在保证单个用户查询响应时间的前提下,系统最多允许同时访问数据库的用户数量
D.系统性能指标是系统软硬件设计和选型的重要依据
33、关于UML的各种视图及其分类,下列说法错误的是
()。
A.用例图、类图、对象图,组件图和部署图都是静态视图
B.顺序图、交互图、状态图和活动图都是动态视图
C.类图和对象图都是结构视图
D.顺序图、状态图和组件图都是行为视图
34、数据的完整性是指数据的正确性、有效性和()。
A.可维护性B.相容性C.可恢复性D.独立性
35、查询Student表中的所有非空Email信息,以下语句正确的是()。
A.SELECT Email FROM Student WHERE Email!=NULL
B.SELECT Email FROM Student WHERE Email NOT IS NULL
C.SELECT Email FROM Student WHERE Email<>NULL
D.SELECT Email FROM Student WHERE Email IS NOT NULL
36、现有关系模式R(学号,姓名,课程代码,课程名,课程成绩),对其进行分解将其规范化到第三范式,下列()是最正确的规范化结果。
A.R1(学号,姓名)R2(课程代码,课程名,课程成绩)
B.R1(学号,姓名)R2(课程代码,课程名)R3(学号,课程代码,课程成绩)
C.R1(学号,姓名)R2(学号,课程代码,课程名,课程成绩)
D.R1(学号,姓名)R2(课程代码,课程名)R3(课程代码,课程成绩)
37、规范化理论是关系数据库进行逻辑设计的理论依据。
根据这个理论,关系数据库中的关系必须满足:其每一属性都是()。
A.互不相关的 B.不可分解的 C.长度可变的 D.互相关联的
38、如果系统发生死锁,参与死锁的进程的个数至少是()个。
A.3 B.1 C.2 D.4
39、用于实现数据存取安全性的SQL语句是()。
A.CREATE TABLE
B.COMMIT
C.GRANT和REVOKE
D.ROLLBACK
40、数据仓库的模式中,最基本的是()。
A.星座模式
B.雪花模式 C.星型模式
D.以上都不对
41、维@@2、…、维n,度量),不含度量的多维数组是不能用于多维分析的。
2、联机分析处理包括以下()基本分析功能。
Ⅰ.聚类Ⅱ.切片Ⅲ.转轴Ⅳ.切块
A.Ⅰ、Ⅱ并Ⅲ B.Ⅰ、Ⅱ和Ⅳ C.Ⅱ、Ⅲ和Ⅳ D.都是
四、简答题
42、简述E-R模型、层次模型、网状模型、关系模型和面向对象模型各有哪些优缺点?
43、证明:
(1)如果R是BCNF关系模式,则R是3NF关系模式,反之则不然。
(2)如果R是3NF关系模式,则R一定是2NF关系模式。
44、什么是NewSQL,查询相关资料,分析NewSQL是如何融合NoSQL和RDBMS两者的优势的。
45、试述常用的意向锁:IS锁、IX锁、SIX锁,给出这些锁的相容矩阵。
46、为什么事务非正常结束时会影响数据库数据的正确性?请举例说明之。
五、综合题
47、请给出缓冲区管理中的一个淘汰算法。
48、请写出对一个文件按某个属性的排序算法(设该文件的记录是定长的),并上机实现。
若要按多个属性排序,能否写出改进的算法?
49、在上题的教学数据库S、SC和C中,用户有一查询语句:检索女同学选修课程的课程名和任课教师名。
(1)画出该查询初始的关系代数表达式的语法树。
(2)使用优化算法,对语法树进行优化,并画出优化后的语法树。
参考答案
一、填空题
1、【答案】活锁;死锁
2、【答案】EXCEPT
【解析】EXCEPT语句的作用是查询两个数据表中除“公共”数据以外的数据信息,即查询两个数据表中的“除外”数据信息。
使用EXCEPT运算符可以实现集合差操作,从左查询中返回右查询没有找到的所有非重复值。
3、【答案】1NF
4、【答案】物理设计
5、【答案】数据库本身未被破坏;数据库处于不一致状态
6、【答案】dbowner
【解析】在SQL Server中,dbonwer具有数据库服务器上的全部权限。
7、【答案】人工管理;文件系统;数据库系统
8、【答案】系编号;无;学号;系编号
9、【答案】AddNew;MovePrevious
【解析】Recordset对象中的AddNew方法可以用来在结果集里添加一个新记录。
MovePrevious方法用来将当前行记录指针向前移动一行。
10、【答案】保护数据库,防止未经授权或不合法的使用造成的数据泄漏、更改或破坏
二、判断题
11、【答案】对
12、【答案】对
13、【答案】对
14、【答案】对
15、【答案】错
16、【答案】错
17、【答案】对
18、【答案】对
19、【答案】错
20、【答案】错
21、【答案】错
22、【答案】错
23、【答案】对
24、【答案】错
25、【答案】对
三、选择题
26、【答案】B
【解析】连接又称为θ连接。
它是从关系R和S的笛卡尔积中选取属性值之间满足一定条件的元组。
因此,该运算首先计算R和S的笛卡尔积,然后再从得到的结果集合中选择属性值之间满足一定条件的元组。
该运算得到结果是R和S的笛卡尔积的子集,其关系模式同R和S的笛卡尔积一样。
27、【答案】C
【解析】数据库恢复的实现技术主要是建立冗余并利用冗余数据实施数据库恢复。
建立冗余最常
见的技术是数据转储和登录日志文件。
28、【答案】C
【解析】DBMS是一个以统一方法管理、维护数据库数据的一系列软件的集合。
29、【答案】B
【解析】数据库系统(DBS DataBase System)数据库系统是一个引入数据库以后的计算机系统,它由计算机硬件(包括计算机网络与通信设备)及相关软件(主要是操作系统)、数据库(DB DataBase)、数据库管理系统(DBMS DataBase Management System)、数据库应用开发
系统和人员组成。
30、A
31、【答案】C
【解析】关系完整性有三类:实体完整性、参照完整性和用户自定义的完整性。
其中参照完整性
保证当数据与数据之间有联系时,这种联系造成数据取值的制约。
参照完整性规则是:若属性
(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对。
对于S关系而言,X是该关系的外码,它与R关系的主码X相对应。
根据参照完整性规则,S关
系中X的取值或者取空值或者等于R中X的某个分量值。
因此,S关系中X的分量值为3这一元组就是违背参照完整性规则的元组。
32、【答案】B
【解析】性能需求分析主要包含:①数据操作响应时间,指用户向数据库系统提交数据操作请求
到返回用户操作结果的时间;②系统吞吐量,指系统在单位时间内可以完成的数据库事务或数据
查询的数量。
系统吞吐量可表示为每秒事务数TPS;③允许并发访问的最大用户数,指在保证单
个用户查询响应时间的前提下,系统最多允许多少用户同时访问数据库;④每TPS代价值
(Price per TPS),用于衡量系统性价比的指标。
33、【答案】D
【解析】UML视图共有9种,主要分为两类:静态图和动态图,其中:
①静态图:用例图、类图、对象图、组件图、部署图。
②动态图:顺序图、交互图、状态图、活动图。
根据它们在不同视图的应用可以分为五类:
①用例视图:用例图。
②结构视图:类图、对象图。
③行为视图:顺序图、活动图、交互图、状态图。
④实现视图:组件图。
⑤环境视图:部署图。
D项错误,组件图属于实现视图而不是行为视图。
34、【答案】B
【解析】数据模型应该反映数据模型必须遵守的基本的通用的完整性约束条件。
完整性规则是给定的数据模型中数据及其联系具有的制约和依存规则,用以限定符合数据模型的数据库状态及状态的变化,以保证数据的正确、有效和相容。
35、【答案】D
【解析】在数据库T-SQL语句中,WHERE子句表示条件,用IS NULL来表示空的记录,IS NOT NULL表示非空信息。
36、【答案】B
【解析】如果一个关系模式R属于第一范式,且每个非主属性既不部分依赖于码又不传递依赖于码,则这个关系属于第三范式。
同时在对关系进行规范化的过程中,对于关系的分解不是随意而为的,需要考虑新关系与原关系在数据上的等价、在依赖上的等价,甚至是在数据和依赖上都等价,否则就很可能达不到规范化目的。
A项中的分解,R1(学号,姓名)达到3NF要求,R2(课程代码,课程名,课程成绩)也达到3NF要求,但是它们与原关系R在数据上不能等价,在依赖上也不等价,因而不是最正确的规范化结果。
C项中的分解,R1(学号,姓名)达到3NF要求,R2(学号,课程代码,课程名,课程成绩)中由于存在:课程代码一课程名,即非码属性对码的部分依赖,因此,该R2只达到1NF要求,没有达到2NF要求,当然也就没有达到3NF要求。
D项中的分解,R1(学号,姓名)达到3NF要求,R2(课程代码,课程名),R3(课程代码,课程成绩)也都达到3NF要求,但是它们与原关系R在数据上不能等价,在依赖上也不等价,因而不是最正确的规范化结果。
只有B项的分解,R1(学号,姓名),R2(课程代码,课程名), R3(学号,课程代码,课程成绩)都达到3NF要求,同时分解后的关系与原关系在数据和依赖上都等价,因而是最正确的规范化结果。
37、【答案】B
【解析】规范化的最低要求是每个关系至少是1NF,即它的每个属性是最小的、不可再分的数据单位。
38、【答案】C
【解析】由于各进程互相独立地活动,不断申请和释放软硬件资源,可能会出现这样一种状态:两个或两个以上的进程彼此等待对方拥有的而又不会释放的资源,则所有进程都不能进一步向前运行,这种状态就称为死锁。
因此,参与死锁的进程至少是两个。
39、【答案】C
【解析】CREATE TABLE是建立基表的语句;COMMIT是提交事务的语句;ROLLBACK是回滚事务的语句;GRANT是授权语句,
REVOKE是回收权限的语句。
40、【答案】C
41、【答案】C
【解析】考查联机分析处理OLAP的基本概念,联机分析处理包括的基本分析功能有:切片、切块、钻取、转轴。
四、简答题
42、答:(1)E-R模型的优缺点
①优点:接近于人的思维,容易理解;与计算机无关,用户容易接受。
其缺点是:只能说明实体
间语义的联系,不能进一步说明详细的数据结构。
层次模型的优点是:结构清晰,表示各结点之
间联系的方式简单;容易表示如“家族关系”等现实世界的层次结构的事物及其之间的联系。
②缺点:不能表示两个以上实体型之间的复杂联系和实体型之间的多对多联系;严格的层次顺序
使数据插入和删除操作变得复杂,如父结点的删除导致子结点的删除。
(2)网状模型的优缺点
①优点:能够表示实体之间的多种复杂联系;具有良好的性能,存取效率高。
②缺点:网状模型比较复杂,需要程序员熟悉数据库的逻辑结构;在重新组织数据库时容易失去
数据独立性。
(3)关系模型的优缺点
①优点:使用表的概念,简单直观;直接表示实体之间的多对多联系:具有更好的数据独立性;
具有坚实的理论基础。
②缺点:关系模型的连接等操作开销较大,需要较高性能计算机的支持。
(4)面向对象模型的优缺点
①优点:能够完整描述现实世界的数据结构,具有丰富的表达能力,能表达嵌套、递归的数据结构。
②缺点:涉及的知识面较广,用户较难理解。
43、证明:(1)用反证法:设R是一个BCNF,但不是3NF,则必存在非主属性A和候选码x
以及属性集y,使得x→y,y→A,其中A→x,
A→y,y→x不在函数依赖中,这就是说y不可能包含R的码,但y→A却成立。
根据BCNF定义,R不是BCNF,与题设矛盾,所以一个BCNF范式必是3NF。
(2)反证法:假设R中非主属性A部分依赖于关键字K,则存在K′是 K的子集,使得K′→A,因K′是K的子集有K→K′,但K′↛K,于是有K→K′,K′↛K,K′→A,并且A不属于K,因而A传递以来于K,即R不属于3NF,与已知矛盾,所以一个3NF一定是2NF。
44、答:(1)NewSQL系统是融合了NoSQL系统和传统数据库事务管理功能的新型数据库系统。
(2)NewSQL将SQL和NoSQL的优势结合起来,充分利用计算机硬件的新技术、新结构,研究与开发了若干创新的实现技术。
45、答:(1)如果对一个数据对象加IS锁,表示它的后裔结点拟加S 锁。
例如,要对某个元组加S锁,则要首先对关系和数据库加IS锁。
(2)如果对一个数据对象加IX锁,表示它的后裔结点拟加X锁。
例如,要对某个元组加X锁,则要首先对关系和数据库加IX锁。
(3)如果对一个数据对象加SIX锁,表示对它加S锁,再加IX锁,即SIX=S+IX。
46、答:(1)事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。
如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做的修改有一部分已写入物理数据库,这时数据库就处于一种不正确的状态,或者说是不一致的状态。
(2)例如某工厂的库存管理系统中,要把数量为Q的某种零件从仓库1移到仓库2存放。
则可以定义一个事务T,T包括两个操作:Q1=Q1 -Q,Q2=Q2+Q。
如果T非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。
五、综合题
47、答:借助队列实现LRU页面替换算法作为缓冲区管理的淘汰算法。
定义缓冲区的数据结构如下:
完整的参考代码如下:
48、答:(1)使用败者树实现多路归并的外部排序算法,对文件按某个属性进行排序。
(2)若要按多个属性排序,可以采用基数排序算法。
实现方法有:①最高位优先(Most Significant Digit first)法,简称 MSD法。
先按k1排序分组,同一组中记录,关键码k1相等,再对各组按 k2排序分成子组,之后,对后面的关键码继续这样的排序分组,直到按最次位关键码kd对各子组排序后。
再将各组连接起来,便得到一个有序序列。
②最低位优先(Least Significant Digit first)法,简称LSD法:先从kd开始排序,再对kd-1进行排序,依次重复,直到对k1排序后便得到一个有序序列。
49、答:(1)该查询对应的初始的关系代数表达式的语法树如图所示。
语法树
(2)该关系代数表达式优化后的语法树如图所示。