数据库系统教程(第三版课后答案)免费下载 下载本文

·DBMS的查询处理器有四个模块:DML编译器,嵌入型DML预编译器,DDL编译器,查询运行核心程序。 ·DBMS的存储管理器有四个模块:授权和完整性管理器,事务管理器,文件管理器,缓冲区管理器。 ·磁盘存储器中有五种数据结构:数据文件,数据字典,索引文件,统计数据组织和日志。

1.24 使用DBS的用户有哪几类? 答:(略,见习题1.23)

1.25 DBMS的查询处理器和存储管理器各有哪些功能? 答:(略,见习题1.23)

1.26 磁盘存储器中有哪五类主要的数据结构? 答:(略,见习题1.23)

1.27 根据计算机的系统结构,DBS可分成哪四种?各有什么特点?

答:根据计算机的系统结构,DBS可分成集中式、C/S式、并行式和分布式等四种 集中式DBS的特点是单点数据(DB集中在一个场地)单地处理(单个CPU)。 C/S式DBS的特点是计算机的功能分放在客户机和服务器上(即功能的分布)。客户机上专门实现前端处理和用户界面。服务器上完成事务处理和数据访问控制。

并行式DBS的特点是使用多个CPU和多个磁盘进行并行操作。

分布式DBS的特点是多点数据(DB分布在多个场地)多点处理(多个CPU)。数据具有物理分布性和逻辑整体性特点。系统中事务有本地事务(访问本地DB)和全局事务(访问至少两个场地的DB)之分。

1.28 DBS能产生哪些效益?

答:DBS的应用,使计算机应用深入到社会的每个角落。其效益有以下7个方面:灵活性,简易性,面向用户,有效的数据控制,加快应用开发速度,维护方便,标准化。

1.3 自测题

1.3.1 填空题

1.数据管理技术的发展,与__________、__________和__________有密切的联系。 2.文件系统中的数据独立性是指__________独立性。

3.文件系统的缺陷是:_________、_________和__________。

4.就信息处理的方式而言,在文件系统阶段,__________处于主导地位,_________只起着

服从程序设计需要的作用;而在数据库方式下,_________占据了中心位置。

5.对现实世界进行第一层抽象的模型,称为__________模型;对现实世界进行第二层抽象的

模型,称为__________模型。

6.层次模型的数据结构是__________结构;网状模型的数据结构是__________结构;关系模

型的数据结构是__________结构;面向对象模型的数据结构之间可以__________。

7.在层次、网状模型中,用__________导航数据;而在关系模型中,用__________导航数据。 8.数据库的三级模式结构是对__________的三个抽象级别。

9.DBMS为应用程序运行时开辟的DB系统缓冲区,主要用于__________和__________。 10.在数据库技术中,编写应用程序的语言仍然是C一类高级语言,这些语言被称为

__________语言。

11.在DB的三级模式结构中,数据按__________的描述提供给用户,按__________的描述

存储在磁盘中,而__________提供了连接这两级的相对稳定的中间观点,并使得两级中的任何一级的改变都不受另一级的牵制。

12.层次、网状的DML属于________语言,而关系型DML属于_________语言。 13.DBS中存放三级结构定义的DB称为__________。

14.从模块结构考察,DBMS由两大部分组成:__________和__________。 15.DBA有两个很重要的工具:__________和__________。

16.DBS是________、_________、_________和_________的集合体。 17.DBS的全局结构体现了其__________结构。 18.在DBS中,DB在磁盘上的基本组织形式是_________,这样可以充分利用OS _________

的功能。

19.根据计算机的系统结构,DBS可分成四种类型:_______、_______、_______和_______。 20.数据独立性使得修改DB结构时尽量不影响已有的__________。 1.3.2 单项选择题(在备选答案中选出一个正确答案) 1.在DBS中,DBMS和OS之间关系是 [ ] A.并发运行 B.相互调用

C.OS调用DBMS D.DBMS调用OS 2.在数据库方式下,信息处理中占据中心位置的是 [ ] A.磁盘 B.程序 C.数据 D.内存 3.DB的三级体系结构是对_________抽象的三个级别。 [ ] A.存储器 B.数据 C.程序 D. 外存 4.DB的三级模式结构中最接近外部存储器的是 [ ] A.子模式 B.外模式 C.概念模式 D.内模式

5.DBS具有“数据独立性”特点的原因是因为在DBS中 [ ] A.采用磁盘作为外存 B.采用三级模式结构

C.使用OS来访问数据 D.用宿主语言编写应用程序 6.在DBS中,“数据独立性”和“数据联系”这两个概念之间联系是 [ ] A.没有必然的联系 B.同时成立或不成立

C.前者蕴涵后者 D.后者蕴涵前者 7.数据独立性是指 [ ] A.数据之间相互独立 B.应用程序与DB的结构之间相互独立

C.数据的逻辑结构与物理结构相互独立 D.数据与磁盘之间相互独立 8.DB中数据导航是指 [ ] A.数据之间联系 B.数据之间指针联系

C.从已知数据找未知数据的过程 D.数据的组合方式 9.用户使用DML语句对数据进行操作,实际上操作的是 [ ] A.数据库的记录 B.内模式的内部记录

C.外模式的外部记录 D.数据库的内部记录值 10.对DB中数据的操作分成两大类: [ ] A.查询和更新 B.检索和修改

C.查询和修改 D.插入和修改 1.3.3 问答题

1.试对数据管理技术三个发展阶段作一详细的比较。

2.在用户访问数据库中数据的过程中,DBMS起着什么作用? 3.什么是“DB的系统缓冲区”? 4.DBS中有哪些系统软件?

1.4 自测题答案

1.4.1 填空题答案

1.硬件 软件 计算机应用 2.设备 3.数据冗余 数据不一致 数据联系弱 4.程序设计 数据 数据

5.概念 结构(或逻辑) 6.树 有向图 二维表 嵌套和递归 7.指针 关键码(或外键与主键) 8.数据 9.数据的传输 格式的转换 10.宿主语言(或主语言,host language) 11.外模式 内模式 概念模式 12.过程性 非过程性 13.数据字典(DD) 14.查询处理器 存储管理器 15.一系列实用程序 DD系统 16.数据库 硬件 软件 DBA 17.模块功能 18. 文件 管理外存(或文件系统) 19.集中式 C/S式 并行式 分布式 20.应用程序 1.4.2 单项选择题答案

1.D 2.C 3.B 4.D 5.B 6.A 7.B 8.C 9.C 10. A

1.4.3 问答题答案

1.答:数据管理技术三个发展阶段的详细比较见图1.1。 人工管理阶段 文件系统阶段 数据库阶段 时 间 20世纪50年代 60年代 70年代 环 外存 纸带、卡片、磁带 磁盘 大容量磁盘 境 软件 汇编语言 3GL、OS DBMS 计算机应用 科学计算 进入企业管理 企业管理 数据的管理者 用户(程序员) 文件系统 DBS 数据的针对者 面向某一应用程序 面向某一应用 面向现实世界 数据的共享程度 无共享 共享性差、冗余度大 共享性高、冗余度小 数据独立性 无独立性, 独立性差, 有高度的物理独立性,

数据完全依赖于程序 有设备独立性 一定的逻辑独立性

数据的结构化 无结构 记录内有结构, 整体结构化,

整体结构性差 用数据模型描述 图1.1

2.答:在用户访问数据的过程中,DBMS起着核心的作用,实现“数据三级结构转换”的工作。

3.答:在应用程序运行时,DBMS在内存为其开辟一个程序工作区,称为“DB的系统缓冲区”。这个工作区主要用于“数据的传输和格式的转换”。

4.答:DBS应包括DBMS、OS、宿主语言和应用开发支撑软件等四部分系统软件。 DBMS是管理DB的软件系统,但对硬盘的管理是由OS实现的,因此DBS中应包括DBMS和OS这两个主要的系统软件。

编写应用程序仍然是用C一类高级程序设计语言,这些语言在DBS中称为宿主语言。 为提高应用程序开发效率,需要像Dephi、PowerBuilder一类软件开发工具(即应用开发支撑软件)开发应用程序。这些软件属于4GL范畴,可使应用系统开发生产率提高20~100倍。

第2章 关系模型和关系运算理论

2.1 基本内容分析

2.1.1 本章重要概念

(1)基本概念 关系模型,关键码(主键和外键),关系的定义和性质,三类完整性规则,ER模型到关系模型的转换规则,过程性语言与非过程性语言。

(2)关系代数 五个基本操作,四个组合操作,七个扩充操作。

(3)关系演算 元组关系演算和域关系演算的原子公式、公式的定义。关系演算的安全性和等价性。

(4)关系代数表达式的优化 关系代数表达式的等价及等价转换规则,启化式优化算法。

(5)关系逻辑 谓词、原子、规则和查询,规则的安全性,用规则模拟关系代数表达式。 2.1.2 本章的重点篇幅

(1)教材中P56的例2.7(关系代数表达式的应用实例)。 (2)教材中P63的例2.19(元组表达式的应用实例)。 (3)教材中P81的例2.36(关系逻辑的规则表示)。 2.1.3 重要内容分析 1.关系代数表达式的运用技巧

(1)一般规则

·对于只涉及到选择、投影、联接的查询可用下列表达式表示:

π…(σ…(R×S)) 或者π…(σ…(R?S))

·对于否定的操作,一般要用差操作表示,例如“检索不学C2课的学生姓名”。

·对于检索具有“全部”特征的操作,一般要用除法操作表示,例如“检索学习全部课程的学生姓名”。

(2)“检索不学C2课的学生姓名”,决不能用下式表示:

πSNAME,AGE(σC#≠'C2'(S?SC))

一定要用“差”的形式:

πSNAME,AGE(S)-πSNAME,AGE(σC#='C2'(S?SC))

(3)“检索学习全部课程的学生学号”,要用πS#,C#(SC)÷πC#(C)表示,

而不能写成 πS# (SC÷πC#(C))形式。这是因为一个学生学的课程的成绩可能是不一样的。

(4)对于教材P56的例2.7的8个查询语句的关系代数表达式,考生一定要掌握,这是基础。 2.非过程性语言与过程性语言的区别

编程时必须指出“干什么”及“怎么干”的语言,称为过程性语言;编程时只须指出“干什么”,不必指出“怎么干”的语言,称为非过程性语言。

两种语言的主要区别见图2.1。