章节测验
第01讲:数据库系统概述——测验题目整理与知识点分析
一、 单项选择题
- 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作的数据库语言称为( )
- A、数据定义语言 (DDL)
- B、数据操纵语言 (DML)
- C、数据管理语言
- D、数据控制语言
- 【对应知识点】:DBMS的主要功能。数据库管理系统提供数据操纵语言 (DML),用于实现对数据库的基本操作,包括查询、插入、删除和修改。
- 数据库中,数据的物理独立性是指( )
- A、数据库与数据库管理系统的相互独立
- B、应用程序与数据库中数据的逻辑结构相互独立
- C、用户的应用程序与存储在磁盘上数据库中的数据是相互独立的
- D、用户程序与 DBMS 的相互独立
- 【对应知识点】:数据独立性。物理独立性是指用户的应用程序与数据库中数据的物理存储是相互独立的;当数据的物理存储改变时(如由模式/内模式映像控制),应用程序无需改变。
- 数据库系统的体系结构是( )
- A、三级模式结构和三级映象
- B、三级模式结构和一级映象
- C、三级模式结构和两级映象
- D、两级模式结构和一级映象
- 【对应知识点】:数据库系统的模式结构。数据库系统采用三级模式结构(外模式、模式、内模式)和两级映像(外模式/模式映像、模式/内模式映像)来实现数据的有效组织和管理。
二、 多项选择题
- 数据库的特点有( )
- A、数据结构化
- B、数据冗余度高
- C、数据独立性高
- D、数据共享性高
- 【对应知识点】:数据库系统阶段的特点。数据库系统阶段的主要特征包括:数据的整体结构化、数据独立性高、共享性高且冗余度低、以及由 DBMS 提供完整控制功能。
三、 判断题
- 信息是处理后的数据。
- 正确答案:对
- 【对应知识点】:信息与数据的关系。信息是客观事物特征的抽象描述,是数据处理的结果,公式表示为:信息 = 数据 + 数据处理。
- 因为数据库中存储的数据具有很高的共享性,所以数据的冗余度必然很低。
- 正确答案:错
- 【对应知识点】:数据库的特点。虽然数据库的目标是实现高共享和低冗余,但冗余度的降低是由于 DBMS 的统一管理和数据结构化实现的,共享性是结果之一,两者相关但并非绝对的因果必然关系(受控冗余依然存在)。
- 因为数据库具有整体结构化的特征,所以存储的数据不再仅仅针对某一个应用,而是面向整个企业或组织。
- 正确答案:对
- 【对应知识点】:数据的整体结构化。这是数据库的主要特征,数据不再面向单一应用,而是面向整个企业或组织,且整体是结构化的。
- 数据库管理系统是位于用户和 OS 之间的用来管理数据库的软件。
- 正确答案:对
- 【对应知识点】:DBMS 的定义。数据库管理系统 (DBMS) 是位于用户与操作系统 (OS) 之间的一种数据管理基础软件。
- 数据是信息的载体,信息是数据的内涵,二者不能混为一谈。
- 正确答案:错
- 【对应知识点】:数据与信息的关系。虽然二者有区别,但数据与其语义(内涵)是不可分的,信息在计算机中仍以数据的形式表现。
四、 填空题
- 数据库系统一般由数据库、******、******\、数据库管理员组成。
- 第一空:数据库管理系统 (DBMS)
- 第二空:应用程序(或应用系统)
- 【对应知识点】:数据库系统的组成。数据库系统 (DBS) 是指在计算机系统中引入数据库后的系统构成,主要包括:数据库 (DB)、数据库管理系统 (DBMS)、应用系统 (APP) 和 数据库管理员 (DBA)。
💡 复习小贴士
- 三级模式:模式是全体数据的逻辑结构(中心),外模式是用户视图(安全隔离),内模式是存储方式(物理细节)。
- 二级映像:外模式/模式映像保证逻辑独立性;模式/内模式映像保证物理独立性。
- ACID特性:这是评价事务的重要指标,包括原子性、一致性、隔离性和持续性。
第02讲:数据库系统的核心——数据模型(测验汇总)
一. 单项选择题
- 在关系数据模型中,一个二维表格的表头称为___。
- A、候选键
- B、关系模式
- C、关系
- D、元组
- 【对应知识点】:关系模型术语。 关系模式(Relational Schema)对应一个二维表的表头,它是对实体的结构描述,相对稳定。
- 能够更为直接地描述现实世界的结构数据模型是__。
- A、非关系型数据模型
- B、层次数据模型
- C、网状数据模型
- D、关系数据模型
- 【对应知识点】:网状模型的特点。 网状数据模型的优点是能够更为直接地描述现实世界,例如允许一个结点可以有多个双亲。
- 根据不同的抽象层次分,数据模型可分为三类,其中与具体的DBMS无关,用于数据库设计员与用户之间进行交流的是( )
- A、结构数据模型
- B、物理数据模型
- C、概念数据模型
- 【对应知识点】:数据模型分类。 概念数据模型(概念模型)是按用户观点对数据建模,与具体DBMS无关,是设计员与用户交流的语言。
- 以二维表格作为数据结构的数据模型是( )
- A、关系数据模型
- B、网状数据模型
- C、面向对象数据模型
- D、层次数据模型
- 【对应知识点】:关系模型定义。 关系模型使用二维表结构来组织数据、描述实体及其之间的联系。
二. 多项选择题
- 关系模型的优点包括( )
- A、数据操作是集合操作
- B、存取路径对用户透明
- C、建立在严格的数学理论基础上
- D、概念单一
- 【对应知识点】:关系模型优势。 关系模型具有四个主要优点:严格的数学理论基础(关系代数)、概念单一(实体和联系均用关系表示)、存取路径透明(提高独立性)、以及操作的对象和结果均为集合。
- 构成数据模型的三要素包括:( )
- A、完整性约束
- B、数据操作
- C、数据结构
- D、数据模式
- 【对应知识点】:数据模型三要素。 数据模型由数据结构(静态特性)、数据操作(动态特性)和完整性约束(制约规则)三部分组成。
三. 判断题
- 关系模型的存取路径对用户透明是指用户可清楚地看到数据库中的数据是如何进行存取的。
- 答案:错
- 【对应知识点】:透明性含义。 “透明”在计算机科学中通常指“看不见”。存取路径对用户透明意味着用户无需了解物理存储结构和存取细节,简化了开发工作。
- 在用户观点下,所有结构数据模型中数据的逻辑结构都是一张二维表。
- 答案:错
- 【对应知识点】:数据结构区别。 只有关系模型是以二维表为结构的;层次模型的数据结构是树,网状模型的数据结构是图(有向图)。
- 在E-R模型中,使用菱形框来表示联系,且联系至少与两条无向边相连。
- 答案:对
- 【对应知识点】:E-R图规范。 E-R图中,矩形表示实体,椭圆表示属性,菱形表示联系,并用无向边将联系与相关实体连接。
四. 填空题
- 在用户观点下,通常所说的一张二维表称为一个_____。
- 答案:关系
- 【对应知识点】:关系术语。 在关系模型中,对应通常所说的一张二维表即为一个“关系(Relation)”,它对应E-R模型中的实体集。
💡 临考速记比喻:
- 概念模型(E-R图) 就像是装修前的“草图”,是给房东(用户)看的,不涉及具体用什么牌子的水泥。
- 结构模型(关系模式) 就像是“施工蓝图”,通过表格定义了房间(实体)和走廊(联系)。
- 三要素 就是房子的“骨架(结构)”、“住人的活动(操作)”和“承重墙不能拆的规矩(约束)”。
第03讲:SQL数据定义语句——章节测验题目整理
一. 单项选择题
-
以下关于使用索引准则,错误的是( )
- A、一般情况下,应在经常被查询的列上创建索引,以便提高查询速度。
- B、关键字的范围值进行搜索的列、按关键字的排序顺序访问的列适合创建索引。
- C、创建查询的列、作为关键字所在的列、外键所在的列或在连接查询中经常使用的列适合创建索引。
- D、为了提高查询的速度,在每个基本表上创建越多的索引越好。
- 【对应知识点】:使用索引的准则。 虽然索引能提高查询速度,但它会占用磁盘空间,并降低插入、删除和修改等操作数据记录的速度,因此并非越多越好。
-
当要删除某个数据库对象时,如删除基本表的指定索引,执行的语句中使用关键字是( )
- A、DROP
- B、DELETE
- C、REMOVE
- D、ALTER
- 【对应知识点】:SQL数据定义语句。 在SQL中,
CREATE用于创建,ALTER用于修改,而DROP关键字专门用于删除数据库、基本表或索引等对象。
-
以下关于索引的描述,错误的是( )
- A、使用索引的目的是能够快速访问表中的记录,提高查询速度。
- B、每个索引都有一个特定的索引码与表中的记录关联。
- C、一个基本表可以拥有多个聚簇索引。
- D、索引是对数据库表中一个或多个列的值进行排序的逻辑结构。
- 【对应知识点】:索引的分类。 聚簇索引会改变数据的物理排序方式,使得数据行的物理顺序与索引键值顺序一致,因此每个表只能有一个聚簇索引。
-
在创建索引时,若指定索引列的排列按降序排列,则正确的关键字是( )
- A、DESC
- B、AES
- C、DSC
- D、ASC
- 【对应知识点】:建立索引。 在建立索引的语法格式中,可以通过
ASC(升序,默认)或DESC(降序)来指定排列方式。
二. 填空题
-
在MySQL中,要切换到指定数据库时,需使用关键词__。
- 答案:USE
- 【对应知识点】:使用数据库。 命令格式为
USE <database_name>;用于选择或切换当前操作的数据库。
-
查看存储引擎的语句是__。
- 答案:SHOW ENGINES;(或
SHOW ENGINES \G;) - 【对应知识点】:存储引擎。 MySQL提供了插件式的存储引擎,可以通过
SHOW ENGINES;来查看服务器支持的引擎类型及默认引擎。
- 答案:SHOW ENGINES;(或
三. 判断题
-
在MySQL中,当用CREATE DATABASE创建一个数据库时,就会在存储设备上生成一个数据库文件,用于保存数据库中的所有基本表。
- 答案:错
- 【对应知识点】:MySQL的数据库构成。 在MySQL中,每创建一个数据库,会在特定文件夹中创建一个与数据库同名的文件夹,而每个基本表会生成独立的存储文件(如
.ibd文件)。
-
在创建基本表时,若表的属性是由多个属性列组成的,则需分别在这些属性列的后面加上关键字 PRIMARY KEY。
- 答案:错
- 【对应知识点】:创建基本表。 如果主键由多个列组成(复合主键),不能在列级定义,而必须使用表级完整性约束条件,格式为
PRIMARY KEY (属性列1, 属性列2, ...)。
-
主键是一种特殊的唯一性索引,它与唯一性索引的一个区别在于主键不允许为空,而唯一性索引允许有一个空值。
- 答案:对
- 【对应知识点】:索引的分类。 主键约束会自动创建唯一性聚簇索引且强制非空;唯一性索引(UNIQUE)则限制值唯一,但在非聚簇索引下通常允许存在 NULL 值。
-
MySQL服务器可以支持多种字符集,在同一台服务器、同一个数据库甚至同一个表的不同字段都可以使用相同的字符集。
- 答案:对
- 【对应知识点】:字符集。 MySQL的字符集和校验规则支持四个级别的默认设置:服务器级、数据库级、表级和列级,因此支持在不同层级灵活配置。
💡 临考技巧:
- DML vs DDL:
INSERT/UPDATE/DELETE是操纵数据(内容),CREATE/ALTER/DROP是定义结构(框架)。 - 聚簇索引:想象成字典的拼音目录,物理上就按这个顺序排,所以只能有一个;非聚簇索引像字典的部首查字表,物理顺序没变,只是多了一本索引小册子。
以下为您提取的第04讲“MySQL语言基础与单表查询”章节测验题目及对应的知识点整理:
一、 单选题
-
题目:在MySQL中,用于表示字符串型数据的符号是_____。
- 正确选项:B、单引号(' ')
- 知识点:MySQL 标点符号规范。字符串型和日期时间类型的数据通常使用单引号表示。
-
题目:以下可以获取当前日期和时间的函数是____。
- 正确选项:C、NOW()
- 知识点:单表查询常用函数。
NOW()用于获得当前日期和时间,返回类型为DATETIME。
-
题目:在MySQL中,用于查询学生表中所有学生的学号和姓名的语句是___。
- 正确选项:C、SELECT Sno, Sname FROM Students;
- 知识点:无条件查询(投影查询)。使用
SELECT <目标列表达式> FROM <表名>结构来提取特定属性列。
-
题目:MySQL的语句在___环境下是大小写不敏感的。
- 正确选项:C、Windows
- 知识点:MySQL 大小写规范。MySQL 在 Windows 环境下大小写不敏感,而在 Linux 环境下,数据库名、表名等是大小写敏感的。
二、 填空题
-
题目:已知选课表(Reports)中包含属性列(Sno, Cno, Racadmicyear, Rterm, Grade),要查询显示Reports表中各门功课的的最低成绩:
SELECT Cno, ______ FROM Reports GROUP BY ___________;- 答案:
MIN(Grade);Cno - 知识点:分组统计与聚合函数。使用
GROUP BY对指定列(Cno)分组,并配合聚合函数MIN()计算每组的最小值。
- 答案:
-
题目:已知选课表(Reports)中包含属性列(Sno, Cno, Racadmicyear, Rterm, Grade),要查询显示Reports表中每位学生获得的最高成绩:
SELECT Sno, ______ FROM Reports GROUP BY ___________;- 答案:
MAX(Grade);Sno - 知识点:分组统计与聚合函数。使用
GROUP BY按学生学号(Sno)分组,并使用MAX()统计最高分。
- 答案:
-
题目:在MySQL中,查询语句除了以“;”结束,还可以以__作为结束符。
- 答案:
\g或\G - 知识点:SQL语句书写规则。每条命令必须以分号(
;)、\g或\G结束。
- 答案:
三、 判断题
-
题目:在MySQL中,可以使用LIMIT子句实现分段显示查询结果。
- 正确答案:对
- 知识点:分页显示。使用
LIMIT子句可以控制返回结果的行数和起始偏移量,实现分页。
-
题目:在 Linux 环境下,MySQL 中数据库名是大小写敏感的。
- 正确答案:对
- 知识点:MySQL 大小写规范。在 Linux 环境下,数据库名、表名、变量名严格区分大小写。
-
题目:SQL 语句必须写在一行,不能分行。
- 正确答案:错
- 知识点:SQL语句书写规则。SQL语句可以单行或多行书写,为了可读性,建议各子句分行并缩进。
💡 学习建议:
这部分内容就像是学习一门新语言的语法和基础查字典方法。4.1 规范是语法的“条条框框”(如 Windows 宽容而 Linux 严谨的大写规定),而 4.2 与 4.3 的查询语句则是最核心的“表达方式”。掌握了这些,你就能自如地从数据库这个“大图书馆”里精准地抽取你想要的信息了。
以下为您提取并整理的第05讲“MySQL 数据操纵语句——复杂查询”章节测验题目及其对应的知识点填充:
一、 单选题
-
题目:在 MySQL 中,会自动去除重复的属性列的连接查询是____。
- 正确选项:A、自然连接
- 填充知识点:自然连接 (Natural Join) 是一种特殊的等值连接,它要求两个关系中进行比较的属性列必须是相同的属性组,并且在结果关系中把重复的属性列去掉。
-
题目:在多表连接查询中,若超过三个表 JOIN,可能导致性能问题,主要是因为____。
- 正确选项:C、笛卡尔积爆炸
- 填充知识点:多表连接性能优化。多表连接相当于 嵌套 for 循环,非常消耗资源;连接表的数量过多会导致 SQL 查询性能严重下降。
-
题目:自然连接(NATURAL JOIN)的关键特性是_____。
- 正确选项:B、自动匹配同名同类型的列进行等值比较,并且结果去掉重复的列
- 填充知识点:自然连接的自动化机制。它会自动将两个表中所有相同的属性列进行等值比较,并从运行结果中消去相同的列。
-
题目:使用 UNION 合并两个查询结果时,要求两者的什么必须一致?
- 正确选项:A、列数和数据类型
- 填充知识点:并操作 (UNION) 的前提条件。参加并操作的各个结果表,其列数必须相同,且对应属性的数据类型也必须相同。
-
题目:在嵌套查询中,可用于检查子查询是否存在返回结果的谓词是_____。
- 正确选项:C、EXISTS
- 填充知识点:存在性判定谓词。在嵌套查询中,
EXISTS和NOT EXISTS用于检查子查询是否能返回结果。
二、 判断题
-
题目:集合查询中的 UNION 操作会自动去掉重复的记录。
- 正确答案:对
- 填充知识点:UNION 的去重特性。标准 SQL 提供的
UNION命令会将多个SELECT语句的结果进行集合并操作,并自动去掉重复元组。
-
题目:使用 ANY 比较时,只需满足子查询中的任意一条记录即可。
- 正确答案:对
- 填充知识点:量化谓词的语义。在嵌套查询中,
ANY表示子查询结果集中的“任意一个”,满足其中之一条件即为真。
-
题目:自然连接一定是等值连接,但等值连接不一定是自然连接。
- 正确答案:对
- 填充知识点:连接查询的包含关系。自然连接是等值连接的一种特殊形式,它在等值匹配的基础上增加了“自动去重”的限制。
-
题目:笛卡尔积是两张表所有记录的交叉组合,结果集大小为两表记录数的乘积。
- 正确答案:对
- 填充知识点:交叉连接 (CROSS JOIN)。它返回的是两个表所有行的全组合(广义笛卡尔积),若表 A 有 m 行,表 B 有 n 行,结果集将有 m × n 行。
-
题目:多表连接查询中,连接的表数量越多,查询性能越高。
- 正确答案:错
- 填充知识点:查询性能原则。应当严格控制连接表的数量,不要连接不必要的表,以免由于资源过度消耗导致性能下降。
💡 形象化总结:
如果把数据库查询比作侦探查案:
- 连接查询 是把不同嫌疑人的档案(表)拼在一起,自然连接 就像是智能助手发现两人都有“身份证号”这一列,自动对齐并只保留一份。
- 多表连接 就像是同时追踪十个线索,如果线索太多,侦探的大脑(CPU)会过载(性能下降)。
- UNION 就像是将两份名单合并,并细心地划掉那些重复出现的名字。
- EXISTS 就像是问:“监控里有没有出现过这个人?”(只要有结果就行,不在乎具体是谁)。
以下为您从提供的资料中提取并整理的第07讲“关系数据模型”章节测验题目及对应的知识点解析:
一、 单选题
-
题目:设有关系 $R(A,B,C)$ 和关系 $S(B,C,D)$,那么与 $R \bowtie S$ 等价的关系代数表达式是_____。
- 正确答案:A、$\pi{1,2,3,6}(\sigma{2=4 \land 3=5}(R \times S))$
- 知识点填充:自然连接(Natural Join)的定义。自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组(本题为 $B, C$ 列,即 $R$ 的第2, 3列和 $S$ 的第1, 2列,对应笛卡尔积后的第4, 5列),并在结果中去掉重复属性列。
-
题目:设属性 $A$ 是关系 $R$ 的主键中的属性,则属性 $A$ 不能取空值 (NULL),这是_____。
- 正确答案:D、实体完整性规则
- 知识点填充:实体完整性(Entity Integrity)。该规则规定关系中的主键属性不能取空值,以保证每个元组都是可标识且可区分的。
-
题目:已知有学生表 Students,学院表 Department,选课表 Reports。若在 Reports 表中将 $Sno$ 的外键约束设置成不执行(受限),在 Students 表中将 $Dno$ 的外键约束设置成级联删除。若要删除 Department 表中的一个元组,且该学院有学生,学生也有选课记录,是否能删除成功?
- 正确答案:A、不可以
- 知识点填充:参照完整性(Referential Integrity)处理策略。虽然第一层(学院到学生)是级联的,但第二层(学生到选课)是受限删除(Restricted)。在删除链条中,只要有一处违反了完整性约束且被设置为“拒绝执行”,整个删除操作都会失败。
二、 填空题
-
题目:在关系代数的专门关系运算中,从表中取出指定属性列的操作称为____。
- 正确答案:投影(Projection)
- 知识点填充:专门的关系运算。投影是从 $R$ 中选取需要的列组成新关系,属于垂直方向的操作。
-
题目:已知有关系 $D1={a,b,c}$,关系 $D2={(1,2),(2,3)}$,则笛卡尔积 $D1 \times D2$ 的度为____,基数为__。
- 正确答案:3;6
- 知识点填充:笛卡尔积的性质。度(Degree)是各关系度数之和($D1$ 是1元,$D2$ 是2元,和为3);基数(Cardinality)是各关系元组数的乘积($3 \times 2 = 6$)。
三、 多选题
- 题目:已知有关系 $D1={a,b,c}$,关系 $D2={(1,2),(2,3)}$,则以下不属于 $D1 \times D2$ 中的元组是:
- 正确答案:A、(1,2,b);B、(b,(2,3))
- 知识点填充:笛卡尔积的元组组成。笛卡尔积 $D1 \times D2$ 的元组应由 $D1$ 的元素作为第一分量,$D2$ 的元组作为后两个分量,形式应为 $(d1, d2{1}, d2{2})$。A项顺序错误,B项括号嵌套形式不符合扁平化的元组定义。
四、 判断题
-
题目:在提出数据库的查询操作时,选择运算应尽早执行。
- 正确答案:对
- 知识点填充:查询优化策略。这是优化策略中最基本的一条,通过尽早过滤掉不相关的行,可以减少后续连接等复杂运算的数据量。
-
题目:关系模式是对一个关系的“型”的描述,关系是在关系模式约束之下的若干实体的集合。
- 正确答案:对
- 知识点填充:关系模式与关系的联系。关系模式(Schema)是静态的描述,而关系(Relation)是元组的集合,是模式在某一时刻的具体值。
-
题目:已知有关系 $R(A,B,C)$ 和关系 $S(D,E)$,则有 $R \bowtie S = R \times S$。
- 正确答案:对
- 知识点填充:自然连接的特殊情况。自然连接要求寻找相同的属性列进行等值匹配;当两个关系没有共同属性时,它会退化为笛卡尔积运算。
-
题目:参照关系中的外键和对应被参照关系的主键必须同名。
- 正确答案:错
- 知识点填充:参照完整性规范。外键与相应的主键不一定要同名,只要它们定义在同一个(或一组)域上即可。
💡 核心知识总结:
第七讲的内容是数据库系统的数学基石。你可以把它想象成搭建乐高积木的说明书:
- 7.1 规定了积木块的长相(度、基数、键的定义)。
- 7.2 规定了积木怎么插才稳固(三类完整性)。
- 7.3 提供了搬动和筛选积木的工具(关系代数)。
- 7.4 则是教你如何用最省力的方法搬完积木(查询优化)。
以下为您从提供的资料(the sources)中提取并整理的第10讲“数据库的安全与保护”章节测验题目及对应的知识点填充:
一、 单选题
-
题目:当发现某用户账号被非法盗用时,最应立即采取的措施是___。
- 正确选项:D、修改该用户密码并终止其会话
- 知识点填充:用户鉴别与安全性保护。DBMS提供的最外层安全性保护措施是鉴别合法用户[7, 10.1]。当账号泄露时,通过
ALTER USER修改密码并立即终止非法会话,是防止数据泄露或破坏的最直接手段[10, 10.1]。
-
题目:某企业数据库中的员工薪资表需限制不同部门经理仅能访问本部门数据,最合理的实现方案是__。
- 正确选项:D、基于部门创建多组视图并分别授权
- 知识点填充:视图机制 (View Mechanism)。视图是物理上不存在的虚拟表[10.1, 17]。通过为不同用户建立不同的视图,可以限制用户只能访问局部数据,视图作为授权单位能有效提高系统的安全性[10.1, 21]。
-
题目:在授予用户权限时,使用
WITH GRANT OPTION子句的主要风险是_____。- 正确选项:D、允许用户将自身权限转授他人
- 知识点填充:存取权限控制。在执行
GRANT语句时,若带有WITH GRANT OPTION子句,获得权限的用户将拥有“分授权”的权利,即能够向其他用户授予或撤销自己拥有的那些权限[10.1, 69]。
-
题目:以下哪种封锁协议可避免“脏读”,但允许“不可重复读”?
- 正确选项:B、二级封锁协议
- 知识点填充:封锁协议 (Locking Protocol)。
- 一级协议:防“丢失修改”。
- 二级协议:一级协议加上读数据前加 S 锁(读完即释放),可防止脏读,但由于锁不持续到事务结束,仍可能出现不可重复读。
- 三级协议:S 锁持续到事务结束,可防止不可重复读。
二、 多选题
- 题目:事务的持久性可通过__机制保障。
- 正确选项:A、数据转储;B、日志文件
- 知识点填充:数据库恢复技术与事务特性。事务的持续性 (Durability) 指事务一旦提交,对数据的改变应是永久性的[10.3, 27]。恢复技术的基本原理是建立数据冗余,主要通过定期数据转储(后备副本)和建立日志文件(记录更新操作)来实现[10.4, 41-42]。
三、 填空题
-
题目:当删除被参照关系中的元组时,若采用____策略,则会自动删除参照关系中所有相关元组。
- 答案:级联删除 (Cascades)
- 知识点填充:参照完整性约束。当删除被参照表数据时,为了维护一致性,系统可采取级联 (Cascades)、受限 (Restricted) 或置空值 (Nullifies) 三种策略[10.2, 24]。
-
题目:若事务 T 对数据 A 加了 S 锁,则其他事务对 A 只能加____锁。
- 答案:S (或共享锁)
- 知识点填充:排他锁 (X锁) 与共享锁 (S锁)。如果事务对数据对象加了 S 锁(共享锁),其他事务只能再加 S 锁进行读操作,而不能加 X 锁进行修改操作[10.3, 34]。
四、 判断题
-
题目:脏读是指一个事务读取了另一个事务已经提交的数据。
- 正确答案:错
- 知识点填充:并发冲突类型。脏读 (Dirty Read) 是指一个事务读取了另一个事务尚未提交的中间结果,如果该事务随后回滚,则读取的数据是不正确的[10.3, 30]。
-
题目:触发器可用于实现比 CHECK 约束更复杂的业务规则。
- 正确答案:对
- 知识点填充:触发器 (Triggers)。触发器是一种预编译且附着在表上的特殊存储过程。其优点是比普通的完整性约束条件功能更强、更加灵活。
-
题目:序列化隔离级别通过让所有事务串行执行来保证数据一致性。
- 正确答案:对
- 知识点填充:隔离性级别 (Isolation Levels)。序列化 (Serializable) 是最高的隔离级别,通过让每个用户的事务依次执行,可避免脏读、不可重读和幻读,但系统性能最低[10.3, 33]。
💡 形象化类比:
如果把数据库比作银行:
- 安全性 (Security) 是银行的门禁和摄像头,防的是非法入侵者(Q1, Q3)。
- 完整性 (Integrity) 是存取款规则,防的是合规操作导致的逻辑错误(如余额不能为负,Q6, Q9)。
- 并发控制 (Concurrency) 则是业务窗口的排号机,防止两个柜员同时修改同一个存折导致账目乱套(Q4, Q7, Q8, Q10)。
- 数据库恢复 (Recovery) 就是异地灾备中心,即便总行着火了,也能靠备份和流水单(日志)还原每一笔钱(Q5)。
