课程
数据库系统概论复习试题及答案
数据库系统概论复习试题及答案
第一章 绪论
一、选择题
1. 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是( )阶段。
- A. 数据库系统
- B. 文件系统
- C. 人工管理
- D. 数据项管理
2. 数据库的概念模型独立于( )。
- A. 具体的机器和DBMS
- B. E-R图
- C. 信息世界
- D. 现实世界
3. 数据库的基本特点是( )。
- A. (1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余大,易移植 (4)统一管理和控制
- B. (1)数据可以共享(或数据结构化) (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制
- C. (1)数据可以共享(或数据结构化) (2)数据互换性 (3)数据冗余小,易扩充 (4)统一管理和控制
- D. (1)数据非结构化 (2)数据独立性 (3)数据冗余小,易扩充 (4)统一管理和控制
4. ( )是存储在计算机内有结构的数据的集合。
- A. 数据库系统
- B. 数据库
- C. 数据库管理系统
- D. 数据结构
5. 数据库中存储的是( )。
- A. 数据
- B. 数据模型
- C. 数据以及数据之间的联系
- D. 信息
6. 数据库中,数据的物理独立性是指( )。
- A. 数据库与数据库管理系统的相互独立
- B. 用户程序与DBMS的相互独立
- C. 用户的应用程序与存储在磁盘上数据库中的数据是相互独立的
- D. 应用程序与数据库中数据的逻辑结构相互独立
7. 数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指( )。
- A. 同一个应用中的多个程序共享一个数据集合
- B. 多个用户、同一种语言共享数据
- C. 多个用户共享一个数据文件
- D. 多种应用、多种语言、多个用户相互覆盖地使用数据集合
8. 数据库系统的核心是( )。
- A. 数据库
- B. 数据库管理系统
- C. 数据模型
- D. 软件工具
9. 下述关于数据库系统的正确叙述是( )。
- A. 数据库系统减少了数据冗余
- B. 数据库系统避免了一切冗余
- C. 数据库系统中数据的一致性是指数据类型一致
- D. 数据库系统比文件系统能管理更多的数据
10. 将数据库的结构划分成多个层次,是为了提高数据库的①和②。
- ① A. 数据独立性 B. 逻辑独立性 C. 管理规范性 D. 数据的共享
- ② A. 数据独立性 B. 物理独立性 C. 逻辑独立性 D. 管理规范性
11. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是( )。
- A. DBS包括DB和DBMS
- B. DBMS包括DB和DBS
- C. DB包括DBS和DBMS
- D. DBS就是DB,也就是DBMS
12. 在数据库中,产生数据不一致的根本原因是( )。
- A. 数据存储量太大
- B. 没有严格保护数据
- C. 未对数据进行完整性控制
- D. 数据冗余
13. 数据库管理系统(DBMS)是( )。
- A. 数学软件
- B. 应用软件
- C. 计算机辅助设计
- D. 系统软件
14. 数据库系统的特点是( )、数据独立、减少数据冗余、避免数据不一致和加强了数据保护。
- A. 数据共享
- B. 数据存储
- C. 数据应用
- D. 数据保密
15. 数据库系统的最大特点是( )。
- A. 数据的三级模式和二级映像
- B. 数据共享性
- C. 数据的结构化
- D. 数据独立性
16. 数据库管理系统能实现对数据库中数据的插入、修改和删除等操作,这种功能称为( )。
- A. 数据定义功能
- B. 数据管理功能
- C. 数据操纵功能
- D. 数据控制功能
答案: 1-5 AABBC 6-10 CDBABB 11-15 ADDAA 16 C
二、填空题
1. 数据管理技术经历了 人工管理、文件系统 和 数据库系统 三个阶段。
2. 数据库是长期存储在计算机内、有组织的、可共享的 数据集合。
3. DBMS是指 数据库管理系统,它是位于 用户 和 操作系统 之间的一层管理软件。
4. 数据库管理系统的主要功能有 数据定义功能、数据库的组织存储和管理、数据操纵功能、数据库的运行管理和数据库的建立以及维护等几个方面。
5. 数据独立性又可分为 逻辑数据独立性 和 物理数据独立性。
6. 当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的 物理独立性。
7. 数据模型是由 数据结构、数据操作 和 完整性约束 三部分组成的。
8. 数据结构 是对数据系统的静态特性的描述,数据操作 是对数据库系统的动态特性的描述。
9. 数据库体系结构按照 模式、外模式 和 内模式 三级结构进行组织。
10. 实体之间的联系可抽象为三类,它们是 1:1、1:m 和 m:n。
11. 数据冗余可能导致的问题有 ① 浪费存储空间及修改麻烦 和 ② 潜在的数据不一致性。
第二章 关系数据库
一、选择题
1. 关系数据库管理系统应能实现的专门关系运算包括( )。
- A. 排序、索引、统计
- B. 选择、投影、连接
- C. 关联、更新、排序
- D. 显示、打印、制表
2. 关系模型中,一个关键字是( )。
- A. 可由多个任意属性组成
- B. 至多由一个属性组成
- C. 可由一个或多个其值能惟一标识该关系模式中任何元组的属性组成
- D. 以上都不是
3. 自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( )。
- A. 元组
- B. 行
- C. 记录
- D. 属性
4. 关系运算中花费时间可能最长的运算是( )。
- A. 投影
- B. 选择
- C. 笛卡尔积
- D. 除
5. 关系模式的任何属性( )。
- A. 不可再分
- B. 可再分
- C. 命名在该关系模式中可以不惟一
- D. 以上都不是
6. 在关系代数运算中,五种基本运算为( )。
- A. 并、差、选择、投影、自然连接
- B. 并、差、交、选择、投影
- C. 并、差、选择、投影、乘积
- D. 并、差、交、选择、乘积
7. 设有关系R,按条件f对关系R进行选择,正确的是( )。
- A. R×R
- B. R⋈R
- C. σf(R)
- D. ∏f(R)
答案: BCDDA CC
二、填空题
1. 一个关系模式的定义格式为:关系名(属性名1, 属性名2, …, 属性名n)
2. 一个关系模式的定义主要包括 关系名、属性名、属性类型、属性长度 和 关键字。
3. 关系代数运算中,传统的集合运算有 笛卡尔积、并、交 和 差。
4. 关系代数运算中,基本的运算是 并、差、笛卡尔积、投影 和 选择。
5. 关系代数运算中,专门的关系运算有 选择、投影 和 连接。
6. 关系数据库中基于数学上两类运算是 关系代数 和 关系演算。
7. 已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系:
- 系关系的主关键字是
系编号 - 系关系的外关键字
无 - 学生关系的主关键字是
学号 - 外关键字
系编号
三、应用题
关系R和S如下图所示,试计算 R÷S。
关系R:
| A | B | C | D |
|---|---|---|---|
| a | b | c | d |
| a | b | e | f |
| a | b | h | k |
| b | d | e | f |
| b | d | d | l |
| c | k | c | d |
| c | k | e | f |
关系S:
| C | D |
|---|---|
| c | d |
| e | f |
第三章 关系数据库标准语言SQL
一、选择题
1. SQL语言是( )的语言,易学习。
- A. 过程化
- B. 非过程化
- C. 格式化
- D. 导航式
2. SQL语言是( )语言。
- A. 层次数据库
- B. 网络数据库
- C. 关系数据库
- D. 非数据库
3. SQL语言具有( )的功能。
- A. 关系规范化、数据操纵、数据控制
- B. 数据定义、数据操纵、数据控制
- C. 数据定义、关系规范化、数据控制
- D. 数据定义、关系规范化、数据操纵
4. SQL语言具有两种使用方式,分别称为交互式SQL和( )。
- A. 提示式SQL
- B. 多用户SQL
- C. 嵌入式SQL
- D. 解释式SQL
5. 假定学生关系是S(S#, SNAME, SEX, AGE),课程关系是C(C#, CNAME, TEACHER),学生选课关系是SC(S#, C#, GRADE)。要查找选修”COMPUTER”课程的”女”学生姓名,将涉及到关系( )。
- A. S
- B. SC, C
- C. S, SC
- D. S, C, SC
6. 若用如下的SQL语句创建一个student表:
CREATE TABLE student(
NO C(4) NOT NULL,
NAME C(8) NOT NULL,
SEX C(2),
AGE N(2)
)
可以插入到student表中的是( )。
- A. (‘1031’, ‘曾华’, 男, 23)
- B. (‘1031’, ‘曾华’, NULL, NULL)
- C. (NULL, ‘曾华’, ‘男’, ‘23’)
- D. (‘1031’, NULL, ‘男’, 23)
第8到第11题基于以下三个表:
- 学生表
S(S#, SN, SEX, AGE, DEPT)- 课程表
C(C#, CN)- 学生选课表
SC(S#, C#, GRADE)其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩。
8. 检索所有比”王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是( )。
-- A
SELECT SN, AGE, SEX FROM S
WHERE AGE > (SELECT AGE FROM S WHERE SN='王华')
-- B
SELECT SN, AGE, SEX FROM S WHERE SN='王华'
-- C
SELECT SN, AGE, SEX FROM S
WHERE AGE > (SELECT AGE WHERE SN='王华')
-- D
SELECT SN, AGE, SEX FROM S WHERE AGE > 王华.AGE
9. 检索选修课程”C2”的学生中成绩最高的学生的学号。正确的SELECT语句是( )。
-- A
SELECT S# FROM SC WHERE C#='C2'
AND GRADE >= (SELECT GRADE FROM SC WHERE C#='C2')
-- B
SELECT S# FROM SC WHERE C#='C2'
AND GRADE IN (SELECT GRADE FROM SC WHERE C#='C2')
-- C
SELECT S# FROM SC WHERE C#='C2'
AND GRADE NOT IN (SELECT GRADE FROM SC WHERE C#='C2')
-- D
SELECT S# FROM SC WHERE C#='C2'
AND GRADE >= ALL (SELECT GRADE FROM SC WHERE C#='C2')
二、填空题
1. SQL是 结构化查询语言。
2. 视图是一个虚表,它是从 一个或几个基本表(或视图) 中导出的表。在数据库中,只存放视图的 定义,不存放视图的 视图对应的数据。
3. 设有如下关系表R:R(No, NAME, SEX, AGE, CLASS),主关键字是NO。写出实现下列功能的SQL语句:
-- ① 插入一个记录(25, "李明", "男", 21, "95031")
INSERT INTO R VALUES(25, '李明', '男', 21, '95031')
-- ② 插入"95031"班学号为30、姓名为"郑和"的学生记录
INSERT INTO R(NO, NAME, CLASS) VALUES(30, '郑和', '95031')
-- ③ 将学号为10的学生姓名改为"王华"
UPDATE R SET NAME='王华' WHERE NO='10'
-- ④ 将所有"95101"班号改为"95091"
UPDATE R SET CLASS='95091' WHERE CLASS='95101'
-- ⑤ 删除学号为20的学生记录
DELETE FROM R WHERE NO=20
-- ⑥ 删除姓"王"的学生记录
DELETE FROM R WHERE NAME LIKE '王%'
三、第三章附加题(本章会出大题)
1. 设学生课程数据库中有三个关系:
- 学生关系
S(S#, SNAME, AGE, SEX) - 学习关系
SC(S#, C#, GRADE) - 课程关系
C(C#, CNAME)
用SQL语句表达下列操作:
(1)检索选修课程名称为”MATHS”的学生的学号与姓名
SELECT S#, SNAME
FROM S, SC, C
WHERE S.S# = SC.S#
AND C.C# = SC.C#
AND CNAME = 'MATHS'
(2)检索至少学习了课程号为”C1”和”C2”的学生的学号
SELECT S# FROM SC
WHERE C# = 'C1'
AND S# IN (SELECT S# FROM SC WHERE C# = 'C2')
(3)检索年龄在18到20之间(含18和20)的女生的学号、姓名和年龄
SELECT S#, SNAME, AGE FROM S
WHERE AGE BETWEEN 18 AND 20
(4)检索平均成绩超过80分的学生学号和平均成绩
SELECT S#, AVG(GRADE) AS '平均成绩'
FROM SC
GROUP BY S#
HAVING AVG(GRADE) > 80
(5)检索选修了全部课程的学生姓名
SELECT SNAME FROM S
WHERE NOT EXISTS (
SELECT * FROM C
WHERE NOT EXISTS (
SELECT * FROM SC
WHERE S# = S.S# AND C# = C.C#
)
)
(6)检索选修了三门课以上的学生的姓名
SELECT SNAME FROM S, SC
WHERE S.S# = SC.S#
GROUP BY SNAME
HAVING COUNT(*) > 3
2. 设学生-课程数据库中包括三个表:
- 学生表:
Student(Sno, Sname, Sex, Sage, Sdept) - 课程表:
Course(Cno, Cname, Ccredit) - 学生选课表:
SC(Sno, Cno, Grade)
试用SQL语言完成下列操作:
(1)查询选修课程包括”1042”号学生所学的课程的学生学号
SELECT DISTINCT SNO FROM SC SCX
WHERE NOT EXISTS (
SELECT * FROM SC SCY
WHERE SCY.SNO = '1042'
AND NOT EXISTS (
SELECT * FROM SC SCZ
WHERE SCZ.SNO = SCX.SNO AND SCZ.CNO = SCY.CNO
)
)
(2)创建视图S_CS_VIEW,包括CS系学生的学号、姓名、性别
CREATE VIEW S_CS_VIEW AS
SELECT SNO, SNAME, SEX FROM STUDENT
WHERE Sdept = 'CS'
(3)通过上面创建的视图修改数据,把王平的名字改为王慧平
UPDATE S_CS_VIEW
SET SNAME = '王慧平'
WHERE SNAME = '王平'
(4)创建一选修数据库课程信息的视图,视图名称为datascore_view,包含学号、姓名、成绩
CREATE VIEW datascore_view AS
SELECT SNO AS 学号, SNAME AS 姓名, GRADE AS 成绩
FROM STUDENT, SC, COURSE
WHERE STUDENT.SNO = SC.SNO
AND COURSE.CNO = SC.CNO
AND CNAME = '数据库'
第四章 数据库的安全性
一、选择题
1. 下面哪个不是数据库系统必须提供的数据控制功能( )。
- A. 安全性
- B. 可移植性
- C. 完整性
- D. 并发控制
2. 保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。这是指数据的( )。
- A. 安全性
- B. 完整性
- C. 并发控制
- D. 恢复
3. 数据库的完整性是指数据的( )。
- A. 正确性和相容性
- B. 安全性
- C. 并发控制
- D. 恢复
4. 在数据系统中,对存取权限的定义称为( )。
- A. 命令
- B. 授权
- C. 定义
- D. 审计
5. 数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的( )。
- A. 可靠性
- B. 一致性
- C. 完整性
- D. 安全性
答案: BABDD
二、填空题
1. 安全性控制的一般方法有 用户标识鉴定、存取控制、审计、数据加密 和视图的保护五级安全措施。
2. 存取权限包括两方面的内容,一个是 要存取的数据对象,另一个是 对此数据对象进行操作的类型。
3. 在数据库系统中对存取权限的定义称为 授权。
4. 在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权使用 GRANT 语句,收回所授的权限使用 REVOKE 语句。
5. DBMS存取控制机制主要包括两部分:自主存取控制、强制存取控制。
6. 当对某一表进行诸如 INSERT、DELETE、UPDATE 这些操作时,SQL Server就会自动执行触发器所定义的SQL语句。
第五章 数据库完整性
一、选择题
1. 在数据库系统中,保证数据及语义正确和有效的功能是( )。
- A. 并发控制
- B. 存取控制
- C. 安全控制
- D. 完整性控制
2. 关于主键约束以下说法错误的是( )。
- A. 一个表中只能设置一个主键约束
- B. 允许空值的字段上不能定义主键约束
- C. 允许空值的字段上可以定义主键约束
- D. 可以将包含多个字段的字段组合设置为主键
3. 在表或视图上执行除了( )以外的语句都可以激活触发器。
- A. INSERT
- B. DELETE
- C. UPDATE
- D. CREATE
4. 数据库的( )是指数据的正确性和相容性。
- A. 安全性
- B. 完整性
- C. 并发控制
- D. 恢复
5. 在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的( )约束。
- A. 实体完整性
- B. 参照完整性
- C. 用户自定义
- D. 用户操作
答案: DCDBC
二、填空题
1. 数据库的完整性是指数据的 实体完整性、参照完整性 和 用户定义完整性。
2. 实体完整性是指在基本表中,主属性不能取空值。
3. 参照完整性是指在基本表中,外码可以是空值或者另一个关系主码的有效值。
4. 为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就 拒绝此操作。
第六章 关系数据理论
一、选择题
1. 关系规范化中的删除操作异常是指①,插入操作异常是指②。
- ① A. 不该删除的数据被删除 B. 不该插入的数据被插入 C. 应该删除的数据未被删除 D. 应该插入的数据未被插入
2. 设计性能较优的关系模式称为规范化,规范化主要的理论依据是( )。
- A. 关系规范化理论
- B. 关系运算理论
- C. 关系代数理论
- D. 数理逻辑
3. 规范化过程主要为克服数据库逻辑结构中的插入异常、删除异常以及( )的缺陷。
- A. 数据的不一致性
- B. 结构不合理
- C. 冗余度大
- D. 数据丢失
4. 当关系模式R(A, B)已属于3NF,下列说法中( )是正确的。
- A. 它一定消除了插入和删除异常
- B. 仍存在一定的插入和删除异常
- C. 一定属于BCNF
- D. A和C都是
5. 关系模型中的关系模式至少是( )。
- A. 1NF
- B. 2NF
- C. 3NF
- D. BCNF
6. 在关系DB中,任何二元关系模式的最高范式必定是( )。
- A. 1NF
- B. 2NF
- C. 3NF
- D. BCNF
7. 候选关键字中的属性称为( )。
- A. 非主属性
- B. 主属性
- C. 复合属性
- D. 关键属性
8. 消除了部分函数依赖的1NF的关系模式,必定是( )。
- A. 1NF
- B. 2NF
- C. 3NF
- D. 4NF
9. 关系模式的候选关键字可以有①,主关键字有②。
- A. 0个 B. 1个 C. 1个或多个 D. 多个
10. 根据关系数据库规范化理论,关系数据库中的关系要满足第一范式。下面”部门”关系中,因哪个属性而使它不满足第一范式?
部门(部门号, 部门名, 部门成员, 部门总经理)
- A. 部门总经理
- B. 部门成员
- C. 部门名
- D. 部门号
答案: ADACBA BDDCBD
二、填空题
1. 在关系A(S, SN, D)和B(D, CN, NM)中,A的主键是S,B的主键是D,则D在S中称为 外部键。
2. 对于非规范化的模式,经过 ① 使属性域变为简单域 转变为1NF,将1NF经过 ② 消除非主属性对主关键字的部分依赖 转变为2NF,将2NF经过 ③ 消除非主属性对主关键字的传递依赖 转变为3NF。
3. 在关系数据库的规范化理论中,在执行”分解”时,必须遵守规范化原则:保持原有的依赖关系和 无损连接性。
三、综合练习
1. 已知学生关系模式 S(Sno, Sname, SD, Sdname, Course, Grade)
其中:Sno学号、Sname姓名、SD系名、Sdname系主任名、Course课程、Grade成绩。
(1)写出关系模式S的基本函数依赖和主码。
关系模式S的基本函数依赖如下:
Sno → SnameSD → SdnameSno → SD(Sno, Course) → Grade关系模式S的码为:
(Sno, Course)
(2)原关系模式S为几范式?为什么?分解成高一级范式。
原关系模式S是属于 1NF 的,码为
(Sno, Course),非主属性中的成绩完全依赖于码,而其它非主属性对码的函数依赖为部分函数依赖,所以不属于2NF。消除非主属性对码的部分函数依赖,分解成2NF:
S1(Sno, Sname, SD, Sdname)S2(Sno, Course, Grade)
(3)将关系模式分解成3NF,并说明为什么?
关系模式S1中存在
Sno → SD,SD → Sdname,即非主属性Sdname传递依赖于Sno,所以S1不是3NF。进一步分解:
S11(Sno, Sname, SD)S12(SD, Sdname)分解后的关系模式S11、S12满足3NF。对关系模式S2不存在非主属性对码的传递依赖,故属于3NF。
所以,原模式分解为3NF如下:
- S11(Sno, Sname, SD)
- S12(SD, Sdname)
- S2(Sno, Course, Grade)
2. 设有如下关系R(假设每门课程只有一名教师教)
(1)它为第几范式?为什么?
它是 2NF。因为R的候选关键字为”课程名”。
依赖关系:
课程名 → 教师名,教师名 → 课程名,教师名 → 教师地址,所以课程名 → 教师地址。即存在非主属性”教师地址”对候选关键字课程名的传递函数,因此R不是3NF。但因为不存在非主属性对候选关键字的部分函数依赖,所以R是2NF。
(2)是否存在删除操作异常?若存在,则说明是在什么情况下发生的?
存在。当删除某门课程时会删除不该删除的教师的有关信息。
(3)将它分解为高一级范式,分解后的关系是如何解决分解前可能存在的删除操作异常问题?
分解为高一级范式:
- R1(课程相关信息)
- R2(教师相关信息)
分解后,若删除课程数据时,仅对关系R1操作,教师地址信息在关系R2中仍然保留,不会丢失教师方面的信息。
第七章 数据库设计
一、选择题
1. 在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的( )阶段。
- A. 需求分析
- B. 概念设计
- C. 逻辑设计
- D. 物理设计
2. 在关系数据库设计中,设计关系模式是( )的任务。
- A. 需求分析阶段
- B. 概念设计阶段
- C. 逻辑设计阶段
- D. 物理设计阶段
3. 数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是( )。
- A. 建立库结构
- B. 扩充功能
- C. 加载数据
- D. 系统调试
4. 在数据库的概念设计中,最常用的数据模型是( )。
- A. 形象模型
- B. 物理模型
- C. 逻辑模型
- D. 实体联系模型
答案: BCBDB
二、填空题
1. 数据库设计的几个步骤是:需求分析 → 概念设计 → 逻辑设计 → 物理设计 → 系统实施 → 系统运行和维护
2. 在数据库设计中,把数据需求写成文档,它是各类数据描述的集合,包括数据项、数据结构、数据流、数据存储和数据加工过程等的描述,通常称为 数据字典。
三、应用题
设有如下实体:
- 学生:学号、单位、姓名、性别、年龄、选修课程名
- 课程:编号、课程名、开课单位、任课教师号
- 教师:教师号、姓名、性别、职称、讲授课程编号
- 单位:单位名称、电话、教师号、教师名
上述实体中存在如下联系:
- 一个学生可选修多门课程,一门课程可为多个学生选修
- 一个教师可讲授多门课程,一门课程可为多个教师讲授
- 一个单位可有多个教师,一个教师只能属于一个单位
各实体属性:
- 单位:单位名、电话
- 学生:学号、姓名、性别、年龄
- 教师:教师号、姓名、性别、职称
- 课程:编号、课程号
该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下:
单位(单位名,电话)
教师(教师号,姓名,性别,职称,单位名)
课程(课程编号,课程名,单位名)
学生(学号,姓名,性别,年龄,单位名)
讲授(教师号,课程编号)
选修(学号,课程编号)
第八章 数据库编程
一、选择题
1. 修改存储过程使用的语句是( )。
- A. ALTER PROCEDURE
- B. DROP PROCEDURE
- C. INSERT PROCEDURE
- D. DELETE PROCEDURE
2. 创建存储过程的语句是( )。
- A. ALTER PROCEDURE
- B. DROP PROCEDURE
- C. CREATE PROCEDURE
- D. INSERT PROCEDURE
3. 下面( )组命令,将变量count值赋值为1。
- A.
DECLARE @count int; SELECT @count=1 - B.
DIM count=1 - C.
DECLARE count int; SELECT count=1 - D.
DIM @count; SELECT @count=1
4. 在SQL Server中删除存储过程用( )。
- A. ROLLBACK
- B. DROP PROC
- C. DEALLOCATE
- D. DELETE PROC
5. 在SQL Server编程中,可使用( )将多个语句捆绑。
- A.
{} - B.
BEGIN...END - C.
() - D.
[]
答案: ACABB
二、填空题
1. 存储过程是存放在 SQL SERVER服务器上 的预先定义并编译好的T-SQL语句。
2. 游标是系统为用户开设的一个 数据缓冲区,存放SQL语句的执行结果。
第十章 数据库恢复技术
一、选择题
1. ( )是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
- A. 程序
- B. 命令
- C. 事务
- D. 文件
2. 事务的原子性是指( )。
- A. 事务中包括的所有操作要么都做,要么都不做
- B. 事务一旦提交,对数据库的改变是永久的
- C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的
- D. 事务必须是使数据库从一个一致性状态变到另一个一致性状态
3. 事务的一致性是指( )。
- A. 事务中包括的所有操作要么都做,要么都不做
- B. 事务一旦提交,对数据库的改变是永久的
- C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的
- D. 事务必须是使数据库从一个一致性状态变到另一个一致性状态
4. 事务的隔离性是指( )。
- A. 事务中包括的所有操作要么都做,要么都不做
- B. 事务一旦提交,对数据库的改变是永久的
- C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的
- D. 事务必须是使数据库从一个一致性状态变到另一个一致性状态
5. 事务的持续性是指( )。
- A. 事务中包括的所有操作要么都做,要么都不做
- B. 事务一旦提交,对数据库的改变是永久的
- C. 一个事务内部的操作及使用的数据对并发的其他事务是隔离的
- D. 事务必须是使数据库从一个一致性状态变到另一个一致性状态
6. 若数据库中只包含成功事务提交的结果,则此数据库就称为处于( )状态。
- A. 安全
- B. 一致
- C. 不安全
- D. 不一致
7. 若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为( )。
- A. 事务故障
- B. 系统故障
- C. 介质故障
- D. 运行故障
8. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为( )。
- A. 事务故障
- B. 系统故障
- C. 介质故障
- D. 运行故障
9. ( )用来记录对数据库中数据进行的每一次更新操作。
- A. 后援副本
- B. 日志文件
- C. 数据库
- D. 缓冲区
10. 用于数据库恢复的重要文件是( )。
- A. 数据库文件
- B. 索引文件
- C. 日志文件
- D. 备注文件
11. 数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括( )。
- A. 数据字典、应用程序、审计档案、数据库后备副本
- B. 数据字典、应用程序、日志文件、审计档案
- C. 日志文件、数据库后备副本
- D. 数据字典、应用程序、数据库后备副本
答案: CADCB BBCBC
二、填空题
1. 事务 是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
2. 若事务在运行过程中,由于种种原因,使事务未运行到正常终止点之间就被撤消,这种情况就称为 事务故障。
3. 数据库恢复是将数据库从 错误 状态恢复到 某一已知的正确状态 的功能。
4. 数据库系统在运行过程中,可能会发生故障。故障主要有 事务故障、系统故障、介质故障 和 计算机病毒 四类。
5. 数据库系统是利用存储在外存上其他地方的 冗余数据 来重建被破坏的数据库。它主要有两种:后援副本 和 日志文件。
第十一章 并发控制
一、选择题
1. 设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是( )。
| T1 | T2 |
|---|---|
| ① 读A=10 | |
| ② A=A-5 写回 | |
| ③ 读A=10 | |
| ④ A=A-8 写回 |
- A. 该操作不存在问题
- B. 该操作丢失修改
- C. 该操作不能重复读
- D. 该操作读”脏”数据
2. 设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是( )。
| T1 | T2 |
|---|---|
| ① 读A=10, B=5 | |
| ② 读A=10, A=A*2 写回 | |
| ③ 读A=20, B=5 求和25 验证错 |
- A. 该操作不存在问题
- B. 该操作丢失修改
- C. 该操作不能重复读
- D. 该操作读”脏”数据
3. 解决并发操作带来的数据不一致性总是普遍采用( )。
- A. 封锁
- B. 恢复
- C. 存取控制
- D. 协商
4. 设有两个事务T1、T2,其并发操作如下所示:
| T1 | T2 |
|---|---|
| ① 读A=100, A=A*2 写回 | |
| ② 读A=10 | |
| ③ ROLLBACK 恢复A=100 |
附录:事务ACID特性速查
| 特性 | 含义 |
|---|---|
| 原子性 (Atomicity) | 事务中包括的所有操作要么都做,要么都不做 |
| 一致性 (Consistency) | 事务必须是使数据库从一个一致性状态变到另一个一致性状态 |
| 隔离性 (Isolation) | 一个事务内部的操作及使用的数据对并发的其他事务是隔离的 |
| 持续性 (Durability) | 事务一旦提交,对数据库的改变是永久的 |













