复习:数据库原理与应用复习提纲 下载本文

数据库原理与应用复习提纲

第一部分 基本概念 主要内容:

1、数据、数据库、数据库管理系统、数据库系统基本概念 2、数据管理技术的发展阶段 3、数据库系统的特点 4、数据模型的组成要素

一、数据结构 数据结构是所研究的对象类型的集合,是刻画一个数据模型性质最重要的方面,是对系统静态特性的描述。

二、数据操作 数据操作是指对数据库中各种对象(型)的实例(值)允许执行的操作的集合,包括操作及有关的操作规则。是对系统动态特性的描述。

三、数据的约束条件 数据的约束条件是一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,以保证数据的正确、有效、相容。

5、概念模型的描述 6、关系数据模型的三要素

7、数据库系统的三级模式两级映像、数据独立性

练习题

一、选择题

1 数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段中,数据独立性最高的是阶段 A.数据库系统 B、文件系统 C.人工管理 D、数据项管理

2 数据库系统与文件系统的主要区别是__ A .数据库系统复杂,而文件系统简单

B .文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决 C .文件系统只能管理程序文件,而数据库系统能够管理各种类型的文件 D .文件系统管理的数据量较少,而数据库系统可以管理庞大的数据量 4 数据库的概念模型独立于__. A .具体的机器和DBMS B . E-R 图 C .信息世界 D .现实世界

5 数据库是在计算机系统中按照一定的数据模型组织、存储和应用的 ① 。支持数据库各种操作的软件系统叫 ② 。由计算机硬件、DBMS 、数据库、应用程序及用户等组成的一个整体叫做 ③ .

① A .文件的集合 B .数据的集合

C .命令的集合 D .程序的集合 ② A .命令系统 B .数据库管理系统

C .数据库系统 D .操作系统 ③ 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 .用户程序与DBMS 的相互独立

C .用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的 D .应用程序与数据库中数据的逻辑结构相互独立

11 数据库的特点之一是数据的共享,严格地讲,这里的数据共享是指 。 A .同一个应用中的多个程序共享一个数据集合 B .多个用户、同一种语言共享数据 C .多个用户共享一个数据文件

D .多种应用、多种语言、多个用户相互覆盖地使用数据集合 12 下述关于数据库系统的正确叙述是 。 A .数据库系统减少了数据冗余 B .数据库系统避免了一切冗余

C .数据库系统中数据的一致性是指数据类型一致 D .数据库系统比文件系统能管理更多的数据 13 下述关于数据库系统的正确叙述是__。 人.数据库中只存在数据项之间的联系

B .数据库的数据项之间和记录之间都存在联系 C .数据库的数据项之间无联系,记录之间存在联系

D .数据库的数据项之间和记录之间都不存在联系

14 数据库技术采用分级方法将数据库的结构划分成多个层次,是为了提高数据库的 ① 和 ② 。

① A .数据规范性 B .逻辑独立性 C .管理规范性 D .数据的共享 ② A .数据独立性 B .物理独立性 C .逻辑独立性 D .管理规范性 15 数据库(DB)、数据库系统(DBS )和数据库管理系统(DBMS )三者之间的关系是 . A. DBS 包括DB 和DBMS B . DBMS 包括DB 和DBS

C . DB 包括DBS 和DBMS D . DBS 就是DB ,也就是DBMS 16 在数据库中,产生数据不一致的根本原因是__. A .数据存储量太大 B . 没有严格保护数据

C .未对数据进行完整性控制 D .数据冗余

17. 数据库管理系统(DBMS )是 . A .一个完整的数据库应用系统 B .一组硬件 C .一组系统软件 D .既有硬件,也有软件 18 对于数据库系统,负责定义数据库内容,决定存储结构和存取策略及安全授权等工作的是__.

A.应用程序开发人员 B .终端用户 C. 数据库管理员 D .数据库管理系统的软件设计人员

19. 数据库管理系统中用于定义和描述数据库逻辑结构的语言称为 . A. 数据描述语言 B .数据库子语言 C. 数据操纵语言 D .数据结构语言

20 数据库管理系统能实现对数据库中数据的查询、插入、修改和删除,这类功能称为 A .数据定义功能 B .数据管理功能 C .数据操纵功能 D .数据控制功能

21 从软件的角度考虑,数据库系统的核心是__. A .操作系统 B .数据库管理系统 C .数据定义语言 D .数据操纵语言

22 在数据库的三级模式结构中,描述数据库中全体数据的全局逻辑结构和特性的是__。 A .外模式 B .内模式 C .存储模式 D .模式 23 数据库系统的数据独立性是指 . A .不会因为数据的变化而影响应用程序

B . 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序 C .不会因为存取策略的变化而影响存储结构

D .不会因为某些存储结构的变化而影响其他的存储结构

24 在数据库系统中,通常用三级模式来描述数据库,其中 ① 是用户与数据库的接口,是应用程序可见到的数据描述, ② 是对数据整体的 ③ 的描述,而 ④ 描述了数据的 ⑤ . A ,外模式 B .概念模式 C .内摸式 D .逻辑结构 E .层次结构 F .物理结构

25 在数据库的体系结构中,数据库存储结构的改变会引起内模式的改变.为使数据库的模式保持不变,从而不必修改应用程序,必须改变模式与内模式之间的映像。这样,使得数据库具有__。

A .数据独立性 B .逻辑独立性 C .物理独立性 D .操作独立性 26 数据模型的三要素是 A .外模式、模式和内模式 B .关系模型、层次模型、网状模型 C .实体、属性和联系 D .数据结构、数据操作和完整性约束 27 层次模型、网状模型和关系模型的划分原则是__。 A .记录长度 B .文件的大小 C .联系的复杂程度 D .数据之间的联系 28 数据库的网状模型应满足的条件是__.

A .允许一个以上的结点无父结点.也允许一个结点有多个父结点 B .必须有两个以上的结点

c .有且仅有一个结点无父结点.其余结点都只有一个父结点 D .每个结点有且仅有一个父结点 29 数据模型用来表示实体间的联系,但不同的数据库管理系统支持不同的数据模型。在常用的数据模型中,不包括__. A .网状模型 B .链状模型 C .层次模型 D .关系模型 30 除了面向对象数据库外,还有以下3 种数据库.

( 1 )对于上层的一个记录,有多个下层记录与之对应,对于下层的一个记录,只有一个上层记录与之对应,这是 ① 数据库.

( 2 )对于上层的一个记录,有多个下层记录与之对应,对于下层的一个记录,也有多个上层记录与之对应,这是 ② 数据库。 ( 3 )不预先定义固定的数据结构,而是以“表”结构来表达数据之间的相互关系,这是 ③ 数据库.

A .关系型 B .集中型 C .网状型 D . 层次型 31 关系数据模型__。

A .只能表示实体间的1 : 1 联系 B .只能表示实体间的l : n 联系 C .只能表示实体间的m : n 联系 D .可以表示实体间的上述三种联系

32、在数据库三级模式间引入二级映像的主要作用是( )。

A.提高数据与程序的独立性 B.提高数据与程序的安全性 C.保持数据与程序的一致性 D.提高数据与程序的可移植性 33、数据库技术的奠基人之一E.F.Codd从1970年起发表过多篇论文,主要论述的是( )。

A. 层次数据模型 B. 网状数据模型 C. 关系数据模型 D. 面向对象数据模型

二、填空题

1.从数据管理的历史来看,数据管理技术经历了 、 和 三个阶段。

2.一般地讲,数据模型由数据结构、 和 三个部分组成。一个数据模型的 是关系的,就说该模型是关系模型。

3.在数据库的发展过程中,最普遍认可的逻辑数据模型有 、 、 、和面向对象模型几种。目前数据库用得最普遍的模型是 。 三、简答题

1、数据库系统的特点

2、关系数据模型的组成要素

3、数据库系统的三级模式结构及其优点

第二部分 关系数据库 主要内容:

1、关系的概念和关系的基本性质 2、主码、主属性、非主属性、全码 3、关系的三类完整性约束 4、关系代数

练习题

一、选择题

1、关系数据库中的码是指__. A .能惟一决定关系的字段 B .不可改动的专用保留字 C .关键的很重要的字段 D . 能惟一标识元组的属性或属性集合 2、 在关系R ( R # , RN , S # )和S ( S # , SN , SD )中, R 的主码是R # , S 的主码是S #,则S#在R 中称为__. A .外码 B .候选码 C .主码 D .超码 3、关系代数的5 个基本运算是__。 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. 有两个关系R ( A , B ,C)和S ( B , C,D)则R ? S 结果的属性个数是 A . 3 B . 2 C.1 D.不一定

9. 有两个关系R ( A , B , C )和S ( B , C,D),则R ??S 结果的属性个数是__。 A . 3 B . 4 C . 5 D . 6

10 有两个关系R 和S , 分别包含15 个和10 个元组, 则在R?S , R - S . R?S不可能出现的元组数目情况是__ A . 15 , 5 , 10 B . 18 , 7 , 7 C . 21 , 11 , 4 D . 25 , 15 , 0

11、两个关系在没有公共属性时,其自然联接操作表现为__。 A .结果为空关系 B .笛卡儿积操作 C .等值联接操作 D .无意义的操作

12、在n 元关系R 中,公式?3>’4’(R)表示__.

A .从R 中选择值为3 的分量(或属性)小于第4 个分量值的元组组成的关系 B .从R 中选择第3 个分量的值小于第4 个分量值的元组组成的关系 C .从R 中选择第3 个分量的值小于4 的元组组成的关系 D .从R 中选择第3 个分量小于4 个元组组成的关系 13、关系R 和关系S 只有一个公共属性,T1是R 与S 等值联接的结果,T2 是R 和S 自然联接的结果,则__。

A . T1 的属性个数等于T2的属性个数 B . T1 的属性个数小于T2的属性个数

C . T1 的属性个数大于或等于T2的属性个数 D . T1 的属性个数大于T2的属性个数

14、对关系R 进行投影运算后,得到关系S,则 A .关系R 的元组数等于关系S 的元组数

B .关系R 的元组数小于或等于关系S 的元组数 C .关系R 的元组数大于或等于关系S 的元组数 D .关系R 的元组数大于关系S 的元组数

15、有属性A, B , C , D ,以下表示中不是关系的是__. A . R ( A ) B . R ( A , B , C , D ) C . R ( A×B×C×D ) D . R ( A , B )

16、关系运算中花费时间可能最长的运算是__. A .投影B .选择C .笛卡儿积D .除

17、关系表A有p1个属性t1个元组;关系表B有p2个属性t2个元组。则A与B的笛卡尔积A×B分别有( ) 属性和元组。

A. p1+p2、t1×t2 B. t1×t2、p1+p2 C. p1+p2、t1+t2 D. p1×p2、t1×t2 18、下面关于关系的叙述,( )是不正确的。

A.直观上说,关系就是二维表 B.二维表的任何两列不能全同 C.二维表的任何两行可以全同 D.二维表允许有些分量取空值 19、在关系模型中,一个关键字是( )。

A. 由一个或多个任意属性组成 B. 由一个属性组成

C. 不能由全部属性组成 D. 可由一个或多个能惟一标识该关系模式中任意元组的属性组成

二、计算题

1、设有如图所示的关系R , S 和T ,计算: R1=R?S R2=R-S

R3=R??T R3=RA

R A a b c S T B a a c B d b d C a a c B d e c A d b d 关系R,S和T

2、设有如图所示的关系S,C和SC ,试用关系代数表达式表示下列查询语句: S S# 1 2 3 C C# k1 k5 k8 SC S# 1 2 5 2 5 5 C# k1 k1 k1 k5 k5 k8 GRADE 83 85 92 90 84 80 CNAME C语言 数据库原理 编译原理 TEACHER 王华 程军 程军 SNAME 李强 刘丽 张友 AGE 23 22 22 SEX 男 女 男 ( l )检索“程军”老师所授课程的课程号(C # )和课程名((CNAME )。 ( 2 )检索年龄大于21 的男学生学号(S #)和姓名(SNAME )。 ( 3 )检索至少选修“程军”老师所授全部课程的学生姓名(SNAME )。 ( 4 ) 检索“李强”同学不学课程的课程号(C #)。 ( 5 )检索至少选修两门课程的学生学号(S #)。

( 6 )检索全部学生都选修的课程的课程号(C #)和课程名(CNAME)。

( 7 )检索选修课程包含“程军”老师所授课程之一的学生学号(S #)。 ( 8 )检索选修课程号为kl 和k5 的学生学号(S#)。 ( 9 )检索选修全部课程的学生姓名(SNAME )。

( 10 )检索选修课程包含学号为2 的学生所修课程的学生学号(S#)

( 11 )检索选修课程名为“C 语言”的学生学号(S #)和姓名(SNAME )。

3、见教材P74页第5题

三、简答题

1、关系的实体完整性规则 2、关系的参照完整性规则 四、填空题

1、设一个关系模式为R(A,B,C),对应关系内容为R={{1,10,50},{2,10,60},{3,20,72},{4,30,60}},则Π

B

(δ

c<70

(R))的运算结果中

包含有_ _元组,每个元组包含有_____分量。

2、设D1,D2,D3的域的基数分别为2,3,4,则D1×D2×D3的元组数为 ,每个元组有 分量。

第三部分 SQL语言 主要内容:

1、SQL语言的基本功能 2、基本表、视图的概念

练习题

一、选择题

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 6 在SQL 的查询语句中,对应关系代数中“投影”运算的语句是 A . WHERE B . FROM C . SELETE D . HAVING 7 在SQL 语言中,实现数据检索的语句是_. A . SELECT B . INSERT C . UPDATE D . DELETE

8 在SQL 的SELECT 语句中,与关系代数中“选择”运算对应的命令动词是_ A . SELECT B . FROM C . WHERE D . ORDER BY 9 SELECT 语句执行结果是 . A .数据项 B .元组 C .表(关系) D .数据库 10 在SQL 语句中,对输出结果排序的语句是_ A . GROUP BY B .ORDER BY C . WHERE D . HAVING 11 . 在SELECT 语句中,需对分组情况满足的条件进行判断时,应使用 A . WHERE B . GROUP BY C . ORDER BY D . HAVING 12 在SELETE 语句中使用*表示_。 A .选择任何属性 B ,选择全部属性 C .选择全部元组 D .选择主码 13 在SELECT 语句中,使用MAX (列名)时,该“列名”应该 A .必须是数值型 B .必须是字符型 C . 必须是数值型或字符型 D . 不限制数据类型 15 使用CREATE TABLE语句建立的是_. A .数据库 B .表 C .视图 D .索引 16 下列SQL 语句中,修改表结构的是_. A . ALTER B . CREATE C . UPDATE D . INSERT

17 在SQL 中使用UPDATE 语句对表中数据进行修改时,应使用的语句是_. A . WHERE B . FROM C . VALUES D . SET 18 在SQL 中,谓词“EXISTS ”的含义是 . A .全称量词 B .存在量词 C .自然联接 D .等值联接 19 SQL 中,与“NOT IN ”等价的操作符是_. A .=SOME B . <> SOME C .=ALL D . <> ALL 20 视图建立后,在数据字典中存放的是 A .查询语句 B .组成视图的表的内容 C .视图的定义 D .产生视图的表的定义

第21~24 题基于这样三个表,即学生表S 、课程表C 和学生选课表SC ,它们的结构如 S ( S #,SN , SEX ,AGE , DEPT ) C (C# , CN )

SC ( S #,C #,GRADE )

其中,S #为学号,SN 为姓名,SEX 为性别,AGE 为年龄,DEPT 为系别,C#为课程 21 检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的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 22 检索选修课程“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’)

23 检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT 语句是 A . SELECT S.SN,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.S#

B . SELECT S.SN,SC.C#,SC.GRADE FROM SC WHERE S.S#=SC.GRADE C . SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S# D . SELECT S.SN,SC.C#,SC.GRADE FROM S,SC

24 检索选修4 门以上课程的学生总成绩(不统计不及格的课程),并要求按总成续的降序排列出来。正确的SELECT 语句是 。

A . SELECT S#,SUM(GRADE) FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC HAVING COUNT(*)>=4

A . SELECT S#,SUM(GRADE) FROM SC WHERE GRADE>=60 GROUP BY S# HAVING COUNT(*)>=4 ORDER BY 2 DESC

A . SELECT S#,SUM(GRADE) FROM SC WHERE GRADE>=60 HAVING COUNT(*)>=4 GROUP BY S# ORDER BY 2 DESC

A . SELECT S#,SUM(GRADE) FROM SC WHERE GRADE>=60 ORDER BY 2 DESC GROUP BY S# HAVING COUNT(*)>=4

25 假定学生关系是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 27 若有如下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 ) 28、一般说来,( ) 完全可以像一个基本表那样进行更新。

A. 由多个基本表导出的视图 B. 在定义视图的语句中带有集函数的视图

C. 在定义视图的语句中带有DISTINCT关键词的视图 D. 行列子集视图

29、查询姓“张”的学生的详细信息的SQL语句是( )。

A. SELECT * FROM STUDENT WHERE SNAME LIKE ?张%?

B. SELECT * FROM STUDENT WHERE SNAME =?张%?

C. SELECT * FROM STUDENT WHERE SNAME LIKE ?张_? D. SELECT * FROM STUDENT WHERE SNAME = ?张_? 30、视图本身不独立存储在数据库中,既数据库中只存放视图的( ),而不存放视图的( ),视图是一个( )。

A.定义、对应的数据、虚表 B.定义、对应的数据、实表 C.对应的数据、定义、实表 D.对应的数据、定义、虚表 31、以下( )事件不会引起数据库触发器触发。

A. 在表中插入记录行 B. 修改记录行 C. 删除记录行 D. 创建一个表

二、综合题

1、见教材P127页第5题 2、实验中的SQL部分 3、设有如下关系

学生:Student(Sno,Sname,Sex,Sage,Sdept) 课程:Course(Cno,Cname,Cpno,Ccredit) 选修:SC(Sno,Cno,Grade) 用关系代数完成下列操作:

(1)查询年龄小于20岁的学生的学号,姓名;

(2)查询选修了课程代号为2的课程的学生的姓名; (3)查询成绩低于60分的学生的学号;

(4)查询选修了艺术欣赏的学生的学号及姓名; (5)查询学生的学号,姓名和年龄;

用SQL语言完成下列操作:

(5)建立学生表:Student。表的基本结构如下: 列名 SNO 说明 学号 数据类型 CHAR(7) CHAR(10) CHAR(2) SMALLINT VARCHAR(20) 约束 主码 NOT NULL 取“男”或“女” 取值15-45 SNAME 姓名 SSEX SAGE 性别 年龄 SDEPT 所在系 (6)建立选课表SC:表的基本结构如下: 列名 SNO CNO 说明 学号 课程名 数据类型 CHAR(7) VARCHAR(10) SMALLINT 约束 NOT NULL,引用Student的外码 NOT NULL,引用Course的外码 大于0 GRADE 成绩 (7)建立课程表Course:

列名 CNO CNAME CPNO 说明 课程号 课程名 先修课 数据类型 CHAR(10) 约束 主码 VARCHAR(20) NOT NULL CHAR(10) SMALLINT 大于0 CCREDIT 学分 (8)查询考试成绩有不及格的学生的学号;

(9)查询年龄在20~23岁之间的学生的姓名、系别和年龄;

(10)查询学生的选课情况,要求输出学号,姓名,课程名,成绩,按照学号升序排序; (11)统计各门课程的不及格人数,要求输出课程代号,不及格人数;

(12)插入一个新学生的记录(学号:9512103;姓名:陈冬;性别:男;年龄:18;系名:IS);

(13)修改“9512101”学生的“C01”课程成绩为85; (14)删除所有课程为“C05”的选课记录;

(15)建立一个视图S_G,包括平均成绩大于75分的学生的学号及平均成绩。 4. 查询全体学生的信息;

5. 查询“信息系”学生的学号,姓名和出生年份;

6. 查询选修了“数据库基础”课程的学生的学号和姓名及成绩,按成绩降序排序; 7. 统计各门课程的成绩,要求输出课程代号,平均成绩,选修人数; 8. 插入一条选课记录学号9512103,课程号c05,成绩89; 9. 将所有学生的年龄增加1岁;

10.删除学号已95开头的学生的所有选课记录;

11.建立视图C_CJ,视图包括选课门数超过3门(包括3门)的学生的学号以及他们的选课门数。

第四部分 数据库安全性 主要内容:

1、数据库安全的两种存取控制方法(DAC和MAC) 2、SQL中的授权和回收(GRANT和REVOKE)

练习题:

一、选择题

1下列哪个不是数据库系统必须提供的数据控制功能__. A .安全性 B .可移植性 C ,完整性 D .并发控制

2 保护数据库,防止未经授权或不合法的使用造成的数据泄漏、非法更改或破坏。这是指数据的 A .安全性 B .完整性 C .并发控制 D .恢复

3 数据库的__是指数据的正确性和相容性. A .安全性 B .完整性 C .并发控制 D .恢复

4、下列SQL 语句中,能够实现“收回用户U4 对学生表(STUD )中学号(XH)的修改权”这一功能的是__。

A . REVOKE UPDATE (XH) ON TABLE FROM U4

B . REVOKE UPDATE (XH ) ON TABLE FROM PUBLIC C . REVOKE UPDATE (XH ) ON STUD FROM U4

D . REVOKE UPDATE (XH ) ON STUD FF0M PUBLIC

5、将查询SC 表的权限授予用户U1,并允许该用户将此权限授予其他用户。实现此功能的SQL 语句是__。

A . GRANT SELECT TO SC ON Ul WITH PUBIJIC B . GRANT SELECT ON SC TO U1 WITH PUBLIC

C . GRANT SELECT TO SC ON Ul WITH GRANT OPTION D . GRANT SEIECT ON SC TO U1 WITH GRANT OPTION 6、用于实现数据存取安全性的SQL 语句是 A . CREATE TABLE B . COMMIT C . GRANT 和REVOKE D . ROLLBACK 7、在数据库系统中,对存取权限的定义称为 A .命令 B .授权 C .定义 D ,审计

8、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的 A .可靠性 B .一致性 C .完整性 D .安全性 二、综合题

1.把查询Student表的权限授予用户u1和u2。

2.把删除Student表、Course表中数据的权限授予用户u1和u2。

3.把修改SC表中选课记录的权限授予用户u1,并允许他再将此权力授予其他用户。 4.把查询Student表、SC表、Course表的权力授予全体用户。

5.把对Student表的所有操作权力授予用户u1,u2,并允许他再将此权力授予其他用户。 6.收回用户u1、u2具有的查询Student表的权限。

7.收回u1、u2拥有的删除Student表、Course表中数据的权限。 8.收回用户u1具有的修改SC表中选课记录的权限。

9.从全体用户中收回查询Student表、SC表、Course表的权力。 10.从用户u1、u2中收回对Student表的所有操作权限。

11.建立一个只包含全体计算机系(SC)学生学号、姓名、性别的视图;并进一步把查询该视图的权限赋给用户U1、U2。 三、简答题

1、存取控制机制包括哪两部分? 2、自主存取控制

3、强制存取控制

第五部分 数据库完整性 主要内容:

1、三类完整性的定义 2、触发器的作用

练习题:

一、选择题

1. 如果在学生-课程数据库中的SC表上建立了参照完整性约束: Foreign Key (Sno) References Student(Sno), Foreign Key (Cno)References Course(Cno), 则( )操作可能会违背该约束。

A.在Student表上增加一行记录 B.在Course表上增加一行记录 C.在SC表上删除一行记录 D.在SC表上增加一行记录 2. 如果在学生-课程数据库中的SC表上建立了参照完整性约束: Foreign Key (Sno) References Student(Sno), Foreign Key (Cno)References Course(Cno), 则( )操作可能会违背该完整性约束。

A.在Student表上增加一行记录 B.在Course表上增加一行记录 C.在SC表上删除一行记录 D.更新SC表上的记录

3. 如果在学生-课程数据库中的SC表上建立了参照完整性约束: Foreign Key (Sno) References Student(Sno), Foreign Key (Cno)References Course(Cno), 则( )操作不可能会违背该约束。

A.更新SC表中的选课记录 B.更新Course表中的课程记录 C.在Student表上增加一个学生的记录 D.删除SC表中的一条选课记录 4.下面( )属于数据库完整性控制。

A.禁止未经授权的用户登录数据库 B.开启审计功能

C.不允许学生的考试成绩小于0分 D.将数据库中的数据备份 5.下面( )一定不属于数据库完整性控制。 A.在SC表上建立一个触发器 B.给数据表的某一列建立一个默认值

C.规定Student表中学生的性别只能取“男”,“女” D.将数据库中易改变的数据和不易改变的数据分开存放 6-10题 Student、SC、Course表中已有数据如下: Student: Sno Sname Sdept Ssex Sage CS 男 21 1234501 aaa 1234502 bbb 1234503 ccc Course Cno Cname C01 Uuuu C02 Vvvv C10 Xxxx C11 Yyyy C12 Zzzz SC Sno CS IS 女 男 20 22 Cpno Ccredit C08 C07 C15 C16 C20 1 2 2 3 1 4 C03 Wwww C06 Cno Grade 1234501 C01 80 1234501 C02 88 1234502 C01 90 1234503 C10 85 1234503 C11 91

7.若在SC表上建立外码:

Foreign Key (Sno) References Student(Sno) ON Delete NO Action ON Update NO Action,

Foreign Key (Cno)References Course(Cno)ON Delete NO Action ON Update NO Action,

则下面能够正常执行的选项是( )

A.删除Student表中学号为1234501的基本信息 B.将Course表中的课程号C01修改为C100 C.在SC表上删除所有课程号为C01的选课记录

D.在SC表上插入一行选课记录:学号为1234502,课程号为C02,成绩80 8.若在SC表上建立外码:

Foreign Key (Sno) References Student(Sno) ON Delete NO Action ON Update NO Action,

Foreign Key (Cno)References Course(Cno)ON Delete NO Action ON Update NO Action,

则下面能够正常执行的选项是( )

A.删除Student表中学号为1234501的基本信息 B.将Course表中的课程号C01修改为C100

C.修改SC表上第二行选课记录,使得课程号由C02变为C20 D.修改SC表上第一行选课记录,使得课程号C01变为C11 9. .若在SC表上建立外码:

Foreign Key (Sno) References Student(Sno) ON Delete NO Action ON Update NO Action,

Foreign Key (Cno)References Course(Cno)ON Delete NO Action ON Update NO Action,

则下面不能正常执行的选项是( )

A.在Student表中插入一个新学生的基本信息:

(学号1234510,姓名ddd,系别CS,性别女,年龄21) B.将Course表中的课程号C12修改为C13 C.删除SC表上第二行选课记录。

D.将Course表中的课程号C01修改为C15 10. 若在SC表上建立外码:

Foreign Key (Sno) References Student(Sno) ON Delete Cascade ON Update NO Action,

Foreign Key (Cno)References Course(Cno)ON Delete Cascade ON Update NO Action, 则下面正确的说法是( )

A.在Student表中删除一个学生的基本信息:

(学号1234501,姓名aaa,系别CS,性别男,年龄21),则SC表中第一行、第二行选课记录均被删除;

B.将Course表中的课程号C12修改为C13 C.删除SC表上第二行选课记录。

D.将Course表中的课程号C01修改为C15

第六部分 关系数据理论及数据库设计 主要内容:

1、一个不好的关系模式可能存在的问题; 2、函数依赖及三种函数依赖的定义

3、范式及1NF/2NF/3NF/BCNF/4NF的判定 4、模式分解

5、数据库设计的基本步骤 6、概念设计(E-R图)

7、逻辑模型(E-R图转换为逻辑模型的方法)

练习题:

一、选择题

1、 数据库需求分析时,数据字典的含义是__. A .数据库中所涉及的属性和文件的名称集合 B .数据库中所涉及到字母、字符及汉字的集合 C .数据库中所有数据的集合

D .数据库中所涉及的数据流、数据项和文件等描述的集合 2 下列不属于需求分析阶段工作的是__。 A .分析用户活动 B .建立E-R图 C .建立数据字典 D .建立数据流图 3 数据流图是在数据库__阶段完成的. A .逻辑设计 B .物理设计 C .需求分析 D .概念设计

5 在数据库设计中,用E-R 图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库 设计的阶段。 A .需求分析 B .概念设计 C .逻辑设计 D .物理设计 6 概念模型独立于__。 A . E-R 模型 B .硬件设备和DBMS C .操作系统和DBMS D . DBMS 7 E-R 图是数据库设计的工具之一,它适用于建立数据库的 A .概念模型 B .逻辑模型 C .结构模型 D .物理模型 8 在数据库的概念设计中, 最常用的数据模型是__. A.形象模型 B .物理模型 C. 逻辑模型 D .实体联系模型

9 数据库逻辑结构设计的主要任务是 A .建立E-R 图和说明书 B .创建数据库说明 C .建立数据流图 D .把数据送入数据库 10 在关系数据库设计中,设计关系模式是____的任务。 A .需求分析阶段 B .概念设计阶段 C. 逻辑设计阶段 D .物理设计阶段

11 数据库概念设计的E-R 图中,用属性描述实体的特征,属性在E-R 图中用 表示。 A .矩形 B .四边形 C .菱形 D .椭圆形

12 从E - R 模型向关系模式转换时,一个m : n 联系转换为关系模式时,该关系模式的码是__。

A . m 端实体的码 B . n 端实体的码 C . m 端实体码与n 端实体码的组合 D .重新选取其他属性

13 当局部E-R 图合并成全局E-R 图时可能出现冲突,不属于合并冲突的是__. A .属性冲突 B .语法冲突 C .结构冲突 D .命名冲突 14 E-R 图中的联系可以与 实体有关. A . 0 个 B . 1 个 C . l 个或多个 D .多个

15 如果两个实体之间的联系是m : n , 则 引入第三个交叉关系。 A .需要 B .不需要 C .可有可无 D .合井两个实体 16 数据流图(DFD )是用于描述结构化方法中__阶段的工具. A .可行性分析 B .详细设计 C .需求分析 D .程序编码

17 从E-R 图导出关系模式时,如果两实体间的联系是m : n ,下列说法中正确的是__。 A .将m 方码和联系的属性纳入n 方的属性中 B .将n 方码和联系的属性纳入m 方的属性中

C .在m 方属性和n 方的属性中均增加一个表示级别的属性 D .增加一个关系表示联系,其中纳入m 方和n 方的码

18 若两个实体之间的联系是1 : m ,则实现1 : m 联系的方法是 . A .在“m ”端实体转换的关系中加入“l ”端实体转换关系的码

B .将“m ”端实体转换关系的码加入到“1”端的关系中 C .在两个实体转换的关系中,分别加入另一个关系的码 D .将两个实体转换成一个关系

19 下列属于数据库物理设计工作的是__ A .将E-R 图转换为关系模式 B .选择存取路径 C . 建立数据流图 D .收集和分析用户活动 20 下面不属于数据库物理设计阶段应考虑的问题是__。 A .存取方法的选择 B .索引与入口设计 C .与安全性、完整性、一致性有关的问题 D .用户子模式设计 21 下列不属于数据库逻辑设计阶段应考虑的问题是__。 A .概念模式 B .存取方法 C .处理要求 D . DBMS 特性 22 下列不属于概念结构设计时常用的数据抽象方法的是__. A .合并 B .聚集 C .概括 D .分类

23 下列关于数据库运行和维护的叙述中,正确的是__。

A .只要数据库正式投入运行,就标志着数据库设计工作的结束 B .数据库的维护工作就是维持数据库系统的正常运行 C .数据库的维护工作就是发现错误,修改错误

D .数据库正式投入运行标志着数据库运行和维护工作的开始

24 E-R 图是表示概念模型的有效工具之一, E - R 图中的”菱形框”表示的是__. A .联系 B . 实体 C .实体的属性 D .联系的属性

25 要将m:n的两个实体的E-R 图转换成关系模式,可以转换为__关系模式. A . 1 个 B . 2 个 C . 3 个 D . 4 个

26、.数据库设计中,( )不参加需求分析工作。

A.系统分析员 B.程序员 C.数据库设计人员 D.用户 27、 在数据库设计过程中,( )工作离不开用户的参与。 A.设计数据库模式 B.设计数据库外模式 C.设计数据库内模式 D.进行需求分析 28、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从部门到职员的联系类型是( )。

A.多对多 B.一对一 C.多对一 D.一对多

29、在关系数据库中,从关系规范化的意义看,如果关系R中的非主属性对码有传递函数依赖,那么R至多是( )

A.1NF B.2NF C.3NF D.BCNF

30、设有关系W(I,J,K,X,Y),且有函数依赖集合F={I→J,I→K,K→X,X→Y},今若分解关系W为W1(I,J,K)W2(K,X,Y),试确定W1,W2的范式等级( )。

A. W1是1NF,W2是2NF B. W1是BCNF,W2是1NF C. W1是BCNF,W2是2NF D. W1是2NF,W2是2NF

31、从E-R模型关系向关系模型转换时,一个M:N联系转换为关系模式时,该关系模式的关键字是( )。

A. M端实体的关键字 B. N端实体的关键字 C. M端实体关键字与N端实体关键字组合 D. 重新选取其他属性 二、填空题

1.数据库设计分为需求分析阶段、 、 、 、数据库实施阶段和 阶段。

2.概念结构设计阶段最常采用的设计工具是 。

3.建立局部E-R图;消除各个局部E-R图之间的冲突,建立系统的基设计中本E-R图。这是数据库设计的 阶段要做的事。

4.将概念模型转化为关系模型的过程属于数据库设计中 阶段要做的工作。 5.根据关系数据理论将关系模式进行优化,这是数据库设计中 阶段要做的工作。 6、在设计局部E-R 图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计,所以各个局部E-R 图之间难免有不一致的地方,称为冲突。这些冲突主要有 、 和 3 类。

7、设有关系为R(A,B,C,D,E,F),它的最小函数依赖集为FD={A->B,A->C,D->E,E->F},则该关系的候选码为------。

8、设有一个关系R(A,B,C,D,E),它的最小函数依赖集为FD={A->B,A->C,C->D,C->E},则该关系满足----范式。 三、判断题 1、.E-R图中一个m:n的联系只能形成一个独立的模式,不能与任意一端实体合并。( ) 2、E-R图中一个1:1的联系只能形成一个独立的模式,不能与任意一端实体合并。( ) 3、E-R图中一个1:n的联系只能形成一个独立的模式,不能与任意一端实体合并。( ) 4、.E-R图中一个1:n的联系形成一个独立的模式R,则R的主码可以是N端实体的码,也可以是1端实体的码。( )

5、.将E-R图转换成关系模式的时候,三个或三个以上实体间的一个多元联系只能转换为一个独立的关系模式,不能跟任何一端实体合并。( )

6、.将E-R图转换成关系模式的时候,三个或三个以上实体间的一个多元联系转换为一个独立的关系模式,其中任何一个实体的码都可以当作该关系模的码。

7、.在概念模型设计中,有些事物既可以设计成属性,也可以设计成实体。设计原则是能当作实体的尽量设计成实体。( )

8、.在数据库设计中所建立的数据字典就是专门用来存放信息系统中数据的,就好比我们的Student表用来存放学生信息的一样。( )

9、.数据库设计中的数据流图是用户亲自设计出来的。

10、索引能帮助系统更快地进行查询。因此,我们应该尽量多地在系统中建立索引。( ) 四、综合题

1、设有如下所示的关系R 。

R

课程名 教师名 教师地址 Cl C2 C3 C4 马千里 Dl 于得水 Dl 余快 D2 于得水 Dl ( l )它为第几范式?为什么? ( 2 )是否存在删除操作异常?若存在,则说明是在什么情况下发生? ( 3 ) 将它分解为高一级范式,分解后的关系如何解决分解前可能存在的删除操作的异常问题。

2、设有如下所示的关系R 。

R

职工号 职工名 年龄 性别 单位号 单位名 E1 E2 E3 E4 ZHAO QIAN SEN LI 20 25 38 25 F M M F D3 DI D3 D3 CCC AAA CCC CCC

试问R是否属于3NF ?为什么?若不是,它属于第几范式?并如何规范化为3NF ?

3、给出的关系SC为第几范式?是否存在插入、删除异常?若存在,则说明是在什么情况下发生?发生的原因是什么?将它分解为高一级范式,分解后的关系能否解决操作异常问题?

SC

SNO 80152 80153 80154 80154 80155 CNO C1 C2 C1 C3 C4 CTITLE OS DB OS AI CL INAME 王平 高升 王平 杨杨 高升 ILOCA D1 D2 D1 D3 D2 GRADE 70 85 86 72 92 其中:SNO 为学号,CNO 为课料号,CTITLE 为课程名,INAME

为教师名,ILOCA为教师地址,GRADE 为成绩。

4、下表给出的关系R 为第几范式?是否存在操作异常?若存在,则将其分解

为高一级范式。分解完成的高级范式中是否可以避免分解前关系中存在的操作异常?

R

工程号 P1 P1 P1 P2 P2 材料号 I1 I2 I3 I1 I4 数量 4 6 15 6 18 开工日期 9805 9805 9805 9811 9811 完工日期 9902 9902 9902 9912 9912 价格 250 300 180 250 350

5、下表给出一数据集,请判断它是否可直接作为关系数据库中的关系,若不行,则改造成为尽可能好的并能作为关系数据库中关系的形式,同时说明进行这种改造的理由。 系名 机械系 造船系 课程名 教师名 李军,刘强 金山,宋海 王华 CAD CAM 计算机系 DB 自控系 CTY 张红,曾键

6、指出下列关系模式是第几范式 (1)R(X,Y,Z) FD={XY-->Z}

(2)R(X,Y,Z) FD={Y-->Z,XZ-->Y}

(3)R(X,Y,Z) FD={Y-->Z,Y-->X,X-->YZ} (4)R(X,Y,Z) FD={X-->Y,X-->Z} (5)R(W,X,Y,Z) FD={X-->Z,WX-->Y} (6)R(A,B,C,D) FD={B-->D,AB-->C} (7)R(A,B,C) FD={A-->B,B-->A,C-->A} 7、设关系模式R(A,B,C,D,E,G),FD={A->D, E->D,D->B,BC->D,EC->A}。试求: (1)R的候选码 (2)R所属的范式

8、设有关系模式:

TEACHER(教师编号,教师姓名,电话,所在部门,借阅图书编号,书名,借书日期,还书日期,备注)

(1)教师编号是候选码吗?说明理由 (2)该关系模式的主码是什么?

(3)该关系模式是否存在部分函数依赖?如果存在,请写出至少两个? (4)该关系模式满足第几范式? (5)将该关系模式分解为3NF。

9、假设某商业集团数据库中有一关系模式R(商店编号,商品编号,数量,部门编号,负责人),若规定:

(1)每个商店的每种商品只在一个部门销售; (2)每个商店的每个部门只有一个负责人; (3)每个商店的每种商品只有一个库存数量; 求解:

(1)写出关系R的基本函数依赖 (2)找出R的候选码

(3)R的范式,若不属于3NF,则分解为3NF 10、设有如下实体:

学生:学号、姓名、性别、年龄 课程:课程号、课程名

教师:教师号、姓名.性别、职称 系:系名称、电话

上述实体中存在如下联系:

( l )一个学生可选修多门课程,一门课程可被多个学生选修。 ( 2 )一个教师可讲授多门课程,一门课程可由多个教师讲授。 ( 3 )一个系可有多个教师,一个教师只能属于一个系. 试完成如下工作:

( l ) 设计该系统的E-R 图。

( 2 )将该E-R 图转换为等价的关系模式结构. 11、一个图书管理系统,基本要求如下:

? 一名读者可借阅多种书,一种书可由多名读者借阅; ? 一种书只在一个书库存放,一个书库可存放多种书; ? 一个书库有一个管理员,一个管理员只负责一个书库;

? 读者信息包括读者编号、姓名、单位等;图书信息包括书号、书名、作者、出版社

等;书库信息包括书库号、面积等;管理员包括管理员编号、姓名等。

根据上述信息,完成以下内容: (1)设计系统的E-R模型;

(2)将设计的E-R模型转换为关系模型,并标出关系的码。

12、某校教学管理系统需要保存课程、教师、研究生、系所及他们之间的信息。课程的属性包括课程号、课程名、学分等;教师的属性包括职工号、姓名、性别、职称等;研究生的属性包括学号、姓名、性别、年龄等;系所的属性包括系所名称、电话等。

? 一个系所可有多个教师,一个教师只能属于一个系所; ? 教师可以讲授多门课程,每门课可以由多个教师讲授; ? 每个研究生可以选修多门课程; 根据上述信息,完成以下内容: (1)设计系统的E-R模型;

(2)将设计的E-R模型转换为关系模型,并标出关系的码。

五、简答题

1、关系模式的四种异常问题 2、数据库设计的六个基本步骤

第七部分 并发控制及数据库恢复 主要内容:

1、事务的概念及四个特性

2、数据库恢复机制中建立冗余数据的技术(数据转储和登录日志文件) 3、并发操作带来的三类数据不一致性

4、封锁是实现并发控制的重要技术,封锁的概念及封锁的两种类型。 5、可串行化调度的定义 6、两段锁协议

练习题:

一、填空题

1、写一个修改到数据库中,与写一个表示这个修改的运行记录到日志文件中是两个不同的操作,对这两个操作的顺序安排应该是

A .前者先做 B .后者先做

C . 由程序员在程序中作安排 D .哪一个先做由系统决定 2、“年龄在15至30 岁之间”这种约束属于DBMS 的__功能. A .恢复 B .并发控制 C .完整性 D . 安全性

3、在第一个事务以S 封锁方式读数据A 时,第二个事务对数据A 的读方式会遭到失败的是__.

A .实现X 封锁的读 B . 实现S 封锁的读 C .不加封锁的读 D .实现共享型封锁的读 4、用于实现数据存取安全性的SQL 语句是 A . CREATE TABLE B . COMMIT C . GRANT 和REVOKE D . ROLLBACK

5、在数据库系统中,对存取权限的定义称为 A .命令 B .授权 C .定义 D ,审计

6、数据库管理系统通常提供授权功能来控制不同用户访问数据的权限,这主要是为了实现数据库的 A .可靠性 B .一致性 C .完整性 D .安全性

7、 是DBMS的基本单位,它是用户定义的一组逻辑一致的程序序列. A .程序 B .命令 C .事务 D .文件 8、 事务的原子性是指 A .事务中包括的所有操作要么都做,要么都不做 B .事务一旦提交,对数据库的改变是永久的 C .一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D .事务必须使数据库从一个一致性状态变到另一个一致性状态

9、事务是数据库执行的基本工作单位。如果一个事务执行成功,则全部更新提交;如果一个事务执行失败,则已做过的更新被恢复原状,好像整个事务从未有过这些更新,这就保持数据库处于 状态。 A .安全性 B .一致性 C .完整性 D .可靠性 10、事务的一致性是指__. A .事务中包括的所有操作要么都做,要么都不做 B .事务一旦提交,对数据库的改变是永久的 C .一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D .事务必须使数据库从一个一致性状态变到另一个一致性状态 11、事务的隔离性是指

A .事务中包括的所有操作要么都做,要么都不做 B .事务一旦提交,对数据库的改变是永久的 C .一个事务内部的操作及使用的数据对并发的其他事务是隔离的 D .事务必须使数据库从一个一致性状态变到另一个一致性状态 12、事务的持久性是指

A .事务中包括的所有操作要么都做,要么都不做 B .事务一旦提交,对数据库的改变是永久的 C .一个事务内部的操作及使用的数据对并发的其他事务是隔离的

D .事务必须使数据库从一个一致性状态变到另一个一致性状态 13、多用户数据库系统的目标之一是使它的每个用户好像正在使用一个单用户教据库,为此数据库系统必须进行__. A .安全性控制 B .完整性控制 C .并发控制 D .可靠性控制 14、设有两个事务Tl 、T2 ,其并发操作如图所示,下列评价正确的是 . A .该操作不存在问题 B .该操作丢失修改 C .该操作不能重复读 D .该操作读“脏”数据 T1 ① 读A = 10 ② ③ A = A - 5 写回 ④ T2 读A = 10 A = A - 8 写回 15、设有两个事务Tl 、T2 ,其并发操作如图所示,下列评价正确的是 . A .该操作不存在问题 B .该操作丢失修改 C .该操作不能重复读 D .该操作读“脏”数据 T1 ① 读X=48 ② ③ X=X+10 写回 ④ T2 读X=48 X=X-2 写回 16、设有两个事务Tl 、T2 ,其并发操作如图所示,下列评价正确的是 . A .该操作不存在问题 B .该操作丢失修改 C .该操作不能重复读 D .该操作读“脏”数据 T1 ① 读A=10,B=5 ② ③ ④ 读A=20,B=5 ⑤ 求和25验证错 T2 读A=10 A=A*2 写回 17、设有两个事务Tl 、T2 ,其并发操作如图所示,下列评价正确的是 . A .该操作不存在问题 B .该操作丢失修改 C .该操作不能重复读 D .该操作读“脏”数据 T1 ① 读A=100 ② A=A*2 写回 ③ ④ ROLLBACK 恢复A=100 T2 读A=200

18、设Tl 和T2两个事务,它们对数据A 的并发操作如图所示(其中SLOCK A 表示对数据A 上S 锁,UNLOCK A 表示对数据A 解锁,COMMIT 表示提交操作)。对这个并发操作,下面5 个评价中的 和 两条评价是正确的.

A .该操作不能重复读 B .该操作丢失修改

C .该操作符合完整性要求

D .该操作的第(l )步中,事务T1 应申请X 锁

E .该操作的第(2 )步中,事务T2 不可能得到对A 的锁 T1 ① 请求 SLOCK A 读A=18 ② ③ A=A+10 写回A=28 COMMIT UNLOCK A ④ T2 请求 SLOCK A 读A=18 写回A=18 COMMIT UNLOCK A 19、解决并发操作带来的数据不一致性问题时普遍采用 A .封锁 B .恢复 C .存取控制. D .协商

20、若事务T 对数据R 已加X 锁,则其他事务对数据R A .可以加S 锁不能加X 锁 B .不能加S 锁可以加X 锁 C .可以加S 锁也可以加X 锁 D .不能加任何锁

21、不允许任何其他事务对这个锁定目标再加任何类型锁的锁是__。 A .共享锁 B .排他锁 C .共享锁或排他锁 D .以上都不是 22、数据库的封锁机制是__的主要方法。 A .完整性 B ,安全性 C .并发控制 D .恢复

23、关于“死锁”,下列说法中正确的是 。 A ,死锁是操作系统中的问题,数据库操作中不存在

B .在数据库操作中防止死锁的方法是禁止两个用户同时操作数据库 C . 当两个用户竞争相同资源时不会发生死锁 D .只有出现并发操作时,才有可能出现死锁

24、对并发操作若不加以控制.可能会带来__问题. A .不安全 B .死锁 C .死机 D .不一致

25、数据库系统并发控制的主要方法是采用 机制。 A .拒绝 B .改为串行 C .封锁 D .不加任何控制

26、若数据库中只包含成功事务提交的结果,则此数据库就称为处于__状态。 A .安全 B .一致

C .不安全 D .不一致

27、若系统在运行过程中,由于某种原因,造成系统停止运行.致使事务在执行过程中以非控方式终止,这时内存中的信息丢失,而存储在外存上的数据未受影响,这种情况称为__. A .事务故障 B .系统故障 C .介质故障 D .运行故障 28、若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部损失,这种情祝称为__。

A .事务故障 B .系统故障 C ,介质故障 D .运行故障

31、用于数据库恢复的重要文件是__. A .数据库文件 B .索引文件 C .日志文件 D . 备注文件

32、 并发操作会带来哪些数据不一致性?__。 A .丢失修改、不可重复读、脏读、死锁 B 不可重复读、脏读、死锁 C .丢失修改、脏读、死锁

D .丢失修改、不可重复读、脏读

35、如果事务T获得了数据项Q上的排它锁,则T对Q( )。

A. 只能读不能写 B. 只能写不能读 C. 不能读不能写 D. 既可读又可写 36、DBMS对数据库的锁有共享锁和排它锁,封锁是( )的主要方法。

A. 安全性控制 B. 完整性控制 C. 并发控制 D. 数据库恢复 37、数据恢复的建立冗余数据的常用技术( )。

A. 数据转储和登记日志文件 B. 数据备份和加密技术 C. 视图与审计 D. 数据库镜像

二、简答题

1、事务的概念及四个特性 2、数据库系统的故障种类 3、封锁的概念 4、可串性化调度 5、两段锁协议 三、综合题

1、现有两个事务,分别包含下列操作:

事务T1:读B:A=B+1;写回A; 事务T2:读A:B=A+1;写回B;

假设A,B的初值均为2。请分析下面两个事务的并发执行是否为可串行化调度,说明原因。

T1 T2 SLOCK(B) Y=READ(B)=2 UNLOCK(B)

XLOCK(A)

SLOCK(A)

A=Y+1=3

等待

WRITE(A) UNLOCK(A) 等待 等待

X=READ(A)=3 UNLOCK(A) XLOCK(B) B=X+1=4 WRITE(B) UNLOCK(B)

2、现有两个事务,分别包含下列操作:

事务T1:读B:A=B+1;写回A; 事务T2:读A:B=A+1;写回B;

假设A,B的初值均为2。请分析下面两个事务的并发执行是否为可串行化调度,说明原因。

T1 T2 SLOCK(B) Y=READ(B)=2

SLOCK(A) X=READ(A)=2 UNLOCK(B)

UNLOCK(A) XLOCK(A)

A=Y+1=3 WRITE(A)

XLOCK(B) B=X+1=3 WRITE(B) UNLOCK(A)

UNLOCK(B) 3、现有两个事务,分别包含下列操作:

事务T1:读B:A=B+1;写回A; 事务T2:读A:B=A+1;写回B;

假设A,B的初值均为2。请分析下面两个事务的并发执行是否为可串行化调度,说明原因。

T1 T2 SLOCK(B) Y=READ(B)=2 UNLOCK(B) XLOCK(A)

A=Y+1=3 WRITE(A) UNLOCK(A)

SLOCK(A) X=READ(A)=3 UNLOCK(A)

XLOCK(B) B=X+1=4 WRITE(B) UNLOCK(B)