数据库系统教程课后答案施伯乐第三版.docx
《数据库系统教程课后答案施伯乐第三版.docx》由会员分享,可在线阅读,更多相关《数据库系统教程课后答案施伯乐第三版.docx(94页珍藏版)》请在冰豆网上搜索。
数据库系统教程课后答案施伯乐第三版
第1章数据库概论
1.1基本内容分析
1.1.1本章的重要概念
(1)DB、DBMS和DBS的定义
(2)数据管理技术的发展阶段人工管理阶段、文件系统阶段、数据库系统阶段和高级数据库技术阶段等各阶段的特点。
(3)数据描述概念设计、逻辑设计和物理设计等各阶段中数据描述的术语,概念设计中实体间二元联系的描述(1:
1,1:
N,M:
N)。
(4)数据模型
数据模型的定义,两类数据模型,逻辑模型的形式定义,ER模型,层次模型、网状模型、关系模型和面向对象模型的数据结构以及联系的实现方式。
(5)DB的体系结构三级结构,两级映像,两级数据独立性,体系结构各个层次中记录的联系。
(6)DBMS
DBMS的工作模式、主要功能和模块组成。
(7)DBS
DBS的组成,DBA,DBS的全局结构,DBS结构的分类。
1.1.2本章的重点篇幅
(1)教材P23的图1.24(四种逻辑数据模型的比较)。
(2)教材P25的图1.27(DB的体系结构)。
(3)教材P28的图1.29(DBMS的工作模式)。
(4)教材P33的图1.31(DBS的全局结构)。
1.2教材中习题1的解答
1.1名词解释
•逻辑数据:
指程序员或用户用以操作的数据形式。
•物理数据:
指存储设备上存储的数据。
•联系的元数:
与一个联系有关的实体集个数,称为联系的元数。
•1:
1联系:
如果实体集E1中每个实体至多和实体集E2中的一个实体有联系,反之亦然,那么E1和E2的联系称为“1:
1联系”。
•1:
N联系:
如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,而E2中每个实体至多和E1中一个实体有联系,那么E1和E2的联系是“1:
N联系”
•M:
N联系:
如果实体集E1中每个实体可以与实体集E2中任意个(零个或多个)实体有联系,反之亦然,那么E1和E2的联系称为“M:
N联系”。
•数据模型:
能表示实体类型及实体间联系的模型称为“数据模型”。
•概念数据模型:
独立于计算机系统、完全不涉及信息在计算机中的表示、反映企业组织所关心的信息结构的数据模型。
•结构数据模型(或逻辑数据模型):
与DBMS有关的,直接面向DB的逻辑结构、从计算机观点对数据建模的数据模型。
•层次模型:
用树型(层次)结构表示实体类型及实体间联系的数据模型称为层次模型。
•网状模型:
用有向图结构表示实体类型及实体间联系的数据模型称为网状模型。
•关系模型:
用二维表格表达实体集的数据模型。
•外模式:
是用户用到的那部分数据的描述。
•概念模式:
数据库中全部数据的整体逻辑结构的描述。
•内模式:
DB在物理存储方面的描述。
•外模式/模式映象:
用于定义外模式和概念模式之间数据结构的对应性。
•模式/内模式映象:
用于定义概念模式和内模式之间数据结构的对应性。
•数据独立性:
应用程序和DB的数据结构之间相互独立,不受影响。
•物理数据独立性:
在DB的物理结构改变时,尽量不影响应用程序。
•逻辑数据独立性:
在DB的逻辑结构改变时,尽量不影响应用程序。
•主语言:
编写应用程序的语言(如C一类高级程序设计语言),称为主语言。
•DDL:
定义DB三级结构的语言,称为DDL。
•DML:
对DB进行查询和更新操作的语言,称为DML。
•过程性语言:
用户编程时,不仅需要指出“做什么”,还需要指出“怎么做”的语言。
•非过程性语言:
用户编程时,只需指出“做什么”,不需要指出“怎么做”的语言。
•DD(数据字典):
存放三级结构定义的DB,称为DD。
•DD系统:
管理DD的软件系统,称为DD系统。
1.2试解释DB、DBMS和DBS三个概念。
答:
DB是长期存储在计算机内、有组织的、统一管理的相关数据的集合。
DBMS是位于用户与OS之间的一层数据管理软件,它为用户或应用程序提供访问DB的方法。
DBS是实现有组织地、动态地存储大量关联数据、方便多用户访问的计算机硬件、软件和数据资源组成的系统,即采用数据库技术的计算机系统。
1.3人工管理阶段和文件系统阶段的数据管理各有哪些特点?
答:
人工管理阶段主要有四个特点:
数据不保存在计算机内;没有专用的软件对数据进行
管理;只有程序的概念,没有文件的概念;数据面向程序。
文件系统阶段主要有五个特点:
数据以“文件”形式长期保存;数据的逻辑结构与物理结构有了区别;文件组织已多样化;数据面向应用;对数据的操作以记录为单位。
1.4文件系统阶段的数据管理有些什么缺陷?
试举例说明。
答:
主要有三个缺陷:
数据冗余;数据不一致性;数据联系弱。
例如学校里教务处、财务处、保健处建立的文件中都有学生详细资料,譬如联系电话,
家庭住址等。
这就是“数据”冗余;如果某个学生搬家,就要修改三个部门文件中的数据,否则会引起同一数据在三个部门中不一致;产生上述问题的原因是这三个部门的文件中数据没有联系。
1.5数据管理的数据库阶段产生的标志是哪三件事情?
答:
进入数据库阶段的标志是20世纪60年代末发生的三件事件:
•1968年IBM公司研制的IMS系统是一个典型的层次DBS;
•1969年美国CODASYL组织DBTG报告,提出网状DBS的概念;
•1970年美国IBM公司的E.F.Codd发表论文,提出关系模型的思想。
1.6数据库阶段的数据管理有哪些特点?
答:
主要有五个特点:
采用数据模型表示复杂的数据结构;有较高的数据独立性;为用户提供了方便的用户接口;提供了四个方面的数据控制功能;对数据的操作以数据项为单位,增加了系统的灵活性。
1.7与“文件”结构相比,“数据库”结构有些什么不同?
答:
与文件结构相比,数据库结构主要有下面三点不同:
•数据的结构化。
文件由记录组成,但各文件之间缺乏联系。
数据库中数据在磁盘中仍以文件形式组织,但这些文件之间有着广泛的联系。
数据库的逻辑结构用数据模型来描述,整体结构化。
数据模型不仅描述数据本身的特点,还要描述数据之间的联系。
•数据独立性。
文件只有设备独立性,而数据库还具有逻辑独立性和物理独立性。
•访问数据的单位。
访问文件中的数据,以记录为单位。
访问数据库中的数据,以数据项(字段)为单位,增加了系统的灵活性。
1.8什么是数据独立性?
在数据库中有哪两级独立性?
答:
数据独立性是指应用程序与DB的数据结构之间相互独立。
在物理结构改变时,尽量不影响应用程序,称为物理数据独立性;在逻辑结构改变时,尽量不影响应用程序,称为逻辑数据独立性。
1.9分布式数据库系统和面向对象数据库系统各有哪些特点?
答:
DDBS主要有三个特点:
•数据物理上分布在各地,但逻辑上是一个整体;
•每个场地既可以执行局部应用,也可以执行全局应用;
•各地的计算机由数据通信网络相连接。
面向对象数据系统主要有两个特点:
•面向对象数据模型能完整地描述现实世界的数据结构,能表达数据间嵌套、递归的联系。
•具有面向对象技术的封装性和继承性的特点,提高了软件的可重用性。
1.10逻辑记录与物理记录,逻辑文件与物理文件有些什么联系和区别?
答:
逻辑数据是用户用以操作的数据形式,是抽象的概念化数据。
物理数据是实际存放在存储设备上的数据。
逻辑数据与物理数据在结构上可以差别很大,需通过两级映象来进行数据传输和格式转换。
从以上的解释可以看出,逻辑记录和逻辑文件是用户在程序中使用的记录和文件,而物理记录和物理文件是指磁盘上的记录和文件。
逻辑记录、文件与物理记录、文件在结构、组成上有很大的差异,而数据管理软件就是通过三级结构两级映象来实现逻辑数据与物理数据之间的转换。
1.11试述ER模型、层次模型、网状模型、关系模型和面向对象模型的主要特点。
答:
ER模型直接表示实体类型及实体间联系,与计算机系统无关,充分反映用户的需求,用户容易理解。
层次模型的数据结构为树结构,记录之间联系通过指针实现,查询较快,但DML属于过程化的,操作复杂。
网状模型的数据结构为有向图,记录之间联系通过指针实现,查询较快,并且容易实现M:
N联系,但DML属于过程化的语言,编程较复杂。
关系模型的数据结构为二维表格,容易为初学者理解。
记录之间联系通过关键码实现。
DML属于非过程化语言,编程较简单。
面向对象模型能完整描述现实世界的数据结构,具有丰富的表达能力,能表达嵌套、递归的数据结构。
但涉及的知识面较广,用户较难理解,这种模型尚未普及。
1.12数据之间联系在各种结构数据模型中是怎么实现的?
答:
在层次、网状模型中,数据之间的联系通过指针实现的;在关系模型中,数据之间联系通过外键和主键间联系实现的;在面向对象模型中,数据之间嵌套、递归联系通过对象标识符(OID)实现的(见第8章)。
1.13DB的三级模式结构描述了什么问题?
试详细解释。
答:
DB的三级模式结构是对数据的三个抽象级别,分别从外部(用户)级、概念级和内部级去观察数据库。
外部级是用户使用的局部数据库的逻辑结构,其描述称为外模式。
概念级是DB的整体逻辑结构,其描述称为概念模式。
内部级是DB的物理结构,其描述称为内模式。
1.14试述概念模式在数据库结构中的重要地位。
答:
数据按外模式的描述提供给用户,按内模式的描述存储在磁盘中,而概念模式提供了连接这两级的相对稳定的中间观点,并使得两级的任何一级的改变都不受另一级的牵制。
1.15试叙述用户、DB的三级模式结构、磁盘上的物理文件之间有些什么联系和不同?
答:
用户、外模式、概念模式、内模式和物理文件中的记录分别称为用户记录、外部记录、概念记录、内部记录和物理记录。
用户记录与外部记录的结构是一致的,它们之间只是数据传输问题。
而外部记录、概念记录和内部记录之间的结构可能是不一致的,除了数据传输问题,还有格式转换问题。
内部记录与物理记录的结构是一致的,它们之间只是数据传输问题。
1.16数据独立性与数据联系这两个概念有什么区别?
答:
数据独立性是指应用程序和DB的数据之间相互独立,不受影响,对系统的要求是“数据独立性要高”,而数据联系是指记录之间的联系,对系统的要求是“数据联系密切”。
1.17试述DBMS勺工作模式和主要功能。
答:
DBMS的工作模式有六点:
•接受应用程序的数据请求和处理请求;
•将用户的数据请求转换成低层指令;
•实现对DB的操作;
•从对DB的操作中接受查询结果;
•对查询结构进行处理;
•将处理结果返回给用户。
DBMS勺主要功能有DB的定义、操纵、保护、维护和数据字典等五个功能。
1.18试叙述DBMS寸数据库的维护功能。
答:
包括DB的数据载入、转换、转储、DB的改组以及性能监控等功能。
这些功能分别由各个实用程序完成。
1.19从模块结构观察,DBM抽哪些部分组成?
答:
DBMS由两大部分组成:
查询处理器和存储管理器。
(解释略)
1.20DBS有哪几部分组成?
其中DD有什么作用?
答:
DBS由DB、硬件、软件和DBA等四个部分组成。
(解释略)
在DBS中,DD是存储三级结构描述(即元数据)的DB。
DBMS的所有工作都要以DD中的元数据为依据,也就是所有工作都要通过DD访问DB。
1.21“元数据”与“数据”之间有些什么联系与区别?
答:
元数据(metadata是指“数据的数据”,即数据的描述。
DB中的元数据是指三级模式结构的详细描述。
数据(data),一般是指用户使用的具体值。
1.22什么是DBADBA应具有什么素质?
DBA勺职责是什么?
答:
DBA是控制数据整体结构的一组人员,负责DBS的正常运行,承担创建、监控和维护DB结构的责任。
DBA必须具备下列4条素质:
熟悉企业全部数据的性质和用途;对所有用户的需求有充分的了解;对系统的性能非常熟悉;兼有系统分析员和运筹学专家的品质和知识。
DBA的主要职责有6点:
定义模式;定义内模式;与用户的联络;定义安全性规则;定义完整性规则;DB的转储与恢复。
1.23试对DBS的全局结构作详细解释。
答:
从四个方面解释:
•数据库用户有四类:
DBA,专业用户,应用程序员,终端用户。
•DBMS的查询处理器有四个模块:
DML编译器,嵌入型DML预编译器,DDL编译器,查询运行核心程序。
•DBMS的存储管理器有四个模块:
授权和完整性管理器,事务管理器,文件管理器,缓冲区管理器。
•磁盘存储器中有五种数据结构:
数据文件,数据字典,索引文件,统计数据组织和日
1.24使用DBS的用户有哪几类?
答:
(略,见习题1.23)
1.25DBMS的查询处理器和存储管理器各有哪些功能?
答:
(略,见习题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.28DBS能产生哪些效益?
答:
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调用DBMSD.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.
]
B•应用程序与DB的结构之间相互独立
D•数据与磁盘之间相互独立
[
数据独立性是指
A•数据之间相互独立
C.数据的逻辑结构与物理结构相互独立
8.DB中数据导航是指
A.数据之间联系B.数据之间指针联系
C.从已知数据找未知数据的过程D.数据的组合方式
9.用户使用DML语句对数据进行操作,实际上操作的是
A.数据库的记录B.内模式的内部记录
C.外模式的外部记录D.数据库的内部记录值
10.对DB中数据的操作分成两大类:
A.查询和更新B.检索和修改
C.查询和修改D.插入和修改
1
1
2
3
4
3.3问答题试对数据管理技术三个发展阶段作一详细的比较。
在用户访问数据库中数据的过程中,DBMS起着什么作用?
什么是“DB的系统缓冲区”?
DBS中有哪些系统软件?
1.4自测题答案
1.4.1填空题答案1.3.5.7.9.
硬件数据冗余概念指针数据的传输格式的转换
软件计算机应用数据不一致数据联系弱结构(或逻辑)关键码(或外键与主键)
11.外模式内模式概念模式
13.数据字典(DD)15.一系列实用程序17.模块功能
DD系统
设备程序设计树有向图8.数据10.宿主语言(或主语言,hostlanguage)12.过程性非过程性
14.查询处理器存储管理器
16.数据库硬件软件DBA18.文件管理外存(或文件系统)
2.
4.
6.
数据
二维表
数据嵌套和递归
19.集中式C/S式
1.4.2单项选择题答案
并行式分布式20.应用程序
3.
1.D2.C
6.A7.B
B4.D5.B
8.C9.C10.A
143问答题答案
1.答:
数据管理技术三个发展阶段的详细比较见图1.1
环外存
境|软件计算机应用数据的管理者
数据的针对者数据的共享程'数据独立性
数据的结构化
人工管理阶段
20世纪50年代
纸带、卡片、汇编语言
科学计算—
用户(程序员
文件系统阶段
数据库阶段
磁带
60年代
磁盘
3GL、O
进入企业管理
文件系统
面向某一应用
程序
面向某一
应用
70年代
大容量磁盘
S
DBM
企业管理
DBS
无共享
无独立性,数据完全依赖于程序
共享性差、冗余度大
独立性差,
有设备独
无结构
现实世界
生高、冗余度小性,
定的逻辑独立性
化,
述
面向〕
共享丿
有高度的物理独立立性
记录内有结构,整体结构性差
图1.1
整体结构,用数据模型描
2.答:
在用户访问数据的过程中,DBMS起着核心的作用,实现“数据三级结构转换”的工作。
3.答:
在应用程序运行时,DBMS在内存为其开辟一个程序工作区,称为“DB的系统缓冲区”o这个工作区主要用于“数据的传输和格式的转换”。
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)一般规则
•对于只涉及到选择、投影、联接的查询可用下列表达式表示:
n…(c…(RXS))或者n…(c…(R?
S))
•对于否定的操作,一般要用差操作表示,例如“检索不学C2课的学生姓名”。
•对于检索具有“全部”特征的操作,一般要用除法操作表示,例如“检索学习全部课程的学生姓名”。
(2)“检索不学C2课的学生姓名”,决不能用下式表示:
nSNAME,AGE(CC#='C2'(S?
SC))
一定要用“差”的形式:
nSNAME,AGE(S)—nSNAME,AGE(CC#='C2'(S?
SC))
(3)“检索学习全部课程的学生学号”,要用ns#,c#(SC)宁nc#(C)表示,而不能写成ns#(SC十nc#(C))形式。
这是因为一个学生学的课程的成绩可能是不
一样的。
(4)对于教材P56的例2.7的8个查询语句的关系代数表达式,考生一定要掌握,这是基础。
2.非过程性语言与过程性语言的区别编程时必须指出“干什么”及“怎么干”的语言,称为过程性语言;编程时只须指出“干什么”,不必指出“怎么干”的语言,称为非过程性语言。
两种语言的主要区别见图2.1。
过程性语言
非过程性语言
编程时,必须指出“怎么干”
编程时,不必指出“怎么干”
由用户进行数据导航
由系统进行数据导航
单记录处理方式
集合处理方式
属于3GL范畴
属于4GL范畴
C语言,层次、网状DML等
关系DML,软件开发工具等
图2.1
2.2教材中习题2的解答
2.1名词解释
•关系模型:
用二维表格表示实体集,外键和主键表示实体间联系的数据模型,称为关系模型。
•关系模式:
是对关系的描述,包括模式名、诸属性名、值域名和模式的主键。
•关系实例:
关系模式具体的值,称为关系实例。
•属性:
即字段或数据项,与二维表中的列对应。
属性个数,称为元数(arity)。
•