计算机科学与技术3数据库技术复习题 下载本文

《数据库技术》复习题

一、单项选择题

1. 在关系的专门运算中,从表中取满足某种条件属性(列)的操作称为( B )。

A)连接 B)投影 C)选择 D)截取 参看教材2.4.2节,掌握各种运算的方法和特点 2. 在数据库系统阶段,数据是( D )。

A)有结构的

B)无结构的 D)整体结构化的

C)整体无结构,记录内有结构

参看教材1.1.2节

3. 关系模式规范化的最起码的要求是达到第一范式,即满足( D )。

A)每个非码属性都完全依赖于主码 B)主码属性唯一标识关系中的的元组 C)关系中的元组不可重复 D)每个属性都是不可分解的 参看教材4.2节,掌握1NF,2NF,3NF和BCNF的定义 4. 要求在无任何事务进行的情况下进行的转储方式称为( C )。

A)静态转储 B)动态转储 C)闲置转储 D)增量转储

参看教材5.4.2节

5. 如果事务T获得了数据项Q上的排它锁,则T对Q( C )

A)只能读不能写 B)只能写不能读 C)既可读又可写 D)不能读不能写 参看教材5.3.3节,掌握封锁的定义和分类及应用

6. ( C )是长期存储在计算机内的有组织,可共享的数据集合。

A)数据库系统 B)数据库管理系统 C)数据库 D)文件组织 参看教材1.1.1节,掌握数据库系统中的一些基本概念。 7. 在数据模型的三要素中,数据的约束条件规定数据及其联系的( B )。

A)动态特性 B)制约和依存规则 C)静态特性 D)数据结构 参看教材1.2.1节。 8. 在数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它是

数据库设计的( C )阶段。

A)需求分析 B)逻辑设计 参看教材6.1节。

C)概念设计 D)物理设计

9. 若系统在运行过程中,由于某种硬件故障,使存储在外存上的数据部分损失或全部

损失,这种情况称为( C )。

第1页(共12页)

A)事务故障 B)系统故障 C)介质故障 D)运行故障 参看教材5.4.1节。

10. SQL语言具有( A )的功能。

A)数据定义、数据操纵、数据控制 B)数据定义、关系规范化、数据操纵 C)数据定义、关系规范化、数据控制 D)关系规范化、数据操纵、数据控制 参看教材3.1节。

11. 单个用户使用的数据视图的描述称为( A )

A)外模式 B)概念模式 C)内模式 D)存储模式 参看教材1.3.1节。

12. ( A )是数据库系统中最重要的的人员。

A)数据库管理员 B)数据维护人员 C)数据库应用开发人员 D)终端用户 参看教材1.5.4节。 13. SQL中聚合函数“MIN(列名)”的功能是( C )。

A)求列总和 B)求列平均 C)求列中最小值 D)求列中最大值 参看教材3.3.1节。 14. 下面哪个不是数据库系统必须提供的数据控制功能( D )。

A)安全性 B)并发控制 C)完整性 D)可移植性 参看教材5章。 15. 并发操作会带来哪些数据不一致性( D )。

A)丢失修改、不可重复读、脏读、死锁 B)不可重复读、脏读、死锁 C)丢失修改、脏读、死锁

D)丢失修改、不可重复读、脏读 参看教材5.3.1节。

16. 逻辑数据独立性是指( B )

A)模式变,用户不变 B)模式变,应用程序不变 C)应用程序变,模式不变 D)子模式变,应用程序不变 参看教材1.3.1节。

17. 任何由二个属性组成的关系( D )

A)可能为1NF B)可能为2NF C)可能为3NF D)必为3NF 参看教材4.2节。两个属性的关系不可能存在部份函数依赖和传递函数依赖。 18. 五种基本关系代数运算是( A )

A)∪,-,×,π和σ B)∪,-,∞,π和σ

第2页(共12页)

C)∪,∩,×,π和σ D)∪,∩,∞,π和σ 参看教材2.4节。

19.设关系模式R (A,B,C),F是R上成立的FD集,F = {B→C},则分解ρ = {AB,BC}

相对于F( A )。

A)是无损联接,也是保持FD的分解 B)是无损联接,但不保持FD的分解 C)不是无损联接,但保持FD的分解

D)既不是无损联接,也不保持FD 的分解 参看教材4.3节。 20.SQL中,下列涉及空值的操作,不正确的是( C )

A)AGE IS NULL B)AGE IS NOT NULL C)AGE = NULL D)NOT (AGE IS NULL) 参看教材3.3节。 二、填空

1. 登记日志文件必须遵循两条原则是_1登记的次序严格按照冰法事物执行的时间顺序2

必须先写日志文件,后写数据库_____。 参看教材5.4.2节。

2. 人们通常按照_____数据结构________________的类型来命名数据模型。 参看教材1.2.1节。答案是数据模型三要素之一。

3. 对于属性X的每个值,属性Y都有唯一的值与之对应,称Y__函数依赖于___ X,记

为X→Y。 参看教材4.1.3节。 4. 按谓词变元的不同,关系演算可分为__元祖关系演算和域关系演算_____。 参看教材2.5节。

5. 规范化理论正是用来改造关系模式,通过___分解关系模式___来消除其中不合适的

___数据依赖__,以解决插入异常、删除异常、更新异常和数据冗余问题。

参看教材4.3节。

6. 视图与基本表不同,是一个虚表。即数据库中只存放视图的___定义______,而不存

放视图对应的数据。

参看教材3.5节。

7. 用于数据库恢复的重要文档资料是__原数据库文件和数据库备份文件___。 参看教材5.4节。

第3页(共12页)

8. 所谓两段锁协议是指事务分为_生长阶段(加锁阶段)和衰退阶段(解锁阶段)_两个阶段。 参看教材5.3.3节。 9. _包含在任一候选关键字中的属性________称为主属性。 参看教材2.2节。

10. 若要求分解既具有无损连接性,又保持函数依赖,则模式分解一定可以达到_3_NF。 参看教材4.3.2节。 11. 同时涉及两个以上表或视图的查询称为____连接查询___。 参看教材3.3.2节。

12. _内模式___是数据库中全体数据的逻辑结构和特征的描述, 是所有用户的公共数据

视图。它仅仅涉及到型的描述,不涉及到具体的值。 参看教材1.3.1节。 13. 信息世界中客观存在并可相互区别的事物称为__实体_____。 参看教材1.2节。

14. 1级封锁协议可防止____丢失更改_________,并保证事务是可恢复的。 参看教材5.3.3节。 15. 属性的取值范围称为该属性的___域___。

参看教材1.2节。

16. 设关系模式R (A,B,C),F是R上成立的FD集,F = {B→A,B→C},则分解ρ =

{AB,AC}丢失的FD是_____ B→C_____。 参看教材4.3节。 17. 事务必须具有的四个性质是:原子性、一致性、___隔离性__和持久性。

参看教材5.3节。

18. 设关系模式R是第一范式,且每个属性都不传递依赖于R的候选键,则称R是_BCNF。

参看教材4.2节。 19. 数据库系统中,存放 __三级模式定义_ 的数据库,称为数据字典(DD)。

参看教材1.4节。

20. 视图是定义在 基本表或视图 之上的,对视图的一切操作最终要转换为对

基本表 的操作。 参看教材3.5节。 三、简答题

1. SQL有哪些特点?请具体说明。 参看教材3.1节。

第4页(共12页)

SQL语言集数据查询(data control)、数据操纵(data manipulation)、数据定义(data definition)和数据控制(data control)功能于一体,充分体现了关系数据语言的特点和优点。其主要特点包括:

1.综合统一2.高度非过程化 3.面向集合的操作方式4.以同一种语法结构提供两种使用 方式5.语言简洁,易学易用

2. DBS由哪几部分组成?各有什么作用? 参看教材1.1节。这里给出一个示意性的参考,请进一步完善。

数据库:数据的组织和存储 数据库管理系统:DBS的核心

应用系统:建立在数据库基础上的应用软件 数据库管理员:专职管理DBS的人员 用户:DBS的最终使用者

3. 简述文件系统与数据库系统有什么区别和联系? 参看教材1.1.2节。这里给出一个参考的答案:

1)数据结构化是数据库与文件系统的根本区别。

在文件系统中,相互独立的文件的记录内部是有结构的,管其记录内部已有了某些结构,但记录之间没有联系。数据库系统实现整体数据的结构化,是数据库的主要特征之一,也是数据库系统与文件系统的本质区别。在文件系统中,数据的最小存取单位是记录,粒度不能细到数据项。而在数据库系统中,存取数据的方式也很灵活,可以存取数据库中的某一个数据项、一组数据项一个记录或或一组记录。 2)数据库系统从整体角度看待和描述数据,数据不再面向某个应用而是面向整个系统,这样既可以大大减少数据冗余,节约存储空间,以能够避免数据之间的不相容性与不一致性。而文件系统来之不易时由于数据被重复存储,当不同的应用和修改不同的拷贝时就易造成数据的不一致。

3)文件系统中的文件是为某一特定应用服务的,文件的逻辑结构对该应用程序来说是优化的,因此要想对现有的数据再增加一些新的应用会很困难,系统不容易扩充。而在数据库系统中数据不再针对某一应用,而是面向全组织,具有整体的结构化。 4)数据库系统中的数据由DBMS统一管理和控制。 4. 简述如何用封锁机制保证数据的一致性? 参看教材5.3.3节。

DBMS在对数据进行读、写操作之前首先对该数据执行封锁操作,例如下图中事务T1在对A进行修改之前先对A执行Xlock(A),即对A加X锁。这样,当T2请求对A加X锁时就被拒绝,T2只能等待T1释放A上的锁后才能获得对A的X锁,这时它读到的A是T1更新后的值,再按此新的A值进行运算。这样就不会丢失T1的更新。

第5页(共12页)

DBMS按照一定的封锁协议,对并发操作进行控制,使得多个并发操作有序地执行, 就可以避免丢失修改、不可重复读和读“脏”数据等数据不一致性

5. 规范化理论对数据库设计有什么指导意义? 参看教材6.1节。请自己去归纳总结,这里给出一个参考的答案。

在概念设计阶段,已经把关系规范化的某些思想用作构造实体类型和联系类型的标准,在逻辑设计阶段,仍然要使用关系规范化的理论来设计模式和评价模式。规范化的目的是减少乃至消除关系模式中存在的各种异常,改善完整性,一致性和存储效率。 6. 关系模型的完整性规则有哪几类?请给出它们的具体定义? 参看教材2.3节。有3类。

关系模型提供了3类完整性规则:实体完整性、参照完整性、用户定义的完整性规则。其中实体完整性规则和参照完整性规则是关系模型必须满足的完整性约束条件,成为关系完 整性规则。

实体完整性规则:作为主键的属性或属性组的值在关系中必须是唯一的和确定的。 参照完整性规则:如果表中存在外键,则外键的值必须与主表中相应的键值相同,或者外键的值为空。

上述两类完整性规则是关系模型必须满足的规则,由系统自动支持。

用户定义的完整性规则是针对某一具体数据的约束条件,由应用环境决定。它反映某一具体应用所涉及的数据必须满足的语义要求 7. 简述关系模型有什么特点? 参看教材1.2.3节。

第6页(共12页)

关系中每一个字段也称字段,不可再分,是最基本的单位;每一列数据项是同属性的。列数根据需要而设,且各列的顺序是任意的;每一行记录由一个事物的诸多属性组成,记录的顺序可以是任意的;一个关系是一张二维表,不允许有相同的字段名,也不允许有相同的记录行

8. 什么是视图?它有什么特点和作用? 参看教材3.5节。

视图是存储在数据库中的查询的SQL 语句,视图是从一个或多个表或视图中导出的表,其结构 和数据是建立在对表的查询基础上的. 优点

提高数据安全性,可以不让用户看到表中的某个字段.

9. 什么是DBA?DBA的主要职责是什么? 参看教材1.5.4节。 DBA是指数据库管理员,其主要职责包括设计与定义数据库系统;监督控制数据库系统的使用和运行;改进、重构和重组数据库;转储与恢复数据库为;用户提供帮助和培训。

10. 什么是数据库复制?数据库复制通常有哪几种方式?请具体阐述几种方式的含义和

特点。 参看教材5.5.1节。

数据库复制是将表格或数据库的数据复制到另一个表格中或数据库中,利用数据库复制技术可以把数据库全部内容完整的复制到公司的各个系统中去(也可以选择部分数据), 有三种分发数据的方法:(1)Copy和Paste:这种方法能够实现数据的分发以及更新,但是不能保证数据完全更新,并且无法保证数据库的同步;(2)Geodatabase Replication:能够在两个或者多个Geodatabase之间实现数据的复制与同步。Geodatabase Replication是建立在版本化数据的基础上的,支持拓扑与网络等完全的数据模型,并且能够在不同类型的数据库之间实现数据的复制与同步,例如 Oracle与SQL Server之间;并且还支持在联网和非联网的方式下实现,在支持本地数据库连接的基础上,还支持通过Internet 所获得的GeodataServer对象

四、应用题

1. 设有关系模式R(U, F),其中属性集U={A,B,C,D,E},函数依赖集F={A→C,BC→D,

CD→A,BA→E},R属于第几范式?

1) 求R的所有候选键。根据F可见所有函数依赖的右端均不含B,故B必为候选键

+++

的成员。由于B={B},故B不是候选键。进一步推算AB={ABCDE},BC={BCDAE},++

BD={BD},BE={BE},所以得出候选键为BA和BC。

2) BA和BC是R的候选键,所以B,A,C是主属性,而D和E是非主属性,由F求

+++

出B={B},A={A,C},C={C},可见D和E都不部分依赖于BA或BC,即不存在

第7页(共12页)

任何非主属性对候选键的部分函数依赖;

3) 又因为由F中的BC→D可得BC→CD,再根据F中CD→A得出A传递依赖于BC,即

BC→A,进一步得BA传递依赖于BC,即BC→BA,最后由F中的BA→E得出BC→E,可见,非主属性E传递依赖于候选键BC 根据范式的定义可得R属于2NF。 2. 现有如下关系模式R(U, F),R={A,B,C,D,E},F={AB→E,B→C,C→D}。

问R属于第几范式?

1) 求R的所有候选键。根据F可见所有函数依赖的右端均不含AB,故AB必为候选键

+

的成员。由于AB={ABECD},故AB是唯一的候选键。

+

2) AB是R的候选键,所以A,B是主属性,而C、D和E是非主属性,由F求出A={A},

+

B={BCD},可见非主属性C和D部分依赖于候选键AB,即存在非主属性对候选键的部分函数依赖,所以R不属于2NF,属于1NF。 3. 设有如下所示职工关系ZG、部门关系BM,每张关系表中仅给出了示意性的部分数

据。根据这几张关系表完成以下各小题。

1) 写出检索销售科的职工的姓名和职务的关系代数式。

?姓名,职务?名称='销售科'(ZG?所属部门=代码BM)

2) 写出按年龄降序排列查询所有成都籍职工的姓名和职称的SQL语句。

Select 姓名,职称 From ZG where 籍贯=’成都’order by 年龄 desc; 3) 写出将保卫科的电话改为“8211”的SQL语句。

Update BM set 电话=’8832’ where 名称=’ 保卫科’;

4) 写出查询各科科长的姓名、所属部门名称、性别和年龄的SQL语句。

Select 姓名,名称,性别,年龄 from ZG, BM Where 所属部门=代码 and 职务=’科长’; 5) 写出查询年龄最大的职工的名称和性别的SQL语句。

Select 姓名,性别 from ZG

Where 年龄=(select max(年龄) from ZG);

第8页(共12页)

4. 设有如下所示销售明细关系MXZ和发票关系FP,每张关系表中仅给出了示意性的部

分数据。根据这几张关系表完成以下各小题。

1) 写出检索MXZ中钢笔的详细销售信息的关系代数表达式。

σ品名=?钢笔?(MXZ) 2) 写出检索项龙所销售的物品的名称和金额的关系代数表达式。

?名称,金额?开票人='项龙'(MXZ?FP)

发票号=编号3) 写出查询MXZ中全部信息的SQL语句。

Select * from MXZ;

4) 写出按发票号升序排列查询铅笔销售记录的SQL语句。

Select * From MXZ where 品名=?铅笔? Order By 发票号; 5) 写出查询铅笔的平均价格的SQL语句。

Select AVG(价格) 均价 From MXZ Where 品名=?铅笔?;

6) 写出查询价格最贵的商品的名称和单价的SQL语句。

Select 品名,单价 From MXZ Where 单价 = (Select Max(单价) From MXZ); 7) 写出为数据库用户“刘海明”赋于对表MXZ进行删除和更改的权限的SQL语句。

Grant DELETE,UPDATE ON MXZ TO刘海明; 8) 写出在FP中增加一条新记录的SQL语句,其中记录的编号为“049211”,开票时

间为2008年9月10日,经手人为“陈立”。

Insert into FP VALUES (?049211?,?2008年9月10日?,? 陈立?); 9) 写出统计查询每张发票的总金额的SQL语句。

Select 发票号, Sum(数量*单价) as 总金额 from MXZ group by 发票号;

第9页(共12页)

5. 设有如下所示学生关系S、课程关系C和学生选课关系SC,每张关系表中仅给出了

示意性的部分数据。根据这几张关系表完成以下各小题。

1) 写出检索王华老师所授课程的课名的关系代数表达式。

Π课名 σ任课老师=?王华?(C)

2) 写出检索有至少有一门课不及格的学生的姓名的关系代数表达式。 Π姓名 σ成绩<90(S ∞ SC)

3) 写出根据S、SC和C三张表来检索选修了刘江老师所授课程的学生的学号,姓

名与性别的关系代数式。

Π学号,姓名,性别σ任课老师=? 刘江?( S ∞ C ∞ SC ) 4) 写出将204号课程的成绩降低20分的SQL语句。

update SC set 成绩=成绩-20 where 课号 = ‘204’; 5) 写出查询不同的性别的学生的人数的SQL语句。

Select 性别,count(*) as 人数 from From S group by 性别; 6) 写出查询学生的平均年龄的SQL语句。

Select avg(年龄) from S;

7) 写出按年龄降序排列方式查询所有22岁以上女同学的SQL语句。

Select * From S where 性别=’女’ AND 年龄>=22 Order by 年龄 DESC; 8) 写出删除王刚同学的所有成绩记录的SQL语句。

Delete From SC Where 学号= (Select 学号 From S Where 姓名=’ 王刚’); 9) 写出查询与陈真同学同年龄的同学的姓名(要求结果中不含陈真)的SQL语句。

Select 姓名 from From S where 年龄=(select 年龄 from S where 姓名=’陈真’); 10) 写出查询“软件工程”课程成绩及格了的学生的姓名和成绩的SQL语句。

Select 姓名,成绩 from S, SC, C Where S.学号=SC.学号 AND SC.课号=C.课号

第10页(共12页)

AND C.课名=‘软件工程’AND C.成绩>=60;

6. 某超市公司下属有若干个连锁商店,每个商店经营若干种商品,每个商店有若干职工,

但每个职工只能在一个商店工作。设实体类型“商店”的属性有:商店编号,店名,店址,店经理。实体类型“商品”的属性有:商品编号,商品名,单价,产地。实体类型“职工”的属性有:职工编号,职工名,性别,工资。试画出反映商店、商品、职工实体及其联系类型的E-R图,要求在联系中应反映出职工参加某个商店工作的起止时间,商店销售商品的月销售量。试根据以上语义画出该管理系统的E-R图,并根据数据库逻辑结构设计中E-R图向数据模型转换的基本的转换规则转换出该管理系统的关系模式集。

参考ER图:

参考转换结果如下:

商店(店号,店名,店址,店经理)

职工(工号,姓名,性别,工资,店号,开始时间) 商品(商品号,品名,单价,产地)

经营(店号,商品号,月销售量)

7. 设某商业集团数据库中有三个实体集。一是“仓库”实体集,属性有仓库号、仓

库名和地址;二是“商店”实体集,属性有商店号、商店名、地址;三是“商品”实体集,属性有商品号、商品名、单价。设仓库与商品之间存在“库存”联系,每个仓库可存储若干种商品,每种商品存储在若干仓库中,每个仓库每存储一种商品有个日期及存储量;商店与商品之间存在着“销售”联系,每个商店可销售若干种商品,每种商品可在若干商店里销售,每个商店销售一种商品有月份和月销售量两个属性;仓库、商店、商品之间存在着“供应”联系,有月份和月供应量两个属性。 试根据以上语义画出该商业集团管理系统的E-R图,并根据数据库逻辑结构设计中E-R图向数据模型转换的基本的转换规则转换出该管理系统的关系模式集。 参考E-R图如下:

第11页(共12页)

转换出的模式集如下:

管理员(职工号,姓名,家庭地址)

仓库(仓库号,面积,电话号码,管理员编号) 零件(零件号,名称,规格,单价) 库存(仓库号,零件号,库存数量)

第12页(共12页)