第一章 绪论
一单项选择题
1.在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是 阶段。
A.数据库系统 B.文件系统 C.人工管理 D.数据项管理 答案:A
2.数据库的概念模型独立于 。
A.具体的机器和DBMS B.E-R图 C.信息世界 D.现实世界 答案:A
3. B 是存储在计算机内有结构的数据的集合。
A.数据库系统 B.数据库 C.数据库管理系统 D.数据结构 答案:B
4.数据库中存储的是 。
A.数据 B.数据模型 C.数据以及数据之间的联系 D.信息 答案:C
5. 数据库中,数据的物理独立性是指 。
A.数据库与DBMS的相互独立 B.用户程序与DBMS的相互独立
C.用户的应用程序与存储在磁盘上数据库中的数据是相互独立的
D.应用程序与数据库中数据的逻辑结构相互独立 答案:C
6. 下述关于数据库系统的正确叙述是 答案:A
A.数据库系统减少了数据冗余 B.数据库系统避免了一切冗余
C.数据库系统中数据的一致性是指数据类型一致 D.数据库系统比文件系统能管理更多的数据 7. 数据库(DB)、数据库系统(DBS)和数据库管理系统(DBMS)三者之间的关系是 。答案:A
A.DBS包括DB和DBMS B.DDMS包括DB和DBS C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS
8. 在数据库中,产生数据不一致的根本原因是 。答案:D
A.数据存储量太大 B.没有严格保护数据 C.未对数据进行完整性控制 D.数据冗余
9. 数据库管理系统(DBMS)是 。
A.数学软件 B.应用软件 C.计算机辅助设计 D.系统软件 答案:D
10. 数据库管理系统(DBMS)的主要功能是 。
A.修改数据库 B.定义数据库 C.应用数据库 D.保护数据库 答案:B
11. 数据库系统的特点是 、数据独立、减少数据冗余、避免数据不一致和加强了数据保护。
A.数据共享 B.数据存储 C.数据应用 D.数据保密 答案:A
12. 数据库系统的最大特点是 。
A.数据的三级抽象和二级独立性 B.数据共享性 C.数据的结构化 D.数据独立性 答案:A
13. 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除等操作,这种功能称为 。
A.数据定义功能 B.数据管理功能 C.数据操纵功能 D.数据控制功能 答案:C
14. 数据库管理系统是 。答案:B
A.操作系统的一部分 B.在操作系统支持下的系统软件 C.一种编译程序 D.一种操作系统
15.据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特征的是()
A.外模式 B.内模式 C.存储模式 D.模式 答案:D
16.数据库系统的数据独立性是指 。
A.不会因为数据的变化而影响应用程序
B.不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
C.不会因为存储策略的变化而影响存储结构
D.不会因为某些存储结构的变化而影响其他的存储结构 答案:B
17.信息世界中的术语,与之对应的数据库术语为 。
A.文件 B.数据库 C.字段 D.记录 答案:D
18.传统的数据模型分类,数据库系统可以分为三种类型 。 答案:C
A.大型、中型和小型 B.西文、中文和兼容 C.层次、网状和关系 D.数据、图形和多媒体
19. 数据库系统的核心和基础是( )
A.数据库 B.数据库管理系统
C.数据模型 D.软件工具 答案:C
20.下列四项中,不属于数据库系统的特点的是( )
A.数据结构化 B.数据由DBMS统一管理和控制
C.数据冗余度大 D.数据独立性高 答案:C
21. 概念模型是现实世界的第一层抽象,这一类模型中最著名的模型是( )
A.层次模型 B.关系模型
C.网状模型 D.实体-联系模型 答案:D
22. 要保证数据库的逻辑数据独立性,需要修改的是( )
A.模式与外模式之间的映象 B.模式与内模式之间的映象
C.模式 D.三级模式 答案:A
23. 关系数据模型的基本数据结构是( )
A.树 B.图 C.索引 D.关系 答案:D
24. 有一名为“列车运营”实体,含有:车次、日期、实际发车时间、实际抵达时间、情况摘要等属性,该实体主码是( )
A.车次 B.日期
C.车次+日期 D.车次+情况摘要 答案:C
25. 数据库的三级模式是指( )
A. 外模式、模式、内模式 B.逻辑模式、物理模式、概念模式
C. 表模式、视图模式、索引模式 D.用户模式、管理员模式、程序员模式 答案:A
26 相对于非关系模型,关系数据模型的缺点之一是( )。
A.存取路径对用户透明,DBMS需查询优化 B.数据结构简单
C.数据独立性高 D.有严格的数学基础 答案:A
27 数据的逻辑独立性是指( )
A.内模式改变,模式不变 B.模式改变,内模式不变
C.模式改变,外模式和应用程序不变
D.内模式改变,外模式和应用程序不变 答案:C
28 下列四项中,不属于数据库系统的主要特点的是( )。
A.数据结构化 B.数据的冗余度小
C.较高的数据独立性 D.程序的标准化 答案:D
二、多项选择题
1.数据库的基本特点是 。 答案:ABCD
A.数据可以共享(或数据结构化) B.数据独立性 C.数据冗余小,易扩充 D.统一管理和控制
2.在数据管理技术的发展过程中,经历了 阶段。
A. 人工管理 B.文件系统 C.档案管理 D.数据库系统 答案:ABD
3. 数据库的三级模式包括
A.外模式 B.内模式 C.存储模式 D.模式 答案:ABD
4. 10. 数将数据库的结构划分成多个层次,是为了提高数据库的 。
A.数据的冗余 B.逻辑独立性 C.数据的共享 D.物理独立性 答案: BD
5.数据库系统对硬件的较高要求是 。
A.足够大的内存 B.足够大的磁盘或磁盘阵列 C.较高的通道能力 D.软件丰富 答案:ABC
三、填空题
1. 数据管理技术经历了 、 和 三个阶段。 答案:①人工管理 ②文件系统 ②数据库系统
2. 数据库是长期存储在计算机内、有 的、可 的数据集合。 答案:①组织 ②共享
3.DBMS是指 它是位于 和 之间的一层管理软件。 答案:①数据库管理系统 ②用户 ③操作系统
4. 数据库管理系统的主要功能有 、 、数据库的运行管理和数据库的建立以及维护等4个方面。
答案:①数据定义功能 ②数据操纵功能
5. 数据独立性又可分为 和 。 答案:①逻辑数据独立性 ②物理数据独立性
6. 当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的 。 答案:物理独立性
7. 数据库系统中最重要的软件是 ,最重要的人员是 答案:DBMS, DBA
四、判断题
1.数据冗余可能导致的问题有浪费存储空间及修改麻烦和潜在的数据不一致性。 答案:对
2.实体之间的联系可抽象为三类,它们是 1∶1 、1∶m和 m∶n。 答案:对
3. 数据库体系结构按照 模式 、 外模式 和 内模式 三级结构进行组织。 答案:对
4. 数据结构是对数据系统的动态特性的描述,数据操作是对数据库系统的静态特性的描述。
答案:错。解析:前者是静态描述,后者是动态描述。
5. 数据模型是由数据结构、数据操作和完整性约束三部分组成的。 答案:对
6. 概念模型属于机器世界 答案:错。解析:概念模型应属于信息世界。
7.数据库是长期存储在计算机内的、有组织、可共享的大量的数据的集合。 答案:对
8.数据库管理员是开发数据库的专门人员。 答案:错。解析:应是管理数据库的专门人员。
五:简答题
6. 试述数据、数据库、数据库管理系统、数据库系统的概念。
数据是描述事物的符号记录。
数据库是长期存储在计算机内的、有组织的、可共享的数据集合。
数据库管理系统 是位于用户与操作系统之间的具有数据定义、数据操纵、数据库的运行管理、数据库的建立和维护功能的一层数据管理软件。
数据库系统是在计算机系统中引入数据库后的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
- 设计题
1.假设教学管理规定:
①一个学生可选修多门课,一门课有若干学生选修;②一个教师可讲授多门课,一门课只有一个教师讲授;
③一个学生选修一门课,仅有一个成绩。
学生的属性有学号、学生姓名;教师的属性有教师编号,教师姓名;课程的属性有课程号、课程名。
要求:根据上述语义画出ER图,要求在图中画出实体的属性并注明联系的类型;
解答:
2. 某系有若干个课程组,每个课程组有若干位教师,每个教师可参加若干个课程组,每个课程组管理若干门课程,每门课程只属于一个课程组。教师有工号、姓名、职称的属性,课程组有 名称、专业方向的属性,课程有名称、学时、考核方式的属性。
请根据给定语义画出E-R图,并在图上注明联系类型。
解答:
第2章 关系数据库
一、单项选择题
1、关系数据库管理系统应能实现的专门关系运算包括 。
A.排序、索引、统计 B.选择、投影、连接 C.关联、更新、排序 D.显示、打印、制表 答案:B
2、关系模型中,一个关键字是 。
A.可由多个任意属性组成 B.至多由一个属性组成
C.可由一个或多个其值能唯一标识该关系模式中任何元组的属性组成 D.以上都不是 答案:C
3、自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 。
A.元组 B.行 C.记录 D.属性 答案:D
4、关系运算中花费时间可能最长的运算是 。
A.投影 B.选择 C.笛卡尔积 D.除 答案:C
5.关系模式的任何属性 。
A.不可再分 B.可再分 C.命名在该关系模式中可以不惟一 D.以上都不是 答案:A
6.在关系代数运算中,五种基本运算为 。
A.并、差、选择、投影、自然连接 B.并、差、交、选择、投影
C.并、差、选择、投影、乘积 D.并、差、交、选择、乘积 答案:C
7、设有关系R,按条件f对关系R进行选择,正确的是 。
A.R´R B.R wv R C. sf(R) D.Pf(R) 答案:C
8、如图所示,两个关系R1和R2,它们进行 运算后得到R3。
R2
D | E | M |
1 2 5 | M N M | I J K |
R1
A | B | C |
A C D | 1 2 1 | X Y Y |
R3
A | B | C | D | E |
A D C | 1 1 2 | X Y Y | M M N | I I J |
A.交 B.并 C.笛卡尔积 D.连接 答案:D。根据B 与D列相等联接。
9. 己知关系R和S,R∩S等价于( )
A. (R-S)-S B. S-(S-R) C. (S-R)-R D. S-(R-S) 答案: B
二、多项选择题
1.关系代数的运算包括:
A.交 B.并 C.笛卡尔积 D.连接 答案:ABCD
2. 关系代数运算中,传统的集合运算有:
A.交 B.并 C.笛卡尔积 D.连接 答案:ABC
3. 关系代数运算中,专门的关系运算有:
A.交 B.并 C.投影 D.连接 答案:CD
4. 关系的完整性约束包括:ABC
A.实体完整性 B.参照完整性 C 用户定义完整性 D 关系完整性 答案:ABC
5. 关系模式的构成包括:
A. 属性名集合 B. 关系名 C. 属性来自的域 D.属性向域的映射 ABCD
6. 常用的关系操作有:
A.查询 B. 插入 C. 删除 D. 修改 答案:ABCD
三、填空题
1、一个关系模式的定义格式为 。 答案:关系名(属性名1,属性名2,…,属性名n)
2、.一个关系模式的定义主要包括 、 、 、 和 。 答案:①关系名 ②属性名 ③属性类型 ④属性长度 ⑤关键字
3、.关系代数运算中,传统的集合运算有 、 、 和 。 答案:①笛卡尔积 ②并 ③交 ④差
4、关系代数运算中基本的运算是 、 、 、 和 。 答案:①并 ②差 ③笛卡尔积 ④投影 ⑤选择
5、关系代数运算中,专门的关系运算有 、 和 。 答案:①选择 ②投影 ③连接
6、关系数据库中基于数学上两类运算是 和 。 答案:①关系代数 ②关系演算
7、.已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主码是 ① ,系关系的外码 ② ,学生关系的主码是 ③ ,学生关系的外码是 ④
答案:①系编号 ②无 ③学号 ④系编号
8. 一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的 。 答案:属性
9. 关系数据库的实体完整性规则规定基本关系的 都不能取 。 答案:主属性 空值(或NULL)
在关系A(S,SN,D)和B(D,CN,NM)中,A的主码是S,B的主码是D,则D在A中称为 。 答案:外码
10.关系R与S的交可以用关系代数的5种基本运算表示为 。 答案:R-(R-S)
四、判断题
1. 已知系(系编号,系名称,系主任,电话,地点), 系关系的主码是系编号。 对
2. 在关系模型中,实体和实体间的联系都是用关系来表示的。 对
3.关系是静态的、稳定的,关系模式是动态的、随时间变化的。 错
4.候选码的值可以唯一地表示关系中的一个元组。 对
5. 候选码的属性称为主属性。 对
参照完整性是指基本关系R 的主属性不能取空值。 错
6. 关系的类型有基本关系、查询表和视图表。 对
7.表中不同的列不能出自同一个域。 错
8.任意两个元组的候选码可以相同。 错
9.关系中行的顺序和列的顺序都可以交换。 对
10. 关系的外码是允许有空值的。 对
六、设计题
1.设有如下所示的关系S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句:
(1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。
(2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。
(3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。
(4)检索”李强”同学不学课程的课程号(C#)。
(5)检索至少选修两门课程的学生学号(S#)。
(6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。
(7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。
(8)检索选修课程号为k1和k5的学生学号(S#)。
(9)检索选修全部课程的学生姓名(SNAME)。
(10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。
(11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。
解:本题各个查询语句对应的关系代数表达式表示如下:
(1). ∏C#,CNAME(σTEACHER=‘程军’(C))
(2). ∏S#,SNAME(σAGE>21∧SEX=”男”(C))
(3). ∏SNAME{swv [∏S#,C#(sc)÷∏C#(σTEACHER=‘程军’(C))]}
(4). ∏C#(C)- ∏C#(σSNAME=‘李强’(S) wv SC)
(5). ∏S#(σ[1]=[4]∧[2]≠[5] (SC × SC))
(6). ∏C#,CNAME(Cwv (∏S#,C#(sc)÷∏S#(S)))
(7). ∏S#(SCwv ∏C#(σTEACHER=‘程军’(C)))
(8). ∏S#,C#(sc)÷∏C#(σC#=’k1’∨ C#=’k5’(C))
(9). ∏SNAME{swv [∏S#,C#(sc)÷∏C#(C)]}
(10). ∏S#,C#(sc)÷∏C#(σS#=’2’(SC))
(11). ∏S#,SNAME{swv [∏S#(SCwv σCNAME=‘C语言’(C))]}
2.关系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 |
R÷S | |
A | B |
a | b |
c | k |
答案:
第3章 关系数据库标准语言SQL(程序设计题为重点)
一、单项选择题
1、SQL语言是 的语言,易学习。
A.过程化 B.非过程化 C.格式化 D.导航式 答案:B
2、SQL语言是 语言。
A.层次数据库 B.网络数据库 C.关系数据库 D.非数据库 答案:C
3、SQL语言具有 的功能。
A.关系规范化、数据操纵、数据控制 B.数据定义、数据操纵、数据控制
C.数据定义、关系规范化、数据控制 D.数据定义、关系规范化、数据操纵 答案:B
4、假定学生关系是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 答案:D
5、若用如下的SQL语句创建一个student表:
CREATE TABLE student(NO Char(4) NOT NULL,
NAME Char (8) NOT NULL,
SEX Char (2),
AGE int ) 可以插入到student表中的是 。
A.(‘1031’,‘曾华’,男,23) B.(‘1031’,‘曾华’,NULL,NULL)
C.(NULL,‘曾华’,‘男’,‘23’) D.(‘1031’,NULL,‘男’,23) 答案:B
9.学校数据库中有学生和宿舍两个关系:
学生(学号,姓名)和 宿舍(楼名,房间号,床位号,学号)
假设有的学生不住宿,床位也可能空闲。如果要列出所有学生住宿和宿舍分配的情况,包括没有住宿的学生和空闲的床位,则应执行()
A. 全外联接 B. 左外联接 C. 右外联接 D. 自然联接 答案:A
10.用下面的T-SQL语句建立一个基本表:
CREATE TABLE Student(Sno CHAR(4) PRIMARY KEY,
Sname CHAR(8) NOT NULL,
Sex CHAR(2),
Age INT)
可以插入到表中的元组是( )
A. '5021','刘祥',男,21 B. NULL,'刘祥',NULL,21
C. '5021',NULL,男,21 D. '5021','刘祥',NULL,NULL 答案:D
二、填空题
1、SQL是 。 答案:结构化查询语言
2、视图是一个虚表,它是从 ① 中导出的表。在数据库中,只存放视图的 ② ,不存放视图的 ③ 。
答案:①一个或几个基本表 ②定义 ③视图对应的数据
3、设有如下关系表R:
R(No,NAME,SEX,AGE,CLASS) 主关键字是NO
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。
写出实现下列功能的SQL语句。
- 入一个记录(25,“李明”,“男”,21,“95031”); 。
- 入“95031”班学号为30、姓名为“郑和”的学生记录; 。
- 学号为10的学生姓名改为“王华”; 。
- 所有“95101”班号改为“95091”; 。
- 除学号为20的学生记录; 。
- 除姓“王”的学生记录; 。
答案:
①INSERT INTO R VALUES(25,“李明”,“男”,21,“95031”)
②INSERT INTO R(NO,NAME,CLASS) VALUES(30,“郑和”,“95031”)
③UPDATE R SET NAME=“王华”WHERE NO=10
④UPDATE R SET CLASS=“95091”WHERE CLASS=“95101”
⑤DELETE FROM R WHERE NO=20
⑥DELETE FROM R WHERE NAME LIKE“%王%”
4. 在Student表的Sname列上建立一个唯一索引的SQL语句为:
CREATE Stusname ON student(Sname) 答案:UNIQUE INDEX
5. SELECT语句查询条件中的谓词“!=ALL”与运算符 等价。 答案:NOT IN
(四) 设教学数据库中有三个基本表:学生表S(SNO,SNAME,AGE,SEX),其属性分别表示学号、学生姓名、年龄、性别。课程表C(CNO,CNAME,TEACHER),其属性分别表示课程号、课程名、上课教师名。选修表SC(SNO,CNO,GRADE),其属性分别表示学号、课程号、成绩。
有如下SQL查询语句:
SELECT CNO
FROM C
WHERE CNO NOT IN
(SELECT CNO
FROM S,SC
WHERE S.SNO=SC.SNO
AND SNAME='张三');
请完成下列问题:
(1)用汉语句子阐述上述SQL语句的含义;
(2)用等价的关系代数表达式表示上述SQL查询语句。
解: (1)查询张三同学没有选修的课程的课程号。(2分)
(2)πCNO(C)- πCNO (sSNAME='张三' (S)
SC) 或πCNO(C)- πCNO (sSNAME='张三' (S
SC)) (2分)
(八)设有一个工程供应数据库系统,包括如下四个关系模式:
- S(SNO,SNAME, STATUS,CITY);
- P(PNO,PNAME,COLOR,WEIGHT);
- J(JNO,JNAME,CITY);
- SPJ(SNO,PNO,JNO,QTY);
供应商表S由供应商号、供应商名、状态、城市组成;
零件表P 由零件号、零件名、颜色、重量组成;
工程项目表J由工程号、项目名、城市组成;
供应情况表SPJ由供应商号、零件号、项目号、供应数量组成;
(1)用关系代数查询没有使用天津供应商生产的红色零件的工程号;
(2) 用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO;
(3)用SQL查询供应工程J1零件为红色的工程号JNO;
(4)用SQL查询没有使用天津供应商生产的零件的工程号;
(5)用SQL语句将全部红色零件改为蓝色;
(6)用SQL语句将(S2,P4,J6,400)插入供应情况关系。
(1)πJNO(J)- πJNO (sCITY='天津' (S)
SPJ
sCOLOR='红' (P))
(2)πPNO,JNO(SPJ)÷πPNO (sSNO='S1' (SPJ))
(3)SELECT DISTINCT JNO
FROM SPJ,P
WHERE SPJ.PNO=P.PNO AND
COLOR='红'AND
JNO='J1';
(4)SELECT JNO
FROM J
WHERE JNO NOT IN
(SELECT JNO
FROM SPJ
WHERE SNO IN
(SELECT SNO
FROM S
WHERE CITY='天津'));
(5)UPDATE P SET COLOR='蓝' WHERE COLOR='红';
(6)INSERT INTO SPJ VALUES('S2','P4','J6',400);
第4章 数据库安全性
一、单项选择题
1、下面哪个不是数据库系统必须提供的数据控制功能 。
A.安全性 B.可移植性 C.完整性 D.并发控制 答案:B
2、保护数据库,防止未经授权的或不合法的使用造成的数据泄漏、更改破坏。这是指数据的 。
A.安全性 B.完整性 C.并发控制 D.恢复 答案:A
3、在数据系统中,对存取权限的定义称为 。
A.命令 B.授权 C.定义 D.审计 答案:B
4、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的 。
A.可靠性 B.一致性 C.完整性 D.安全性 答案:D
5、下列SQL语句中,能够实现“收回用户ZHAO对学生表(STUD)中学号(XH)的修改权”这一功能的是 C
A.REVOKE UPDATE(XH) ON TABLE FROM ZHAO B.REVOKE UPDATE(XH) ON TABLE FROM PUBLIC
C.REVOKE UPDATE(XH) ON STUD FROM ZHAO D.REVOKE UPDATE(XH) ON STUD FROM PUBLIC
答案:C
6、把对关系SC的属性GRADE的修改权授予用户ZHAO的SQL语句是 答案:C
A)GRANT GRADE ON SC TO ZHAO B)GRANT UPDATE ON SC TO ZHAO
C)GRANT UPDATE (GRADE) ON SC TO ZHAO D)GRANT UPDATE ON SC (GRADE) TO ZHAO
7. 把对关系SPJ的属性QTY的修改权授予用户李勇的T-SQL语句是( )
A. GRANT QTY ON SPJ TO '李勇' B. GRANT UPDATE(QTY) ON SPJ TO '李勇'
C. GRANT UPDATE (QTY) ON SPJ TO 李勇
D. GRANT UPDATE ON SPJ (QTY) TO 李勇 答案:C
二、多项选择题
1. 保护数据安全性的一般方法是:
A. 设置用户标识 B.存取权限控制 C. 建立机房管理制度 D.建立完整性约束 答案:AB
2. 安全性控制的一般方法有:
A. 用户标识鉴定 B.存取控制 C.审计 D.数据加密 答案:ABCD
3.在SQL语言中,为了数据库的安全性,设置了对数据的存取进行控制的语句,对用户授权、收回所授的权限的语句是:AB
A.GRANT B.REVOKE C. CREATE D. DELETE 答案:AB
4.DBMS存取控制机制主要包括两部分: __。
A 用户存取控制 B管理员存取控制 C自主存取控制 D 强制存取控制 答案:CD
5. 计算机的三类安全问题包括:
A. 技术安全 B. 管理安全 C. 政策法律 D . 数据库安全 答案:ABC
第5章 数据库完整性
一、单项选择题
1、在数据库系统中,保证数据及语义正确和有效的功能是 ( )
A.并发控制 B.存取控制 C.安全控制 D.完整性控制 答案:D
2、关于主键约束以下说法错误的是( )
A. 一个表中只能设置一个主键约束 B.允许空值的字段上不能定义主键约束
C.允许空值的字段上可以定义主键约束 D.、可以将包含多个字段的字段组合设置为主键 答案:C
3、数据库的____是指数据的正确性和相容性。
A.安全性 B.完整性 C.并发控制 D.恢复 答案:B
4、在数据库的表定义中,限制成绩属性列的取值在0到100的范围内,属于数据的________约束。
- 实体完整性B、参照完整性C、用户自定义D、用户操作 答案:C
5.有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串,这一规则属于( )。
A.实体完整性约束 B.参照完整性约束 C.用户自定义完整性约束 D.关键字完整性约束 答案:C
二、多项选择题
1.数据库的完整性是指数据的:
A 实体完整性 B 参照完整性 C用户定义完整性 D 安全完整性 答案:ABC
2. 数据库的完整性是指:
A数据库的正确性B 数据库的安全性 C 数据库的相容性 D 数据库的加密性 答案:A C
3. 为了维护完整性,DBMS提供:
A 定义完整性的机制 B 完整性检查的方法 C 违约处理的方法 D 恢复机制 答案:ABC
4. DBMS 进行实体完整性检查时的操作包括:
A检查主码是否唯一 B检查主码各属性是否为空
C 主码不唯一就拒绝插入或修改 D主码各属性有为空时就拒绝插入或修改 答案:ABCD
5. 属于用户定义完整性的有:
A不允许取空值 B列值唯一 C 用CHECK 短语指定列值应满足的条件 D 定义主键 答案:ABC
三、填空题
1、实体完整性是指在基本表中, 。 答案:主属性不能取空值
2、参照完整性是指在基本表中, 。 答案:外码可以是空值或者另一个关系主码的有效值
3、为了保护数据库的实体完整性,当用户程序对主码进行更新使主码值不惟一时,DBMS就 。 答:拒绝此操作
第6章 关系数据理论(难点)
一、单项选择题
1.设计性能较优的关系模式称为规范化,规范化主要的理论依据是 。
A.关系规范化理论 B.关系运算理论 C.关系代数理论 D.数理逻辑 答案:A
2.当关系模式R(A,B)已属于3NF,下列说法中 是正确的。 答案:B
A.它一定消除了插入和删除异常 B.仍存在一定的插入和删除异常 C.一定属于BCNF D.A和C都是
3、关系模型中的关系模式至少是 。
A.1NF B.2NF C.3NF D.BCNF 答案:A
4、消除了部分函数依赖的1NF的关系模式,必定是 。
A.1NF B.2NF C.3NF D.4NF 答案:B
5.关系规范化中的删除异常是指 ( )
A.不该删除的数据被删除 B.不该插入的数据被插入
C.应该删除的数据未被删除 D.应该插入的数据未被插入 答案:A
6.有关系模式A(S,C,M),其中各属性的含义是:S:学生;C :课程;M:名次,其语义是:每一个学生选修每门课程的成绩有一定的名次,每门课程中每一名次只有一个学生(即没有并列名次),则关系模式A最高达到( )
A.1NF B.2NF
C.3NF D.BCNF 答案:D
二、多项选择题
1.关系规范化中的删除操作异常、插入操作异常是指 。
A.不该删除的数据被删除 B.不该插入的数据被插入 C.应该删除的数据未被删除 D.应该插入的数据未被插入 答案: AD
2.不规范的关系模式可能存在的问题是:
A.插入异常 B删除异常 C更新异常 D冗余太大 答案: ABCD
3. 数据依赖中最重要的是:
A多值依赖 B函数依赖 C关系依赖 D属性依赖 答案: AB
三、判断题
1.关系模式的分解不唯一 。 对
2. 关系模式的候选码可以有多个,主码只能有一个。 对
3. 关系规范化过程中,是可以逐步达到2NF、3NF及更高的等级。 对
4. 规范化实质是概念的单一化,即让一个关系描述一个概念、一个实体或者实体间的一种联系。若多余一个概念就把它分离出去。 对
四、填空题
1、在关系A(S,SN,D)和B(D,CN,NM中,A的主键是S,B的主键是D,则D在S中称为 。答案:外部键
2、对于非规范化的模式,经过 ① 转变为1NF,将1NF经过 ② 转变为2NF,将2NF经过 ③ 转变为3NF。
答案:①使属性域变为简单域 ②消除非主属性对主码的部分依赖③消除非主属性对主码的传递依赖
- 在关系数据库的规范化理论中,在执行“分解”时,必须遵守规范化原则:保持原有的依赖关系和 。
答案:无损连接性
4. 关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A→D,(B,C)→A},则侯选码是 , ,R∈ NF。 答案:A,(BC),BC
5. 已知关系R(A,B,C,D)和R上的函数依赖集F={A→C,D,C→B},则R∈ NF。 答案:2
五、综合练习
1、已知学生关系模式
S(Sno,Sname,SD,Sdname,Course,Grade)
其中:Sno学号、Sname姓名、SD系名、Sdname系主任名、Course课程、Grade成绩。
(1)写出关系模式S的基本函数依赖和主码。
(2)原关系模式S为几范式?为什么?分解成高一级范式,并说明为什么?
(3)将关系模式分解成3NF,并说明为什么?
(1)答: 关系模式S的基本函数依赖如下:
Sno→Sname,SD→Sdname,Sno→SD,(Sno,Course) →Grade
关系模式S的码为:(Sno,Course)。
(2)答: 原关系模式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。所以,原模式S(Sno,Sname,SD,Sdname,Course,Grade)按如下分解满足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中仍然保留,不会丢失教师方面的信息。
3、设某商业集团数据库中有一关系模式R如下:
R (商店编号,商品编号,数量,部门编号,负责人)
如果规定:(1) 每个商店的每种商品只的在一个部门销售;(2) 每个商店的每个部门只有一个负责人;(3) 每个商店的每种商品只有一个库存数量。
试回答下列问题:(1) 根据上述规定,写出关系模式R的基本函数依赖;
答: 关系模式S的基本函数依赖如下: (商店编号,商品编号) →部门编号,(商店编号,部门编号)→负责人,(商店编号,商品编号) →数量
(2) 找出关系模式R的候选码;答:关系模式R的码为:(商店编号,商品编号, 部门编号)。
(3) 试问关系模式R最高已经达到第几范式?为什么?答: 原关系模式R是属于1NF的,码为(商店编号,商品编号, 部门编号),非主属性对码的函数依赖全为部分函数依赖,所以不属于2NF。
消除非主属性对码的函数依赖为部分函数依赖,将关系模式分解成2NF如下:
R1(商店编号,商品编号, 部门编号, 数量) R2(商店编号,部门编号, 负责人)
(4) 如果R不属于3NF,请将R分解成3NF模式集。
答:将R分解为 R1(商店编号,商品编号, 部门编号, 数量) R2(商店编号,部门编号, 负责人)
分解后的R不存在传递的函数依赖,所以分解后的R已经是第3NF
4.设有关系STUDENT(S#,SNAME,SDEPT,MNAME,CNAME,GRADE),(S#,CNAME)为候选码,设关系中有如下函数依赖:
(S#,CNAME)→SNAME,SDEPT,MNAME
S#→SNAME,SDEPT,MNAME
(S#,CNAME)→GRADE
SDEPT→MNAME
试求下列问题:
(1)关系STUDENT属于第几范式?并说明理由。(3分)
(2)如果关系STUDENT不属于3NF,请将关系STUDENT逐步分解为 3NF。(7分)
要求:写出达到每一级范式的分解过程,并指明消除什么类型的函数依赖。
解:(1) 关系STUDENT是1NF,因为F中存在非主属性SNAME,SDEPT,MNAME对侯选码(S#,CNAME)的部分函数依赖,所以达不到2NF。
(2) ① 首先消除部分函数依赖(S#,CNAME)→SNAME,SDEPT,MNAME将关系分解为:
R1(S#,SNAME,SDEPT,MNAME),R2(S#,CNAME,GRADE)
R1(S#,SNAME,SDEPT,MNAME),S#为候选码,
R1的函数依赖集为:
F1 = { S#→SNAME,SDEPT,MNAME,SDEPT→MNAME}
R2(S#,CNAME,GRADE),S#为候选码,
R2的函数依赖集为:
F2={(S#,CNAME)→GRADE}
- 在关系R1中还存在非主属性MNAME对候选码S#的传递函数依赖S#→MNAME,所以将R1进一步分解:
R11(S#,SNAME,SDEPT) ,R12(SDEPT,MNAME)
其中:
R11(S#,SNAME,SDEPT) 以S#为候选码,
R11的函数依赖集为:
F11 = { S#→SNAME,SDEPT}
R12(SDEPT,MNAME) 以SDEPT为候选码,
R12的函数依赖集为:
F12 = { SDEPT→MNAME}
在R2、R11、R12关系模式中都消除了非主属性对码的传递函数依赖,所以上述三个关系模式均是3NF。
第7章 数据库设计(ER图及转换关系模式为重点)
一、单项选择题
1、在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是数据库设计的 阶段。
A.需求分析 B.概念设计 C.逻辑设计 D.物理设计 答案:B
2、在关系数据库设计中,设计关系模式是 的任务。
A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段 答案:C
3、数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是 。
A.建立库结构 B.扩充功能 C.加载数据 D.系统调试 答案:B
4、在数据库的概念设计中,最常用的数据模型是 。
A.形象模型 B.物理模型 C.逻辑模型 D.实体联系模型 答案:D
5、从E-R模型关系向关系模型转换时,一个M∶N联系转换为关系模型时,该关系模式的码是 。
A.M端实体的码 B.N端实体的码 C.M端实体码与N端实体码的组合 D.重新选取其他属性 答案:C
6、当局部E-R图合并成全局E-R图时可能出现冲突,不属于合并冲突的是 。
A.属性冲突 B.语法冲突 C.结构冲突 D.命名冲突 答案:B
7、概念模型独立于 ��� 。
A.E-R模型 B.硬件设备和DBMS C.操作系统和DBMS D.DBMS 答案:B
8、数据流程图(DFD)是用于描述结构化方法中 阶段的工具。
A.可行性分析 B.详细设计 C.需求分析 D.程序编码 答案:C
9、下图所示的E-R图转换成关系模型,可以转换为 关系模式。
A.1个 B.2个 C.3个 D.4个 答案:C
10. “对关系的哪些字段建立什么样的索引”这一设计内容应该属于数据库 设计阶段。
A 物理 B 逻辑 C 需求分析 D 实施 答案:A
11. 在E-R模型中,如果有3个不同的实体型,3个m:n联系,根据E-R模型转换为关系模型的规则,转换后关系的数目为( )。
A.4 B.5 C.6 D.7 答案:C
12. 从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是( )。
A.M端实体的关键字 B.N端实体的关键字
C.M端实体关键字与N端实体关键字组合 D.重新选取其他属性 答案:C
二、多项选择题
1、在设计分E-R图时,由于各个子系统分别有的应用,而且往往是由不同的设计人员设计的,所以各个分E-R图之间难免有不一致的地方,这些冲突主要有 。
A属性冲突 B命名冲突 C结构冲突 D 语义冲突 答案:ABC
2.属于数据库设计的步骤是 。
A需求分析 B概念结构设计 C逻辑结构设计 D 物理结构设计 答案:ABCD
3. 数据字典包括:
A数据项 B数据结构 C数据流 D 数据存储和数据加工过程 答案:ABCD
4. 定义用户外模式时应注意:
A 使用更符合用户习惯的别名 B 对不同级别用户定义不同的视图
C 简化用户的使用 D 通过设置复杂的关口保证安全 答案:ABC
5.满足以下准则的事物,可作为属性看待:
A 作为属性,不能再有需要描述的性质 B 属性不能与其他实体发生联系
C 联系上的属性要与实体有关系 D 属性是抽象的事物 答案:AB
三、填空题
数据库设计分为以下六个设计阶段:需求分析阶段、 、逻辑结构设计阶段、 、数据库实施阶段、数据库运行和维护阶段。 答案:概念结构设计阶段 物理结构设计阶段
五、应用题
(一)设某商业集团的仓库管理系统数据库有三个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。
公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。
-
-
- 试画出ER图,并在图上注明属性、联系的类型。
- 将ER图转换成关系模型,并注明主键和外键。
-
解:(1) ER图如图7.2所示。
1
N
1
N
(2)这个ER图可转换3个关系模式:
公司(公司编号,公司名,地址) 仓库(仓库编号,仓库名,地址,公司编号)
职工(职工编号,姓名,性别,仓库编号,聘期,工资)
带下划线的属性为主码,带波浪线的属性为外码。
(二)设有商店和顾客两个实体,“商店”有属性商店编号、商店名、地址、电话,“顾客”有属性顾客编号、姓名、地址、年龄、性别。假设一个商店有多个顾客购物,一个顾客可以到多个商店购物,顾客每次去商店购物有一个消费金额和日期,而且规定每个顾客在每个商店里每天最多消费一次。试画出E-R图,注明属性和联系类型,并将E-R模型转换成关系模式,要求关系模式主码加下划线 表示,外码加波浪线﹏﹏﹏﹏表示。
解:E-R模型:
关系模型:
顾客(顾客编号,姓名,地址,年龄,性别)
商店(商店编号,商店名,地址,电话)
购物(顾客编号,商店编号,日期,消费金额)
(三)某医院病房管理系统中,包括四个实体型,分别为:
科室:科名,科地址,科电话 病房:病房号,病房地址
医生:工作证号,姓名,职称,年龄 病人:病历号,姓名,性别
且存在如下语义约束:
① 一个科室有多个病房、多个医生,一个病房只能属于一个科室,一个医生只属于一个科室;
② 一个医生可负责多个病人的诊治,一个病人的主管医生只有一个;
③ 一个病房可入住多个病人,一个病人只能入住在一个病房。
注意:不同科室可能有相同的病房号。
完成如下设计:
(1)画出该医院病房管理系统的E-R图;(5分)
(2)将该E-R图转换为关系模型;(5分) (要求:1:1和1:n的联系进行合并)
(3)指出转换结果中每个关系模式的主码和外码。(5分)
解:(1)本题的E-R图如下图所示。
(2)转化后的关系模式如下:
科室(科名,科地址,科电话)
病房(病房号,病房地址,科名)
医生(工作证号,姓名,职称,年龄,科名)
病人(病历号,姓名,性别,主管医生,病房号,科名)
(3)每个关系模式的主码、外码如下:
科室:主码是科名;
病房:主码是科名十病房号,外码是科名;
医生:主码是工作证号,外码是科名;
病人:主码是病历号,外码是科名十病房号。
(四) 设某商业集团的商品供应管理系统数据库有三个实体集。一是“商品”实体集,属性有商品号、商品名、规格、单价等;二是“商店”实体集,属性有商店号、商店名、地址等;三是“供应商”实体集,属性有供应商编号、供应商名、地址等。
供应商与商品之间存在“供应”联系,每个供应商可供应多种商品,每种商品可向多个供应商订购,每个供应商供应每种商品有个月供应量;商店与商品间存在“销售”联系,每个商店可销售多种商品,每种商品可在多个商店销售,每个商店销售每种商品有个月计划数。
试画出反映上述问题的ER图,并将其转换成关系模型。
解:ER图如图7.3所示。
M M
N N
图7.3
(2)这个ER图可转换5个关系模式:
供应商(供应商编号,供应商名,地址) 商店(商店号,商店名,地址)
商品(商品号,商品名,规格,单价) 供应(供应商编号,商品号,月供应量)
销售(商店号,商品号,月计划数)
(五)设有如下实体:学生:学号、单位、姓名、性别、年龄、选修课程名 课程:编号、课程名、开课单位、任课教师号 教师:教师号、姓名、性别、职称、讲授课程编号 单位:单位名称、电话、教师号、教师名
上述实体中存在如下联系:
(1).一个学生可选修多门课程,一门课程可为多个学生选修;(2).一个教师可讲授多门课程,一门课程可为多个教师讲授;(3).一个单位可有多个教师,一个教师只能属于一个单位。
试完成如下工作:(1).分别设计学生选课和教师任课两个局部信息的结构E-R图。(2).将上述设计完成的E-R图合并成一个全局E-R图。(3).将该全局E-R图转换为等价的关系模型表示的数据库逻辑结构。
解:(1).学生选课、教师任课局部E-R图如下所示。
(2).合并后的全局E-R图如下所示。
为避免图形复杂,只在下面给出各实体属性:
单位:单位名、电话 学生:学号、姓名、性别、年龄
教师:教师号、姓名、性别、职称 课程:编号、课程号
(3).该全局E-R图转换为等价的关系模型表示的数据库逻辑结构如下:
单位(单位名,电话) 教师(教师号,姓名,性别,职称,单位名)
课程(课程编号,课程名,单位名)
学生(学号,姓名,性别,年龄,单位名) 讲授(教师号,课程编号)
选修(学号,课程编号)
第9章关系查询处理和查询优化
一、单项选择题
1. 简单的全表扫描方法的特点是:
A 逐一检查每个元组 B 检查效率较高 C 需要建立索引 D 需要排序 答案: A
2.查询树是用于何种优化的工具?
A物理优化B代数优化C 关系优化 D 结构优化 答案: B
3. 应该尽量先做的运算是:
A 连接 B 笛卡尔积 C 投影 D 选择 答案: D
4.物理优化的目的是:
A选择合理的数据模型 B选择合理的概念结构 C 选择合理的数据结构
D选择高效合理的操作算法和存取路径 答案: D
5. 对于小关系,选择操作的启发式规则是:
A.使用索引扫描 B 使用连接扫描 C 使用全表扫描 D 使用排序扫描
6. 如果两个表都在连接属性上进行了排序,连接操作的启发式规则是:
A 选排序-合并方法 B 选索引-排序方法 C 选全表扫描方法 D 选嵌套循环方法 答案: A
二、多项选择题
1. 查询树的启发式规则有:
A 选择运算尽可能先做 B 在一个对象上的投影和选择同时进行
C 把笛卡尔积与选择结合起来做连接运算 D 把投影与它之前或之后的双目运算结合起来 答:ABCD
2. 等值连接的常用方法有:
A 嵌套循环方法 B 排序-合并方法 C 索引连接方法 D HASH JOIN 方法 答案:ABCD
3. 查询处理步骤包括:
A 查询分析 B 查询检查 C 查询优化 D 查询执行 答案:ABCD
第10章数据库恢复技术
- 单项选择题
1、 是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列。
A.程序 B.命令 C.事务 D.文件 答案:C
2、事务的原子性是指 。
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 答案:A
3、事务的一致性是指 。
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据为的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 答案:D
4、事务的隔离性是指 。
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的
C.一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 答案:C
5、事务的持续性是指 。
A.事务中包括的所有操作要么都做,要么都不做 B.事务一旦提交,对数据库的改变是永久的
C.一个事力内部的操作及使用的数据对并发的其他事务是隔离的 D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 答案:B
6、若系统在运行过程中,由于某种原因,造成系统停止运行,致使事务在执行过程中以非控制方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为 。
A.事务故障 B.系统故障 C.介质故障 D.运行故障 答案:B
7、若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情况称为 。
A.事务故障 B.系统故障 C.介质故障 D.运行故障 答案:C
8、 用来记录对数据库中数据进行的每一次更新操作。
A.后援副本 B.日志文件 C.数据库 D.缓冲区 答案:B
9、用于数据库恢复的重要文件是 。
A.数据库文件 B.索引文件 C.日志文件 D.备注文件 答案:C
10、数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括 。
A.数据字典、应用程序、审计档案、数据库后备副本 B.数据字典、应用程序、日志文件、审计档案
C.日志文件、数据库后备副本 D.数据字典、应用程序、数据库后备副本 答案:C
11.事务的隔离性是指( )。
A.一个事务内部的操作及使用的数据对并发的其他事务是隔离的
B.事务一旦提交,对数据库的改变是永久的
C.事务中包括的所有操作要么都做,要么都不做
D.事务必须是使数据库从一个一致性状态变到另一个一致性状态 答案:A
12( )用来记录对数据库中数据进行的每一次更新操作。
A.后援副本 B.日志文件
C.数据库 D.缓冲区 答案:B
13事务是数据库运行的基本单位。如果一个事务执行成功,则全部更新提交;如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这样保持了数据库处于( )状态。
A.安全性 B.一致性
C.完整性 D.可靠性 答案:B
二、多项选择题
1. 数据库系统在运行过程中,可能会发生故障。故障主要有
A事务故障 B 系统故障 C 介质故障 D计算机病毒 答案:ABCD
2. 数据库系统是利用存储在外存上其他地方的冗余数据来重建被破坏的数据库。它主要有
A 后援副本 B 日志文件 C 磁盘阵列 D 镜像 答案: AB
3. 事务具有_____特性:
A 原子性(Atomicity ) B 一致性(consistency )
C 隔离性( Isolation ) D持续性(Durability ) 答:ABCD
4. 事务以 为终止。
A提交 B 存盘 C 删除 D 撤销 答案: AD
三、判断题
1.事务由单一的SQL 语句组成。 错
2. 事务的原子性是指事务的所有操作要么全做,要么全不做。 对
3. 很多故障都可能破坏数据库的一致性。 对
4.数据转储分为静态转储和动态转储。 对
5.发生介质故障后一般必须重新装入数据库。 对
6. 数据库镜像可以避免介质故障带来损失。 对
7.必须先写数据库,后写日志文件 错
8. 事务故障恢复和系统故障恢复必须使用日志文件 对
第11章 并发控制
- 单项选择题
1、.设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是 。
A.该操作不存在问题 B.该操作丢失修改 C.该操作不能重复读 D.该操作读“脏”数据 答案:B
T1 | T2 |
①读A=10 ② ③A=A-5写回 ④ | 读A=10 A=A-8写回 |
2、设有两个事务T1、T2,其并发操作如下所示,下面评价正确的是 。 答案:C
A.该操作不存在问题 B.该操作丢失修改 C.该操作不能重复读 D.该操作读“脏”数据
T1 | T2 |
①读A=10,B=5 ② ③读A=20,B=5 求和25验证错 | 读A=10 A=A*2写回 |
3、设有两个事务T1、T2,其并发操作如下所示,下列评价正确的是 。 答案:D
A.该操作不存在问题 B.该操作丢失修改 C.该操作不能重复读 D.该操作读“脏”数据
T1 | T2 |
①读A=100 A=A*2写回 ② ③ROLLBACK 恢复A=100 | 读A=10 |
4、解决并发操作带来的数据不一致性总是普遍采用 的技术。
A.封锁 B.恢复 C.存取控制 D.协商 答案:A
5、若事务T对数据R已经加X锁,则其他事务对数据R 。
A.可以加S锁不能加X锁 B.不能加S锁可以加X锁 C.可以加S锁也可以加X锁 D.不能加任何锁 答案:D
6、关于“死锁”,下列说法中正确的是 。
A.死锁是操作系统中的问题,数据库操作中不存在 B.在数据库操作中防止死锁的方法是禁止两个用户同时操作数据库 C.当两个用户竞争相同资源时不会发生死锁 D.只有出现并发操作时,才有可能出现死锁
答案:D
7、对并发操作若不加以控制,可能会带来 问题。
A.不安全 B.死锁 C.死机 D.不一致 答案:D
8、并发操作会带来哪些数据不一致性 。
A.丢失修改、不可重复读、读脏数据、死锁 B.不可重复读、读脏数据、死锁
C.丢失修改、读脏数据、死锁 D.丢失修改、不可重复读、读脏数据 答案:D
9. 若事务T对数据对象A加上S锁,则( )。
A.事务T可以读A和修改A,其它事务只能再对A加S锁,而不能加X 锁。
B.事务T可以读A但不能修改A,其它事务只能再对A加S锁,而不能加X 锁。
C.事务T可以读A但不能修改A,其它事务能对A加S锁和X锁。
D.事务T可以读A和修改A,其它事务能对A加S锁和X锁。 答案:B
10.设有两个事务T1、T2,其并发操作如图1所示,下面评价正确的是( ) 答案:B
A. 该操作不存在问题 B. 该操作丢失修改
C. 该操作不能重复读 D. 该操作读“脏”数据
T1 T2
① 读A=100
② ② 读A=10
③ A-5写回
④ A=A-8写回
图1
11. 以下( )封锁违反两段锁协议。
A. Slock A … Slock B … Xlock C ………… Unlock A … Unlock B … Unlock C
B. Slock A … Slock B … Xlock C ………… Unlock C … Unlock B … Unlock A
C. Slock A … Slock B … Xlock C ………… Unlock B … Unlock C … Unlock A
D. Slock A …Unlock A ……Slock B … Xlock C ………...Unlock B … Unlock C 答案:D
12 设有两个事务T1、T2,其并发操作如图所示,下面评价正确的是( ) 答案: C
A. 该操作不存在问题 B. 该操作丢失修改
C. 该操作不能重复读 D. 该操作读“脏”数据
T1 T2
read(A)
read(B)
sum=A+B
read(A)
A=A*2
write(A)
read(A)
read(B)
sum=A+B
write(A+B)
已知事务T1的封锁序列为:LOCK S(A)…LOCK S(B)…LOCK X(C)
…UNLOCK(B) …UNLOCK (A) …UNLOCK (C)
事务T2的封锁序列为:LOCK S(A) …UNLOCK (A) …LOCK S(B)
…LOCK X(C) …UNLOCK (C) …UNLOCK (B)
则遵守两段封锁协议的事务是( ) 答案: A
A.T1 B.T2 C.T1和T2 D.没有
在并发控制技术中,最常用的是封锁机制,基本的封锁类型有排它锁X和共享锁S,下列关于两种锁的相容性描述不正确的是( ) 答案: A
A. X/X :TRUE
B. S/S:TRUE
C. S/X:FALSE
D. X/S:FALSE
二、多项选择题
1. 锁的种类有:
A X锁 B S 锁 C IX锁 D SIX锁 答案:ABCD
2. 并发操作带来的数据不一致性包括:
A不可重复读B丢失修改C读脏数据 D 不可重复写 答案:ABC
3.对一个数据对象加SIX锁,表示:
A 拟对下级对象加X 锁 B 对本对象加S 锁 C对本对象加I 锁 D 对本对象加X锁 答案:AB
4. 两段锁协议的基本方法是: 答案:AB
A 在前一阶段对数据项加锁,但不释放任何锁 B 在释放了某个锁的后一阶段不再申请任何封锁
C在后一阶段对数据项加锁,但不释放任何锁 D在释放了某个锁的前一阶段不再申请任何封锁
5. 死锁的诊断包括
A 超时法 B 两段锁协议 C一次封锁法 D等待图法 答案:AD
三、判断题
1.并发控制问题来源于多用户使用数据库。 对
2. 并发控制问题来源于有了多处理机的硬件 错
3.丢失修改是由两个事务修改了同一数据造成的 对
4. 加IS锁是拟对上级对象加S 锁 错
5. 并发控制调度并发事务操作是否正确的判别准则是可串行性。 对
6. 事务是并发控制的基本单位。 对
7. 两段锁协议是保证可串行性的充分必要条件 错
8. 数据库通常以封锁方法实现并发控制。 对
四、填空题
1、DBMS的基本工作单位是事务,它是用户定义的一组逻辑一致的程序序列;并发控制的主要方法是 机制。 答案:封锁
2、有两种基本类型的锁,它们是 和 。答案:①共享锁 ②排它锁
3. 是并发控制的基本单位,是用户定义的一个数据库操作序列。 答案:事务
4. 存在一个等待事务集{T0,T1,…,Tn},其中T0正等待被T1锁住的数据项,T1正等待被T2锁住的数据项,Tn-1正等待被Tn锁住的数据项,且Tn正等待被T0锁住的数据项,这种情形称为 。 答案:死锁
5. 是并发事务正确性的准则。 答案:可串行性