image

编辑人: 独留清风醉

calendar2025-07-07

message1

visits241

2021年5月数据库系统工程师上午题答案及解析

一、单选题

1、在CPU中,用(1) 给出将要执行的下条指令在内存中的地址。

A、程序计数器

B、指令寄存器

C、主存地址寄存器

D、状态条件寄存器

解析:

在CPU中,程序计数器用于给出将要执行的下条指令在内存中的地址。当程序顺序执行时,每取出一条指令,PC(程序计数器)内容自动增加一个值,指向下一条要取的指令。因此,答案为A。指令寄存器一般用来保存当前正在执行的一条指令;地址寄存器用于保存CPU所访问的内存单元的地址;状态寄存器用于记录运算中产生的标志信息,这些标志位可以作为条件转移指令的转移条件。

2、以下关于RISC和CISC计算机的叙述中,正确的是(2)

A、RISC不采用流水线技术,CISC采用流水线技术

B、RISC使用复杂的指令,CISC 使用简单的指令

C、RISC采用很少的通用寄存器,CISC采用很多的通用寄存器

D、RISC采用组合逻辑控制器,CISC普遍采用微程序控制器

解析:

RISC(精简指令集计算机)通常采用组合逻辑控制器,而CISC(复杂指令集计算机)则普遍采用微程序控制器。因此,选项D是正确的。其他选项的描述与RISC和CISC的特点不符。

3、采用DMA方式传送数据时,每传送个数据都需要占用一个(3)。

A、指令周期

B、总线周期

C、存储周期

D、机器周期

解析:

采用DMA方式传送数据时,数据在内存和设备之间直接进行交换,每传送一个数据都需要占用一个存储周期。因此,正确答案为C。指令周期、机器周期和总线周期与DMA传送数据的方式不直接相关。

4、若磁盘的转速提高一倍,则(4)。

A、平均存取时间减半

B、平均寻道时间加倍

C、旋转等待时间减半

D、数据传输速率加倍

解析:

磁盘的转速提高一倍时,旋转等待时间会减半,这是因为转速提高意味着磁盘每秒钟能够完成更多的旋转周期,从而减少了等待数据到达指定位置的时间。平均存取时间是平均寻道时间和旋转等待时间的总和,而平均寻道时间与磁盘转速没有直接关系,因此选项A和B都是错误的。数据传输速率与磁盘转速并不是简单的倍数关系,它还受到其他因素的影响,如磁盘控制器和系统的性能等,因此选项D也是错误的。

5、一个栈的输入序列为12.3.4,5,不可能得到的输出序列是(5).

A、2,3,4,1,5

B、5.4.1.3.2

C、2,3,1,4.5

D、1.5.4.3.2

解析:

栈是一种后进先出(LIFO)的数据结构,这意味着最后一个进入栈的元素将是第一个离开栈的元素。对于输入序列12.3.4,5,我们可以分析每个选项的出栈序列:

A选项:2,3,4,1,5。这是可能的,因为2是第一个进入的元素,所以它可以在任何后续元素之前出栈。接着,3、4、1依次进入并立即出栈,最后5作为最后一个进入的元素,最后出栈。

B选项:5,4,1,3,2。这个序列是不可能的,因为5是最后一个进入栈的元素,它应该是最后一个出栈的元素。但是在这个序列中,1在3和2之前出栈,这与栈的工作原理相矛盾。

C选项和D选项的出栈序列也是可能的,符合栈的后进先出原则。

因此,不可能得到的输出序列是B选项。

6、(6) 算法是不稳定的排序算法。

A、简单选择

B、冒泡

C、直接插入

D、归并排序

解析:

简单选择排序是不稳定的排序算法。在排序过程中,相同元素的位置可能会发生变化,因此不满足稳定性的定义。冒泡排序、直接插入排序和归并排序是稳定的排序算法。因此,选项A是正确的。

7、(7) 是一种先进先出的线性表, 只允许在表的一端插入元素,而在表的另一端删除元素。

A、栈

B、队列

C、串

D、树

解析:

根据描述,这是一种先进先出的线性表,只允许在表的一端插入元素,而在另一端删除元素,这是队列(Queue)的特性。栈是后进先出(LIFO)的数据结构,允许在表的一端进行插入和删除操作。串是由字符组成的一种线性表。树是一种非线性数据结构,由节点和边组成。因此,正确答案是B,队列。

8、排序又被称为缩小增量排序,是对直接插入排序方法的改进。

A、简单选择

B、冒泡

C、快速

D、希尔

解析:

题目中提到排序又被称为缩小增量排序,这是对希尔排序的描述。希尔排序是插入排序的一种改进版本,也称为缩小增量排序。因此,正确答案是D,表示希尔排序。

9、以下关于计算机安全原则的叙述中,不正确的是(11)

A、在系统设计时,实现安全措施应具有简洁性

B、系统的保护机制不应该公开

C、用户和程序在操作时应当使用尽可能少的特权

D、多用户系统中允许多个用户共享资源的机制应该最小化

解析:

根据计算机安全原则中的"开放设计"原则,系统的设计和安全体系结构应该公开,安全不能仅仅依赖于对某个组件或机制的保密。因此,叙述中"系统的保护机制不应该公开"与计算机安全原则中的"开放设计"原则相违背,是不正确的。

10、攻击者使网络中的服务器充斥着大量需要回复的信息,消耗带宽,导致系统停止正常服务或者响应很慢,这种攻击类型属于(12) 。

A、直注入攻击

B、TCP会话动持

C、DoS攻击

D、ARP欺骗攻击

解析:

攻击者使网络中的服务器充斥着大量需要回复的信息,消耗带宽,导致系统停止正常服务或者响应很慢,这种攻击类型属于DoS攻击(Denial of Service,拒绝服务攻击)。DoS攻击通过使网络中的服务器过载,导致其无法处理正常请求,从而使网络服务的可用性受到损害。因此,正确答案为C。

11、以下关于重罐的叙述中,不正确的是(13)。

A、蜜罐对攻击者更有吸引力

B、对蜜罐的任何连接都被确定为入侵

C、宝罐计算机中有吸引力的文件使入侵者逗留并留下证据

D、宝罐能够主动发现攻击者

解析:

关于重罐(蜜罐)的叙述中,不正确的是C选项。蜜罐是一种安全工具,用于吸引和诱骗试图非法闯入他人计算机系统的攻击者。然而,蜜罐并不是用来主动发现攻击者的工具,所以选项D是不正确的。选项C中的描述“宝罐计算机中有吸引力的文件使入侵者逗留并留下证据”虽然在一定程度上是正确的,但并不能说明所有文件都有吸引力,且入侵者是否逗留和留下证据还取决于其他因素。因此,最不符合题目要求的答案是C。

12、不属于SQL注入防范措施的是(14)

A、使用预编译语句,绑定变量

B、对用户提交的数据进行严格过滤

C、使用安全函数

D、使用动态SQL语句

解析:

SQL注入是一种攻击手段,通过输入恶意SQL代码来影响后端数据库的行为。为了防止SQL注入,应该采取一些防范措施。选项A“使用预编译语句,绑定变量”、选项B“对用户提交的数据进行严格过滤”和选项C“使用安全函数”都是有效的防范措施。而选项D“使用动态SQL语句”并不是一个有效的防范措施,因为动态SQL语句可能导致直接拼接用户输入的数据到SQL语句中,从而增加受到SQL注入攻击的风险。因此,不属于SQL注入防范措施的是D。

13、防止重放攻击最有效的方法是(15)

A、对用户密码进行加密存储

B、使用一次一密的加密方式庭的机学

C、强制用户经常修改用户密码

D、强制用户设置复杂度高的密码

解析:

防止重放攻击的最有效方法是使用一次一密的加密方式。一次一密加密方式是指每次通信时都使用不同的密钥,这样即使攻击者截获了某些通信内容,也无法重复使用或重现这些内容来进行重放攻击。因此,选项B是正确的。而选项A是对用户密码进行加密存储,这并不能直接防止重放攻击;选项C和D是关于用户密码的建议,虽然可以增强账户的安全性,但并不直接针对重放攻击的防范措施。

14、根据(计算机软件保护条例》的规定,对软件著作权的保护不包括(16)。

A、目标程序

B、软件文档

C、源程序

D、开发软件所用的操作方法

解析:

根据《计算机软件保护条例》的规定,计算机软件的著作权保护范围包括计算机程序及其相关文档,其中计算机程序包括源程序和目标程序,文档一般包括程序设计说明书、流程图、用户手册等。但是,著作权的保护不包括开发软件所用的思想、处理过程、操作方法或者数学概念等。因此,选项D“开发软件所用的操作方法”是不包括在著作权保护范围内的。

15、甲、 乙两公司于2020年7月7日就各自开发的库存管理软件分别申请“宏达”和“鸿达”商标注册,两个库存管理软件相似,甲第一次使用时间为2019年7月,乙第一次使用时间为2019年5月,此情形下,(17) 能获准注册。

A、“宏达”

B、“宏达” 和“鸿达”均

C、由甲、乙协商哪个

D、“鸿达”

解析:

根据我国商标注册的原则,当两个或两个以上申请人在同一种或类似商品上申请注册相同或近似的商标时,一般按照申请在先的原则决定商标权的归属。在本题中,甲和乙两公司就各自开发的库存管理软件分别申请“宏达”和“鸿达”商标注册,且两个库存管理软件相似。根据题干,甲第一次使用时间为2019年7月,而乙第一次使用时间为2019年5月,即乙的使用时间在前。然而,商标注册的关键是申请时间,而非使用时间。因此,在此情形下,“鸿达”商标能获准注册,答案为D。

16、CPU 的速度要远快于打印机的速度,为解决这个速度不匹配的问题,可以使用(18)

A、并行技术

B、缓存技术

C、虚拟内存技术

D、交换技术

解析:

本题考查计算机操作系统相关知识。为解决CPU的速度与打印机的速度不匹配的问题,可以使用缓存技术。引入缓冲的原因就是为了解决CPU和I/O设备间速度不匹配的矛盾。因此,选项B是正确的。其他选项如并行技术、虚拟内存技术和交换技术虽然都是计算机领域中的技术,但它们在这个问题上的作用不如缓存技术直接和有效。

17、假设所有的作业同时到达,平均周转时间最短的调度算法是(19) 。

A、先来先服务

B、优先级调度

C、短作业优先

D、轮转算法

解析:

假设所有的作业同时到达时,平均周转时间最短的调度算法是短作业优先。这是因为短作业优先调度算法会优先处理时间短、完成快的作业,这样可以提高系统的整体效率,缩短作业的等待时间和周转时间。因此,短作业优先调度算法是最适合此情况的调度算法。

18、同一进程的多个线程之间共享的内容不包括(   )

A、地址空间

B、栈

C、全局变量

D、记账信息

解析:

同一进程的多个线程之间共享的内容通常包括地址空间、全局变量等,但不包括栈。每个线程都有其独立的栈空间,用于存储局部变量和函数调用的上下文信息。因此,选项B "栈"是不正确的答案。

19、在死锁产生的必要条件中,可以使用(21)方法破坏“不可剥夺条件”。

A、假脱机

B、预先静态分配

C、强制剥夺资源

D、所有资源排序使用

解析:

在死锁产生的必要条件中,"不可剥夺条件"指的是进程在持有资源的同时,其他进程不能强行剥夺其资源。为了破坏这个条件,可以采用强制剥夺资源的方法,即进程在运行过程中可以被强制剥夺已分配的资源。因此,正确答案是C,即“强制剥夺资源”。其他选项如假脱机、预先静态分配、所有资源排序使用等,并不能直接破坏不可剥夺条件。

20、在程序编译过程中,执行类型分析和检查是在(24)阶段.

A、词法分析

B、语法分析

C、语义分析

D、代码优化

解析:

在程序编译过程中,执行类型分析和检查是在语义分析阶段。此阶段的任务主要是对源程序进行类型分析和检查,并收集类型信息供后面的代码生成阶段使用。因此,正确答案为C。

21、ISO软件质量模型由3个层次组成,分别是质量特性,质量子特性和最度指标。例如(25)质量子特性属于可靠性质量特性。

A、依从性

B、成熟性

C、易操作性

D、易安装性

解析:

根据题目描述,ISO软件质量模型由质量特性、质量子特性和度量指标组成。其中,可靠性质量特性包括成熟性,而易操作性属于易用性质量特性,易安装性属于安装性质量特性。因此,依从性不属于可靠性质量特性,而成熟性是可靠性质量特性的一个子特性。所以正确答案是B。

22、在UML图中,(26)展现了一组对象以及它们之间的关系,描述了类实例的静态快照。

A、类图

B、对象图

C、序列图

D、状态图

解析:

对象图展现了一组对象以及它们之间的关系,描述了类实例的静态快照。这与题目描述相符。而类图主要用于描述系统的静态设计视图,包括对象、接口、协作和它们之间的关系,但不专注于实例的静态快照。序列图强调对象之间的交互活动,以时间顺序组织。状态图则是对一个对象的行为进行建模。因此,正确答案是B,对象图。

23、(27) 强调风险分析,比较适用于庞大、复杂且高风险的系统。

A、瀑布模型

B、螺旋模型

C、V模型

D、原型化模型

解析:

螺旋模型结合了瀑布模型和快速原型模型的特点,并且特别强调了风险分析,适用于庞大、复杂且高风险的系统。因此,本题正确答案为B。

24、软件能力成熟度模型(CMM)是对软件组织进化阶段的描述,分为5个成熟度级别,其中在(28) 级别,说明该组织已经建立了基本的项目管理过程来跟踪成本和进度。

A、可重复级

B、已定义级

C、已管理级

D、优化级

解析:

:根据软件能力成熟度模型(CMM)的定义,在已管理级(C)级别,软件组织已经建立了基本的项目管理过程来跟踪成本和进度。因此,正确答案是C。

25、在地址栏中输入ww.abe.com,测览器默认的应用层协议是(29)。

A、HTTP

B、DNS

C、TCP

D、FTP

解析:

在地址栏中输入www.abe.com时,浏览器默认使用的应用层协议是HTTP超文本传输协议。该协议是应用层协议,被主要的Web浏览器和Web服务器支持,用于在网络上传输数据。其他选项如DNS、TCP和FTP虽然在网络通信中起到重要作用,但它们各自有不同的功能和用途。因此,正确答案是A。

26、WLAN的含义是(30)。

A、无线局域网

B、无线广城网

C、有线网络

D、共享网络

解析:

WLAN是Wireless Local Area Network的简称,即无线局域网。B选项为干扰项,无线广域网为WWAN。C选项为有线网络,与WLAN含义不符。D选项共享网络是一种网络类型,并不特指无线局域网。因此,正确答案为A。

27、防火墙的主要功能不包括(31)。

A、包过滤

B、访问控制

C、加密认证

D、应用层网关

解析:

防火墙的主要功能包括包过滤、访问控制和应用层网关等,但不包括加密认证。因此,选项C是防火墙的主要功能不包括的一项。

28、下列协议中,属于安全远程登录协议的是(32)。

A、TLS

B、TCP

C、SSH

D、TFTP

解析:

SSH是安全远程登录协议,用于终端设备与远程站点之间建立安全连接,防止远程管理过程中的信息泄露问题。因此,选项C是正确的。其他选项的含义分析如下:

A. TLS(传输层安全性协议)是为了在互联网通信中提供安全和数据完整性保障的一种协议,但并非专门用于远程登录。

B. TCP(传输控制协议)是一种面向连接、可靠的基于字节流的传输层通信协议,用于数据传输,并不直接涉及安全远程登录。

D. TFTP(简单文件传输协议)是用于在客户机与服务器之间进行简单文件传输的协议,并不用于远程登录。

29、数据模型中,唯一标识实体的属性集称为(33) 。

A、外码

B、码

C、属性

D、元组

解析:

在数据模型中,唯一标识实体的属性集称为“码”。外码用于实现参照完整性,建立实体间的链接;属性表示实体的特征;而元组是表中的一行记录。因此,正确答案为B。

30、关系模型中, 一组具有相同数据类型的值的集合称为(34)。

A、域

B、变量

C、分量

D、元组

解析:

在关系模型中,一组具有相同数据类型的值的集合称为域(A)。其他选项如变量、分量和元组在关系模型中都有其特定的含义,但与本题所描述的集合概念不完全匹配。

31、相比于文件系统,用数据库系统管理数据,具有(35)的优势。

A、数据冗余高

B、数据独立性高

C、数据结构化程度低

D、数据联系弱

解析:

相比于文件系统,用数据库系统管理数据,具有数据独立性高的优势。这是因为数据库系统通过数据库管理系统(DBMS)来统一管理和控制数据,当数据发生变化时,应用程序不需要修改,从而保证了数据的独立性。同时,数据库系统还具有数据结构化、数据共享性高、冗余度低、易扩充等其他优势。因此,选项B是正确答案。

32、在一个关系表中,一个表的列代表一个(36)。

A、关系

B、记录

C、元组

D、属性

解析:

本题考查数据库系统中的关系表概念。在关系表中,一个表的列代表一个属性,属性表示实体的特征。关系表是二维的,由行和列组成,其中每一列代表一个属性,每一行代表一个记录或元组。因此,正确答案为D,即“属性”。

33、如下表所示,有两个关系E和F,若它们经过某一关系运算后的结果为{计算机学院},这一关系运算为(37)。

A、E×F

B、F×E

C、E÷F

D、F÷E

解析:

本题考查关系代数中的除法运算。根据关系代数的定义,当对一个关系进行除法运算时,结果是一个关系,其中的属性来自于被除关系的属性,并且结果关系中只包含满足除关系的元组。在这个问题中,关系E和F经过除法运算后得到的结果为“计算机学院”,这符合关系代数中除法的定义。因此,正确答案是C选项,即E÷F。

34、某公 司开发系统记录员工基本信息。假设每个员工只在个部门工作: 每个员工必须提供工作和家庭两部电话号码。(38) 不满足INF。

A、R1 (员工编号,姓名,性别) 

B、R2 (员工编号,姓名,家庭电话,工作电话)

C、R3 (员工编号,姓名,部门)

D、R4 (员工编号,姓名,电话{家庭电话,工作电话}

解析:

根据题目描述,公司记录员工基本信息的系统需要满足一定的数据规范化要求。根据第一范式(1NF)的定义,所有属性都应该是不可分的基本数据项。在提供的选项中,选项D的"电话"属性被细分为了家庭电话和工作电话两个属性,不满足原子属性的要求,因此不满足第一范式(1NF)。所以正确答案是D。

35、结构化查询语言(SQL)的出现,极大地促进了(39)的应用。

A、层次数据库

B、网络数据库

C、关系数据库

D、文件管理系统

解析:

结构化查询语言(SQL)是用于关系数据库管理系统的查询和程序设计语言,它的出现极大地促进了关系数据库的应用。因此,正确答案是C。

36、有一进口商品数据表item info(item id, item type, unit price, item count,,其中itemid是自动编号字段,其他属性可以为NULL如果用SQL语句:INSERTINTOiteminfo(unit price, item count) VALUES (9.99, 150)向数据表中插入元组时,则该元组的item _type属性值为 (40)

A、NULL

B、任意值

C、0

D、插入失败,不存在该元组

解析:

根据题目描述,有一个进口商品数据表item info,其中包含多个字段,其中item id是自动编号字段,其他属性可以为NULL。题目中的SQL语句是要向数据表中插入一个新的元组,只指定了unit price和item count的值,而没有指定item_type的值。由于item_type允许为NULL,所以在插入时,如果没有明确指定值,其默认值就是NULL。因此,该元组的item_type属性值为NULL。所以选项A是正确的。

37、原子性、一致性、持久性、(41)是数据库事务的四个特征。

A、只读性

B、封装性

C、隔离性

D、恢复性

解析:

根据数据库事务的四个特征,分别是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。题目中的选项对应如下:
A 只读性:并不是数据库事务的特征之一。
B 封装性:虽然事务可以看作是一个封装的工作单元,但它并不是数据库事务的四个特征之一。
C 隔离性:是数据库事务的重要特征之一,确保多个事务并发执行时,一个事务的更新操作对其他事务是不可见的。
D 恢复性:虽然数据库系统需要具有从故障中恢复的能力,但这并不是数据库事务的四个基本特征之一。因此,正确答案是C,即隔离性。

38、假设有两个数据库表isurance和epoeer分别记录了某地所有工作人员的社保信息和基本信息:

insurance (id, is valid),各属性分别表示身份证号,社保是否有效,其中is _valid=1表示社保有效,is valid=0表示社保无效。

employee (id, name, salay, is local), 各属性分别表示身份证号,姓名,每月工资,户口是否在当地,其中is_ local=1 表示户口在当地,is local=0 表示户口不在当地。

2021年农历新年,为防控疫情,鼓励留在工作地过年,决定对社保有效且户口不在当地的人群发放津贴。可筛选出满足补贴发放条件人员的SQL语句为 (42) 。

A、SELECT * FROM employee, insurance WHERE insurance.id = employee.id AND insurance.is_ valid =1

B、SELECT * FROM employee, insurance WHERE insurance.is valid= 1 AND employee.is local=0

C、SELECT * FROM employee, insurance WHERE insurance.id = employee.id AND insurance.is valid = 1 AND insurance.is local = 0

D、SELECT * FROM employee, insurance WHERE insuranceid = employee.id AND insurance.is valid = 1 AND employee.is local = 1

解析:

根据题目描述,需要筛选出社保有效且户口不在当地的人员,因此需要在SQL语句中加入这两个条件。选项C中的SQL语句使用了正确的表连接条件(insurance.id = employee.id),并且包含了筛选社保有效(insurance.is_valid = 1)和户口不在当地(employee.is_local = 0)的条件,因此是正确的答案。选项A和B都没有同时包含这两个条件,选项D则包含了户口在当地(employee.is_local = 1)的条件,不符合题目要求。

39、在一个数据库中,如果要赋予用户userA可以查询department 表的权限,应使用语句(43)

A、GRANT SELECT ON department TO userA

B、REVOKE SELECT ON department FROM userA

C、GRANT SELECT ON department FROM userA WITH GRANT OPTION

D、REVOKE SELECT ON department TO userA

解析:

根据题目描述,需要赋予用户userA查询department表的权限。在SQL中,使用GRANT语句来授予权限。选项A中的语句“GRANT SELECT ON department TO userA”正是授予用户userA对department表的查询权限的语法,因此是正确答案。其他选项的含义如下:

B. REVOKE SELECT ON department FROM userA:这个语句是撤销用户userA对department表的查询权限,与题目要求相反。

C. GRANT SELECT ON department FROM userA WITH GRANT OPTION:这个语句除了授予查询权限外,还允许用户userA将其所获得的权限授予其他用户,但题目中并未要求这种权限。

D. REVOKE SELECT ON department TO userA:这个语句同样存在语法错误,因为TO应该用于指定被授予权限的用户,而不是在REVOKE语句中。

因此,根据题目要求,应选择A选项。

40、要从数据库中删除people表及其所有数据,以下语句正确的是(44)。

A、DELETE table people

B、DROP table people

C、ERASE table people

D、ALTER table people

解析:

在SQL中,要删除一个表及其所有数据,应该使用DROP TABLE语句。因此,正确的语句是"DROP TABLE people",选项B是正确的。其他选项如DELETE、ERASE和ALTER都是用于操作表中的数据的,而不是删除整个表。

41、某电影院某日电影 入座情况如下表所示。为调整场次,要统计2021年2月21日到场人数总数大于100的电影,可满足要求的SQL语句是(45)

A、SELECT film,sum(attendance) FROM movie WHERE pdate ='202 10221' HAVING sumattendance)> 100

B、SELECT film,sum( attendance) FROM movie WHERE pdate = 20210221’AND attendance >100 GROUP BY film

C、SELECT filmum(attenedance) FROM movie WHERE pdate = *20210221’ GROUP BY film HAVING sum(attendance)> 100

D、SELECT film,sum(attendance) FROM movie WHERE pdate = *20210221 AND sum(attendance)> 100 GROUP BY flm

解析:

根据题目要求,需要统计的是某电影院某日的电影到场人数总数大于100的电影。观察提供的SQL语句选项,正确的语句应该是首先按照电影名称进行分组(GROUP BY film),然后在WHERE语句中指定日期(pdate = ‘2021-02-21’),接着使用HAVING语句来过滤出到场人数总和大于100的电影(sum(attendance)> 100)。因此,正确的SQL语句应该是选项C。

42、以下关于数据库事务的叙述中,正确的是 (49)。

A、一个数据库应用程序只能包含一个数据库事务

B、一个数据库事务仅包含条SQL语句

C、一个数据库事务仅包含一个存储过程

D、一个数据库事务可以包含一组SQL语句

解析:

数据库事务可以包含一组SQL语句。事务是一个数据库中的操作序列,这些操作要么全部完成,要么全部不完成,是数据库恢复和并发控制的基本单位。因此,选项D正确,其他选项A、B、C均不正确。

43、关于模式分解,(50) 不是分解前后模式等价性的准则。

A、分解后关系模式要达到最高范式

B、分解具有无损连接性

C、分解要保持函数依赖

D、分解既要保持函数依赖,又要具有无损连接性

解析:

关于模式分解,分解前后模式等价性的准则包括保持函数依赖和无损连接性。也就是说,一个好的模式分解应该既保持数据之间的函数依赖关系,又能保证在分解后通过连接操作能够恢复原始数据,保证数据完整性。选项A中的“分解后关系模式要达到最高范式”并不是分解前后模式等价性的准则,因此不是正确答案。

44、关系模式R(U, PD中,属性集U=(A,B,C, D, E},函数依赖集F=(A →BC,C→D,BD→A,AD→E, BD→E}。则(CE)F+= (51)

A、CE

B、BCE

C、CED

D、BCED

解析:

首先明确题目给出的关系模式R(U),其中属性集U={A,B,C,D,E},函数依赖集F={A → BC, C → D, BD → A, AD → E, BD → E}。我们需要求解的是(CE)+在F中的闭包。根据闭包的求解规则,首先初始化X=CE,然后开始检查每一个函数依赖,看是否有能够通过函数依赖由X推导出来的属性需要加入到X中。通过检查F中的函数依赖,我们发现只有C → D这个依赖关系能使得我们可以将D加入到X中,形成新的集合X=CDE。此时,集合X已经包含了所有通过函数依赖集F能够从CE推导出来的属性,所以闭包(CE)+ = CDE,因此正确答案为C。

45、以下关于数据库事务的说法中,错误的是(52)

A、数据库事务是恢复和并发控制的基本单位

B、数据库事务必须由用户显式地定义

C、数据库事务具有ACID特性

D、COMMIT和ROLLBACK都代表数据库事务的结束

解析:

关于数据库事务的说法中,B选项“数据库事务必须由用户显式地定义”是错误的。数据库事务通常是自动管理的,不需要用户显式地定义。用户只需要执行相应的操作(如插入、更新或删除),而这些操作会被数据库系统封装成一个事务进行处理。其他选项A、C、D都是关于数据库事务的正确描述。

46、以下关于触发器的说法中,错误的是(56)

A、触发器可以带参数

B、触发器不能被应用程序显式调用

C、触发器可以关联到基本表

D、一个基本表上可以定义多个触发器

解析:

根据解析内容,触发器是一种特殊的存储过程,它的执行不是由程序调用或手动启动,而是由事件触发。触发器不能带参数,因此选项A错误。选项B、C和D都是关于触发器的正确描述,所以正确答案是A。

47、在数据库中新建存储过程的关键字是(57) 。

A、CREATE PROCEDURE

B、INSERT PROCEDURE

C、CREATE TRIGGER

D、INSERT TRIGGER

解析:

在数据库中新建存储过程的关键字是"CREATE PROCEDURE"。存储过程是一组为了完成特定功能的SQL语句集合,经过编译后存储在数据库中,用户可以通过指定存储过程的名称并给出参数来执行。因此,正确答案是A。

48、数据库故障恢复中,根据日志文件进行的撤销操作是(58)。

A、REDO

B、ROLLBACK

C、UNDO

D、COMMIT

解析:

根据题目描述和相关知识,数据库故障恢复中的撤销操作是指撤销未完成的事务操作,对应的操作是UNDO。因此,正确答案为C。

49、数据库系统中的运算溢出属于(59)。

A、事务故障

B、系统故障

C、介质故障

D、硬件故障

解析:

数据库系统中的运算溢出属于事务故障。事务故障是单独一个事务出现问题而无法继续执行,这不会影响其他事务的执行。运算溢出是事务执行过程中可能出现的错误之一。系统故障、介质故障和硬件故障与本题描述不符,因此正确答案为A。

50、以下关于并发调度的说法中,正确的是(60)

A、以不同串行方式调度执行两个事务,结果都相同

B、并发调度结果与某一种串行调度结果相同,是并发调度正确的必要条件

C、不满足两段锁协议的并发调度,其结果一定是错误的

D、满足两段锁协议的并发调度不会产生死锁

解析:

关于并发调度的说法中,正确的是并发调度结果与某一种串行调度结果相同,是并发调度正确的必要条件。这是因为并发调度需要保证事务的隔离性,以确保多个事务可以同时执行而不会相互影响,从而达到与串行执行相同的结果。其他选项中,以不同串行方式调度执行两个事务,结果可能相同也可能不同;不满足两段锁协议的并发调度可能会导致数据不一致或其他问题,但其结果不一定是错误的;满足两段锁协议的并发调度虽然可以降低死锁的可能性,但并不能保证一定不会发生死锁。因此,正确答案是B。

51、在数据库设计中,下列步 骤排序正确的选项是(61)

①需求分析

②物理结构设计

③概念结构设计

④逻辑结构设计

A、①②③④

B、③①②④

C、①④③②

D、①③④②

解析:

:数据库设计的基本步骤包括需求分析、概念结构设计、逻辑结构设计和物理结构设计。正确的顺序应该是先进行分析,然后设计概念结构,接着设计逻辑结构,最后进行物理结构设计。因此,正确的选项是D,即①需求分析、③概念结构设计、④逻辑结构设计和②物理结构设计。

52、以下关于数据库设计的说法中,正确的是(62)

A、在逻辑结构设计阶段,规范化程度越高越好

B、逻辑结构设计的结果必须满足BCNF

C、在物理结构设计阶段,聚族可提高特定属性的查询效率

D、在物理结构设计阶段,若选择B+树索引存取方法,关系上定义的索引数越多越好

解析:

本题考查数据库设计的相关知识。

A选项不正确,因为规范化程度过高可能会导致子模式不保持函数依赖和过于碎片化,无法保持业务规则和查询效率。

B选项不正确,因为逻辑结构设计的结果满足3NF(第三范式)就能保持函数依赖(业务规则),而BCNF并不是必须满足的。

C选项正确,在物理结构设计阶段,聚族可以提高特定属性的查询效率。

D选项不正确,选择B+树索引存取方法时,并不是关系上定义的索引数越多越好,过多的索引会导致数据库开销增大,性能下降。

53、数据的逻辑独立性由_ (63) 的映射实现。

A、外模式到逻辑模式

B、外模式到内模式

C、逻辑模式到内模式

D、内模式到逻辑模式

解析:

数据的逻辑独立性是通过外模式到逻辑模式的映射实现的。这是数据库管理系统(DBMS)通过二级映像功能来保证的,其中外模式对应用户级数据库架构,逻辑模式对应概念级数据库架构。通过这一映射,用户可以在不改变逻辑模式的情况下修改外模式,从而保证了数据的逻辑独立性。因此,正确答案是A。

54、要求关系模式的属性之间不 允许有非平凡且非函数依赖的多值依赖。

A、1NF

B、2NF

C、3NF

D、4NF

解析:

题目要求关系模式的属性之间不允许有非平凡且非函数依赖的多值依赖,这对应的是第四范式(4NF)的要求。因此,正确答案是D。

55、以下关于数据库的重组和重构的说法中,正确的是(67) 

A、数据库的重组修改了原设计的逻辑和物理结构

B、数据库的重构不修改原设计的逻辑和物理结构

C、数据库的重组是指按原设计要求重新安排存储位置、回收垃圾、减少指针链以提高系统性能

D、数据库的重构是指按原设计要求重新安排存储位置、回收垃圾、减少指针链等,以提高系统性能

解析:

本题考查数据库重组和重构的定义和目的。

选项A描述的是数据库重组修改了原设计的逻辑和物理结构,这与数据库重组的定义不符。数据库重组主要是为了提高系统性能,通过重新安排存储位置、回收垃圾、减少指针链等手段来优化数据库的物理结构,但并不涉及逻辑结构的修改。

选项B描述的是数据库重构不修改原设计的逻辑和物理结构,这与数据库重构的定义也不符。数据库重构是为了适应需求的变化,可能会涉及到逻辑结构的修改,但主要目的是使数据库更加适应新的需求和环境。

选项C和D描述的都是数据库重组,且都正确地描述了数据库重组的目的是为了提高系统性能,通过重新安排存储位置、回收垃圾、减少指针链等手段来实现。但选项D额外提到了按原设计要求进行,这与数据库重组的定义不完全吻合,因为在实际操作中,可能需要根据实际情况进行调整和优化,而不仅仅是按照原设计进行。因此,选项C更为准确。

56、下列选项中,(68) 不属于分布式数据库的优点。

A、可拓展性好

B、具有数据分布透明性

C、体系结构灵活

D、存取结构简单

解析:

分布式数据库的优点包括灵活的体系结构、经济性能优越、系统可靠性高、可用性好、局部应用的响应速度快以及可扩展性好,易于集成现有的系统。而“存取结构简单”并不是分布式数据库的优点之一。因此,选项D不属于分布式数据库的优点。

57、以下(69)不属于NoSQL.

A、Cassandra 

B、MongoDB

C、PostgreSQL

D、Neo4j

解析:

题目要求选择不属于NoSQL的选项。NoSQL是指非关系型数据库,是用来对不同于传统的关系型数据库DBMS的统称。在提供的选项中,Cassandra、MongoDB和Neo4j都是常见的NoSQL数据库,而PostgreSQL是一个关系型数据库管理系统,不属于NoSQL范畴。因此,正确答案是C。

58、分布式数据库CAP理论中的A指的是(70),

A、一致性

B、可用性

C、分区容错

D、原子性

解析:

分布式数据库CAP理论中的A指的是可用性(Availability)。CAP理论是分布式系统领域的一个重要理论,它指出在一个分布式系统中,一致性(Consistency)、可用性(Availability)和分区容忍性(Partition tolerance)这三个特性最多只能同时满足两个,不能同时满足三个。因此,在分布式数据库的设计和实现中,需要根据具体需求进行权衡和选择。

59、一颗5层的二叉树,其最多有(   8 回答本题   )个结点,第5层最多有(   9   )个结点。

A、15

B、16

C、31

D、32

解析:

对于一颗5层的二叉树,其最多节点数可以通过公式2^h - 1计算得出,其中h为层数。因此,5层的二叉树最多有2^5 - 1 = 31个节点。所以选项C是正确的。而第5层最多有2^(5-1) = 16个节点,但题目中提到第5层有9个节点,这可能是题目描述有误或存在其他特定条件,但基于给出的选项和解析,答案仍然为C。

60、一颗5层的二叉树,其最多有(   8   )个结点,第5层最多有(   9 回答本题   )个结点。

A、15

B、16

C、31

D、32

解析:

一颗5层的二叉树,其最多结点数为2^5-1=31个,第5层最多结点数为2^4=16个。因此,答案为D(31个)。参考解析中关于二叉树性质的描述是为了提供背景知识,但针对这个具体题目,我们只需根据二叉树的定义和基本性质进行计算即可得出答案。

61、v在程序设计语言中,(  22 回答本题   )表示了构成语言的各个记号和使用者的关系,而语境是指理解和实现程序设计语言的环境,包括(  23  )环境和运行环境。

A、语法

B、语义

C、语用

D、词法

解析:

题干中提到“v在程序设计语言中,表示了构成语言的各个记号和使用者的关系”,这对应的是程序语言的语用因素。而语境涉及理解和实现程序设计语言的环境,包括编译环境和运行环境,也是程序设计语言的一个重要方面。因此,正确答案是C,即“语用”。

62、v在程序设计语言中,(  22  )表示了构成语言的各个记号和使用者的关系,而语境是指理解和实现程序设计语言的环境,包括(  23 回答本题    )环境和运行环境。

A、开发

B、调试

C、测试

D、编译

解析:

本题考查程序语言的相关知识。在程序设计语言中,语境是指理解和实现程序设计语言的环境,包括编译环境和运行环境。而构成语言的各个记号和使用者的关系,属于语用的范畴。因此,正确答案是D,即“编译”。

63、设有关系模式:选课(学号,课程号,课程名,成绩),其函数依赖集为{课程号→课程名,课程名→课程号,(学号,课程号)→成绩}。则关于该关系模式,以下说法错误的是( 46 回答本题  )。将“选课”分解为两个关系模式:SC(学号,课程号,成绩)和C(课程号,课程名),则SC和C最高分别属于( 47 )。对于关系模式“选课”来说,(学号,课程号)→→课程号 是特殊的多值依赖,本质上是( 48 )。

A、每个非平凡函数依赖的决定因素都包含码

B、不存在非函数依赖的多值依赖

C、不存在非主属性对码的部分函数依赖

D、不存在非主属性对码的传递函数依赖

解析:

首先,我们来解析第一个小题。关系模式中的函数依赖集告诉我们属性之间的依赖关系。在这个关系中,学号不是唯一的决定因素,因此关于该关系模式的说法错误的是A。

接下来,对于第二个小题,将"选课"分解为两个关系模式SC(学号,课程号,成绩)和C(课程号,课程名)后,SC的关系主要依赖于学号与课程号来决定成绩,属于第一范式;而C的关系依赖于课程号决定课程名,属于第二范式。因此SC和C最高分别属于第一范式和第二范式。

最后,对于第三个小题,(学号,课程号)→→课程号是特殊的多值依赖。当Z为空集时,这种多值依赖被称为平凡的多值依赖。在这个情况下,(学号,课程号)能够决定课程号,而并没有涉及到其他的属性,所以是平凡的多值依赖。

64、设有关系模式:选课(学号,课程号,课程名,成绩),其函数依赖集为{课程号→课程名,课程名→课程号,(学号,课程号)→成绩}。则关于该关系模式,以下说法错误的是( 46 )。将“选课”分解为两个关系模式:SC(学号,课程号,成绩)和C(课程号,课程名),则SC和C最高分别属于( 47 回答本题 )。对于关系模式“选课”来说,(学号,课程号)→→课程号 是特殊的多值依赖,本质上是( 48 )。

A、3NF和3NF

B、BCNF和3NF

C、3NF和BCNF

D、BCNF和BCNF

解析:

对于第一个问题,需要判断给定的关系模式选课中的函数依赖集是否符合某种范式。根据题目描述,学号、课程号联合构成课程的唯一标识,可以推导出成绩依赖于学号、课程号,符合第三范式(3NF)的要求。但根据函数依赖关系,课程名依赖于课程号,这意味着选课关系模式并不满足BCNF(Boyce-Codd Normal Form)的要求。因此,第一个问题的答案是选课不满足BCNF,所以选项D错误。

对于第二个问题,将选课关系模式分解为SC和C两个关系模式后,SC关系中的函数依赖为(学号,课程号)→成绩,满足第三范式(3NF);C关系中的函数依赖为课程号→课程名,也满足第三范式(3NF)。因此,SC和C最高分别属于3NF。

对于第三个问题,关于多值依赖,(学号,课程号)→→课程号是特殊的多值依赖。在这种情况下,由于学号唯一标识学生,课程号唯一标识课程,联合这两个属性可以决定课程号,而这个过程与多值依赖的定义相符。由于没有其他额外的属性参与决定课程号的过程,所以这个特殊的多值依赖本质上是平凡的。因此答案是平凡的多值依赖。

65、设有关系模式:选课(学号,课程号,课程名,成绩),其函数依赖集为{课程号→课程名,课程名→课程号,(学号,课程号)→成绩}。则关于该关系模式,以下说法错误的是( 46 )。将“选课”分解为两个关系模式:SC(学号,课程号,成绩)和C(课程号,课程名),则SC和C最高分别属于( 47 )。对于关系模式“选课”来说,(学号,课程号)→→课程号 是特殊的多值依赖,本质上是( 48 回答本题 )。

A、非函数依赖的多值依赖

B、平凡的多值依赖

C、非平凡的函数依赖

D、平凡的函数依赖

解析:

本题考查关系数据库规范化理论方面的基础知识。关于第一空,题目描述的关系模式选课中的函数依赖关系表明选课关系中的学号与成绩之间依赖于课程号与课程名,因此学号一定是候选码的构成属性,而{学号,课程号}和{学号,课程名}的闭包均包含所有属性,均为选课关系的键。对于第二空,将选课关系分解为SC和C两个关系模式后,SC的关系依赖为(学号,课程号)→成绩,而C的关系依赖为课程号→课程名和课程名→课程号。对于第三空,多值依赖X→→Y成立的条件是,在关系模式R(U)中,对于任一个关系r,r在(X,Z)上的每个值对应一组Y的值,这组值仅仅决定于X值而与Z值无关。平凡的多值依赖是指X→→Y成立时,Z=φ的情况。根据这些分析,关于该关系模式,“选课”中的(学号,课程号)→→课程号是多值依赖的一种特殊情况,即平凡的多值依赖。因此正确答案是B。

66、下表是某两个事务并发执行时的调度过程,这里不会出现不可重复读的问题,是因为这两个事务都使用了(  53 回答本题  );两个事务的并行执行结果是正确的,是因为这两个事务都使用了( 54 );在执行过程中没有发生死锁,这是因为( 55 )导致的。

A、三级封锁协议

B、二级封锁协议

C、两段锁协议

D、一次封锁法赖

解析:

本题考查数据库并发控制基础知识。
从题目给出的调度过程可以看出,两个事务在执行过程中没有出现不可重复读的问题,这通常是由于事务使用了读提交隔离级别或者更高级别的隔离机制。而在这个场景下,它们可能使用了三级封锁协议来保证数据的完整性,避免了不可重复读的问题。因此,第一个空填“三级封锁协议”。
对于两个事务的并行执行结果是正确的,这通常是因为它们遵循了某种协议以保证事务的可串行化。两段锁协议可以保证事务的可串行化,它把每个事务分解为加锁和解锁两段,确保事务的并发执行不会产生冲突。因此,第二个空填“两段锁协议”。
在执行过程中没有发生死锁,这是因为两个事务遵循了某些规则以避免死锁的发生。在数据库并发控制中,遵循二级封锁协议可以避免死锁的发生。在这个场景中,事务可能遵循了二级封锁协议来避免死锁。因此,第三个空填“二级封锁协议”。

67、下表是某两个事务并发执行时的调度过程,这里不会出现不可重复读的问题,是因为这两个事务都使用了(  53   );两个事务的并行执行结果是正确的,是因为这两个事务都使用了( 54 回答本题 );在执行过程中没有发生死锁,这是因为( 55 )导致的。

A、二级封锁协议

B、三级封锁协议

C、 两段锁协议

D、排他锁

解析:

本题考查数据库并发控制中的封锁协议。根据题目描述,两个事务并发执行时的调度过程没有出现不可重复读的问题,且两个事务的并行执行结果是正确的,同时没有发生死锁。这些情况可以通过使用两段封锁协议(Two-phase locking protocol)来实现。两段封锁协议要求事务在其执行过程中始终保持一种状态,要么在不断地读数据、修改数据、写回数据(持有锁),要么就不持有任何锁。这种协议可以确保可串行化,从而避免出现不可重复读、脏读等问题,也能避免死锁的发生。因此,答案为C。

68、下表是某两个事务并发执行时的调度过程,这里不会出现不可重复读的问题,是因为这两个事务都使用了(  53  );两个事务的并行执行结果是正确的,是因为这两个事务都使用了( 54 );在执行过程中没有发生死锁,这是因为( 55 回答本题 )导致的。

A、排他锁

B、共享锁

C、两段锁协议

D、偶然的调度

解析:

第一空:根据题目描述,两个事务并发执行时没有出现不可重复读的问题。不可重复读是由于一个事务在读取某个数据项的过程中,另一个事务修改了这个数据项的值,导致第一个事务在两次读取之间看到的数据不一致。在这个场景中,由于两个事务都使用了共享锁(Shared Lock,简称S锁),所以不会发生不可重复读的问题。因此,第一个空填D。
第二空:题目中提到两个事务的并行执行结果是正确的,这意味着这两个事务的执行是可串行化的。可串行化是通过控制事务的执行顺序来避免并发问题的一种策略。两段锁协议(Two-phase Locking Protocol)可以保证事务的可串行化。在这个协议中,每个事务分为加锁和解锁两个阶段。因此,第二个空填C。
第三空:在执行过程中没有发生死锁,这是因为数据库系统采用了某种策略来避免死锁的发生。常见的避免死锁的策略包括检测并解除死锁、使用超时机制等。在这个场景中,由于两个事务都正确地使用了锁,并且没有发生死锁,所以可以推断出这是因为数据库系统采用了适当的策略来避免死锁的发生。因此,第三个空填B。

69、某公司的数据库在试运行阶段发现cpu长时间占用率高于95%,那么不可能的原因是(  65 回答本题)。在运行一段时间后,由于硬盘故障,该数据库无法运行,这属于( 66  )。

A、CPU性能过剩

B、应用复杂过高

C、查询执行成本过高

D、存在大量行锁冲突

解析:

对于数据库在试运行阶段发现cpu长时间占用率高于95%,不可能的原因是A选项中的"CPU性能过剩"。因为CPU性能过剩意味着CPU处理能力足够应对当前的工作负载,而不是导致高占用率的原因。其他选项如应用复杂过高、查询执行成本过高和存在大量行锁冲突都可能是导致CPU高占用率的原因。而在运行一段时间后,由于硬盘故障导致数据库无法运行,这属于介质故障,与参考答案的描述相符。

70、某公司的数据库在试运行阶段发现cpu长时间占用率高于95%,那么不可能的原因是(  65 )。在运行一段时间后,由于硬盘故障,该数据库无法运行,这属于( 66 回答本题  )。

A、计算机病毒

B、事务内部故障

C、系统故障

D、介质故障

解析:

对于这道题,首先要分析数据库在试运行阶段CPU长时间占用率高的原因。CPU高占用率通常与程序运行效率、系统资源分配等有关,而计算机病毒虽然可能导致系统资源占用增加,但并不是唯一原因。因此,选项A“计算机病毒”并不是不可能的原因,所以排除A。接下来分析数据库无法运行的原因。由于题目中提到由于硬盘故障导致数据库无法运行,这属于介质故障,因为硬盘是存储数据库文件的介质之一。根据数据库故障分类,介质故障是导致数据丢失的一种故障类型。因此,选项D“介质故障”是正确的答案。恢复操作的基本原理是利用冗余数据来重建数据库,但这与本题的问题不直接相关。同时,事务故障和系统故障虽然也是数据库故障的类型,但与硬盘故障导致的数据库无法运行不直接相关,所以排除选项B和C。因此,最终答案是D。

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2021年5月数据库系统工程师上午题答案及解析

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share