《数据库原理与应用》孟凡荣闫秋艳课后习题答案.docx
《《数据库原理与应用》孟凡荣闫秋艳课后习题答案.docx》由会员分享,可在线阅读,更多相关《《数据库原理与应用》孟凡荣闫秋艳课后习题答案.docx(55页珍藏版)》请在冰点文库上搜索。
《数据库原理与应用》孟凡荣闫秋艳课后习题答案
•第一章
数据库管理系统(DBMS)属性关键字
关系模型
内模式
物理数据独立性
多对多联系
数据库(DB):
在计算机的存储设备上合理存放、相关联、有结构的数据集合.
数据库系统(DBS):
在计算机系统中引进数据库和数据库管理系统后的组成.或者是实现有组织地、动态地存储大量相关的结构化数据,方便用户使用数据库的计算机软件、硬件资源组成的系统。
数据库管理系统(DBMS):
—个操纵和管理数据库的大型软件,它由一组计算机程序构成。
它是位于用户与操作系统之间的一层数据管理软件-
实体:
客观存在并可相互区别的个体。
实体集:
具有相同实体特性实体的集合。
属性:
表示实体的特性。
关键字:
能够唯一标识文件中的某一个记录的量小字段集。
数据模型:
现实世界数据与信息的模拟和抽象。
概念数据模型:
简称槪念模型,是独立于计算机系统的数据模型,完全不涉及信息在计算机中的表示,是面向数据库用户的现实世界模型,主要用来描述现实世界的概念化结构。
关系模型:
是最重要的一种数据模型,也是目前主要采用的数据模型,用二维表格表示现实世界实体集及实体集间的联系。
模式:
是由数据库设计者综合所有用户数据,按照统一的观点构造的对数据库全局逻辑结构的描述。
外模式:
介于模式与应用之间,是用户与数据库之间的接口,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述。
内模式:
也称存储模式,是对数据库中数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
数据独立性:
应用程序和数据结构之间相互独立,不受影响。
逻辑数据独立性:
表示一旦模式发生变化,无需改变外模式或应用程序的能力。
物理数据独立性:
表示不会因为内模式发生改变而导致概念模式发生改变的能力。
一对一联系:
设有两个实体集A、B,如果对于实体集A中的每一个实体,B中至多有一个实体与之有联系,反之亦然,则称A、B有一对一联系(1:
1联系人
一对多联系:
设有两个实体集A、B,若A中每个实体与B中任意个实体(包括零个)相联系,而B中每个实体至多和A中一个实体有联系,则称A和B是一对多联系(1:
n联系)。
多对多联系:
设有两个实体集A、B,若两个实体集A、B中的每一个实体都和另一个实体集中任意个实体(包括零个)有联系,则称A、B是多对多联系(m:
n联系)。
1.2判断下列说法是否正确
⑴数据库系统的一个主要特点是数据无冗余。
⑵数据库管理系统和数据库构成了数据库系统。
⑶数据结构化是数据库和文件系统的根本区別。
⑷若干个属性集合就能描述一个对象。
⑸数据库系统中数据具有完全独立性。
(6)DBA主要职责是管理数据库中的数据。
⑺数据库避免了一切数据重复。
⑻数据操作语言是一个高级语言。
⑼非过程化语言比过程化语言好。
(10)模式是数据库全局逻辑结构的描述。
(1D三级模式结构是数据库唯一的一种分级模式结构。
(必层次数据模型和网状数摇模型都可用关系数据模型表示。
⑬关系模型不仅可以描述实体,还可以描述实体及实体集之间的联系。
(14)关系数据模型与网状数摇模型相比具有査询效率高的优点。
⑮网状数据模型可以直接表示M:
N的联系。
⑯概念模型独立于^^件设备和DBMS。
(尬视图对重构数摇库提供了一楚程度的物理独立性。
⑱实体是信息世界中的术语,与之相对应的数据库术语为字段。
(⑼数据库系统的核心工作就是完成用户级数据库、概念级数据库和物理级数据库之间的映射。
伽一个网状数据结构模型可以变换为一个等价的层次数据结构模型,这种变换以存储空间为代价。
I-5:
X,X,X,
6-10:
X,X,V,
II-15;X,V,J,X,X
16-20:
7,X,X,7,V1.3简答下列各题
⑴数据管理技术的发展过程"
计算机技术的发展使得数据管理技术也不断向前发展,至今,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
⑵数据库系统的三个发展阶段是什么?
1)层次型和网状型:
代表产品是1969年IBH公司研制的层次模型数据库管理系统IMSo
2)关系型数据型库:
目前大部分数据库采用的是关系型数据库。
1970年IBM公司的研尢员E.F.Codd提出了关系模型。
典型的关系DBMS产品有0racle、Sybase.SQLServer.DB2、Access.VFP等等。
3)第三代数据库将为更加丰富的数据模型和更强大的数据管理功能为特征,以提供传统数摇库系统难以支持的新应用。
它必须支持面向对象,具有开放性,能够在多个平台上使用。
⑶文件系统'J数据库系统有何区别和联系?
文件系统和数据库系统之间的区别:
1)文件系统用文件将数据长期保存在外存上,数据库系统用数摇库统一存储数据:
2)文件系统中的程序和数摇有一宦的联系,数据库系统中的程序和数摇分离,数摇具有较高的独立性:
3)文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据:
4)文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数摇共享,数据结构化,冗余度小。
文件系统和数据库系统之间的联系:
1)均为数据组织的管理技术:
2)均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;
3)数摇库系统是在文件系统的基础上发展而来的。
⑷数据库系统的特点。
1)采用一左的数据模型实现数据结构化
2)数据共享、冗余度小、避免了数摇的不一致
3)具有较高的数据独立性
4)数摇由DBMS统一管理和控制
⑸何谓数据的物理独立性与数据的逻辑独立性?
逻辑独立性表示一旦模式发生变化,无需改变外模式或应用程序的能力。
物理独立性表示不会因为内模式发生改变而导致概念模式发生改变的能力。
⑹数据模型的三要素。
1)数据结构;2)数据操作;3)数据完整性。
⑺举例说明实体集之间具有1:
1、1:
n、m:
n的联系.
例如,有四个实体集:
学生、学校、教师、校长,校长和学校为1:
1联系,学生和学校为1:
n联系,学生和老师为m:
n联系。
⑻关系数据模型的特点是什么?
关系数据模型的主要特征是用二维表格表示现实世界实体集及实体集间的联系。
具有坚实的理论基础、表达能力强、简单和数据独立性高等优点,缺点是存取效率比较低。
⑼何谓空值?
所谓空值就是“不知道”或“无意义”的值。
没有给某个属性赋值,则称其值为空(XVLL)。
(10)层次数据模型、网状数抵模型和关系数据模型的优点和缺点。
1)层次模型具有查询效率较高、结构简单、层次分明,便于在计算机内实现的优点,在层次数据结构中,从根结点到树中任意结点均存在一条唯一的层次路径,为有效地进行数据操纵也提供了条件,并且层次数据模型提供了良好的完整性支持。
但层次模型也有缺点,一是层次数据模型缺乏直接表达现实世界中非层次型结构的复杂联系,二是层次顺序的严格限制,使得对插入或删除操作也带来了较多的限制,并且査询子女结点必须通过双亲结点,所以使得应用程序的编写也比较复杂。
2)网状模型的主要优点是能直接描述现实世界,记录之间的联系也是通过指针来实现的,所以查询效率高。
缺点是结构和编程复杂,难掌握,不易使用。
3)关系模型有坚实的理论基础。
二维表不仅能表示实体集,而且能方便地表示实体集间的联系,所以说它有很强的表达能力,这是层次模型和网状模型所不及的。
关系模型具有简单、易学易用的优点。
数据独立性高。
关系模型缺点是査询效率常常不如非关系数据模型。
QD举例说明E-R图的构成规则。
方框:
表示一实体集,在框内写上实体集的名字
菱形框:
表示联系,菱形框内标明联系名,与其相关的实体集之间用箭头表示,一个箭头代表为1,两个箭头代表为多。
椭圆框:
表示属性,在框内写上属性的名字,并用无向边连向与其相关的实体集或联系。
在E-R图中,有时为了突出^$实体集之间的联系,可以先画出实体集及其属性,然后再
学生I
学生实体及其属性
实体之间联系
⑫什么是外部模式?
概念模式?
内部模式?
它们之间有何联系?
这种分级结构的优点是什么?
外部模式又称子模式,介于模式与应用之间,是用户与数据库之间的接口,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述。
概念模式简称模式,是由数据库设计者综合所有用户数据,按照统一的观点构造的对数据库全局逻辑结构的描述。
内部模式也称存储模式,是对数据库中数据物理结构和存储方式的描述,是数据在数摇库内部的表示方式。
一个数据库结构从逻辑上可以划分为三个层次:
外部模式(ExternalSchema),概念模式(ConceptualSchema)和内部模式(Int©rnalSchema),称为数据库系统的三级模式结构。
数据库系统的三级模式是对数据进行三个级別的抽象。
它把数据的具体组织留给DBIV1S去做,用户只要抽象地处理数据,而不必关心数据在机器中的具体表示方式和存储方式。
数据库的三级结构是依靠映像来联系和互相转换的。
正是这两层映像保证了数据库系统中的数据具有较高的数据独立性。
⑬什么是数据独立性?
在数据库系统体系结构中是如何体现的?
1)数据独立性:
数摇库系统在某一层次模式上的改变不会使它的上一层模式也发生改变的过程。
数据独立性包括数据的逻辑独立性和物理独立性两种。
2)一个数据库结构从逻辑上可以划分为三个层次:
外部模式(ExternalSchema),概念模式(ConeeptualSchema)和内部模式(Interna1Schema),称为数据库系统的三级模式结构。
数据库的三级结构是依靠外模式/模式映像和模式/内模式映像来联系和互相转换的。
正是这两层映像保证了数据库系统中的数据具有较髙的数据独立性,貝中外模式/模
式映像保证逻辑独立性,模式/内模式映像保证物理独立性。
胸数据库系统的软件包括哪些主要成份?
基本的系统软件是操作系统,其它任何软件都必须在它的支持下工作。
除操作系统之外,还必须配有数据库管理系统,没有数据库管理系统也就不能称其为是数据库系统。
同时,为了开发数据库应用系统,还需要有各种高级语言及其编译系统。
⑮什么是数据字典?
它在数据库中的作用是什么?
数据字典(DataDictionary)是描述%级模式的信息,主要包括所有数据的结构名、意义、描述电义、存储格式、完整性约束、使用权限等信息。
由于数据字典包含了数据库系统中的大量描述信息(而不是用户数据),因此也称它为“描述信息库”。
数据字典是DBMS存取和管理数据的基本依据,主要由系统管理和使用
(16)DBA的主要职责是什么?
1参与数据库系统的设计与建立。
2对系统的运行实行监控。
3左义数据的安全性要求和完整性约束条件。
4负责数据库性能的改进和数据库的重组及重构工作。
(尬用户访问数据库的过程。
1)接受应用程序的数据请求
2)DBMS对用户的操作请求进行分析
3)数据库管理系统要向操作系统发出操作请求
4)操作系统接到命令后,对数据库中的数据进行处理,将结果送到系统缓冲区,并发出读完标志。
5)DBMS接到回答信号后,将缓冲区的数据经过模式映射,变成用户的逻辑记录送到用户工作区,同时给用户回答成功与否的信息。
(的关系数据库完整性约束有哪些?
举例说明。
1)实体完整性约束:
实体完整性约束是指任一关系中标识属性(关键字)的值,不能为NULL,否则,无法识别关系中的元组。
2)参照完整性约束:
参照完整性是不同关系间的一种约朿,当存在关系间的引用时,要求不能引用不存在的元组。
若属性组F是关系R(U)的外关键字,并是关系S(U)的关键字(即F不是R(U)的关键字,而是S(U)的关键字,称F是R2)的外关键字),则对于R(l;)中的每个元组在属性组F上的值必须为:
空值(NULL)或者等于S(U)中某个元组的关键字值。
3)用户楚义完整性约束。
如值的类型、宽度等。
(⑼有控制的冗余与无控制的冗余有什么区别?
有控制的冗余是指数据库设计者在设il•中为了提高操作效率有意保留的冗余数据,无控制冗余是在数据库设计中由于属性间的依赖而存在的关联数据,两者的区别是无控制冗余不是数据库设计者所要保留的冗余数据,因为它会带来很多问题,使得存储效率比较低,而有控制冗余是数据库设计者有意保留的数据,主要是为了改善对数据库的査询效率。
S简述数据库、数据库管理系统和数据库系统之间的关系
数据库是指在计算机的存储设备上合理存放、相关联、有结构的数抵集合。
这个数据的集合由数据库管理系统进行建立和维护,用户访问数据库中的徉种请求都是通过数据库管理系统完成的。
数据库系统是在计算机系统中引进数据库和数据库管理系统后的组成,没有数据库和数据库管理系统不能够构成数据库系统。
1.4选择题
⑴在()中一个结点可以有多个双亲,结点之间可以有多种联系。
(3)用户或应用程序看到的那部分局部逻辑结构和特征的描述是()模式。
A模式B物理模式C子模式D内模式
⑷要保证数据库的逻辑数据独立性,需要修改的是()。
A模式与外模式之间的映射B模式与内模式之间的映射
C模式D三级模式
⑸下列四项中,不属于数摇库系统特点的是()。
A数据共享B数摇完整性C数摇冗余度高D数据独立性高
⑹数据库(DB),数摇库系统(DBS)和数据库管理系统(DBMS)之间的关系是()。
ADBS包括DB和DBMSBDBMS包括DB和DBS
CDB包括DBS和DBMSDDBS就是DB,也就是DBMS
⑺数据库系统与文件系统的主要区別是()。
A数据库系统复杂,而文件系统简单
B文件系统不能解决数据冗余和数据独立性问题,而数据库系统可以解决
C文件系统只能管理程序文件,而数据库系统能够管理各■种类型的文件
D文件系统管理的数据量较少,而数据库系统可以皆理庞大的数据呈。
⑻数据库的概念模型独立于()。
A具体的机器和DBMSBE-R图C信息世界D现实世界
⑼在数据库中存储的是(
A数据B数据模型C数摇以及数据之间的联系D信息
⑩在数摇库中,数抵的物理独立性是指()。
A数据库与数据库管理系统的相互独立
B用户程序与DBMS的相互独立
C用户的应用程序与存储在磁盘上的数据库中的数据是相互独立的
D应用程序与数据库中数据的逻辑结构相互独立
⑴)数据库的特点之一是数据的共享,严移地讲,这里的数据共享是指()。
A同一应用中的多个程序共享一个数据集合
B多个用户、同一种语言共享数据
C多个用户共享一个数据文件
D多种应用、多种语言、多个用户相互覆盖地使用数据集合
⑫在数据库技术中,为提高数摇库的逻辑独立性和物理独立性,数据库的结构被划分成用户级、()和存储级三个层次
A管理员级B外部级C概念级D内部级
⑬在数据库中,产生数据不一致的根本原因是()。
A数据存储量太大B没有严格保护数据
C未对数据进行完整性控制D数据冗余
(⑷数据库具有①、最小的②和较高的程序与数据③。
1A程序结构化B数据结构化C程序标准化D数摇模块化
2A冗余度B存储量C完整性D有效性
3A可靠性B完整性C独立性D一致性
(15)在数摇库的三级模式结构中,描述数据库中全体数据的逻辑结构和特征的是()。
I-
5:
A,C,C,
6-10:
A,B.A,
II-15:
D.C,
1.5对于工程硕I:
的管理需要掌握的信息有:
学生现在的工作单位、职务、简历情况,其中简历情况包括开始时间、终止时间、单位、担任职务、证明人;学生目前在校情况,包括学生的学号、所在学院、所学专业、入学时间、导师;学生在校所学的课程号、课程名、学时、授课教师及成绩;学院包括学院代号、学院名称、院长;导师包括导师职工编号、姓需、出生日期、职称、研究方向。
要求:
⑴确定实体及实体型属性:
(2)找出实体间的联系:
⑶画出E-R图。
(1)学生:
学号,姓名,专业,学院,入学时间,工作单位,导师号,建立号,职务
简历:
简历号,开始时间,结束时间,证明人,单位,担任职务
课程:
课程号,学时,课程名,授课教师
学院:
学院代号,学院名称,院长
导师:
导师号,姓名,出生日期,研究方向
(2)学生-简历In
学生-学院:
n:
1
学生-导师:
n:
i
学生-课程:
n:
m
导师-学院:
n:
l
⑶
(姓名J(出生B期
导师实体及其属性
图6实体联系图
第二章
2.1试述关系模型的3个组成部分
答:
关系模型由关系数据结构、关系操作和关系完整性约束三部分组成。
2.2一个关系模式能否没有关键字?
为什么?
答:
不可以没有关键字,因为关键字是元组的唯一标志,如果没有关键字则无法唯一标识一个元组。
2.3试述关系模型的完整性规则。
在参照完整性中,为什么外部关键字属性的值也可以为空?
什么情况下才可以为空?
答:
(1)实体完整性规则:
若属性A是基本关系R的主属性,则属性A不能取空值。
(2)参照完整性规则:
若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一;^是不同的关系),则对于R中每个元组在F上的值必须为:
或者取空值(F的每个属性值均为空值);或考等于S中某个元组的主码值。
即属性F本身不是主属性,则可以取空值,否则不能取空值。
当外部关键字F对应的主键Ks值为空值时,说明F暂时没有赋值,此时F值必须取空值。
2.4一个n行、m列的二维我(其中没有两行或两列全同),将行或列交换后,能导出多少个不同的表?
答:
1个
2.5
答:
中的大者:
最大个数为:
in+n
最小个数为:
0:
最大个数为:
取m,n中的小考最小个数为:
0:
最大个数为:
m*n
垠小个数为:
0;最大个数为:
n
(1)最小个数为:
取叫n
(2)
⑶
(4)
2.6
答:
{(3,6,7),(2,5,7),(7,2,3),(4,4,3),(3,4,5)}
{(3,6,7),(2.5,7),(4,4,3)}
{(7,2,3)}
{(3,6,7,3,4,5),(3,6,7,7,2,3).(2,5,7,3,4,5),⑵5,7,7,2,3),⑺
2,3).(7,2,3,3,4,5),(4,4,3,3,4,5),(4,4,3,7,2,3)}
{(5,4),(3,2)}
{(7,2,3),(4,4,3)}
RkjS=
R-S=
RnS=
RXS=
2,3,7,口3,2Cs)=
aB<'5'(R)=
2.7
答:
该表达式的意思是:
从关系R中选择元组,该元组满足:
第1分量值或第2分量值至少有一个不等于其他某元组,即选择与其他元组不完全相同的元组。
由于关系模型的性质要求,关系中不能够有重复的元组,因此上述条件一左满足,所以,这个表达式结果就是R。
2.8
(1)从R和S的笛卡尔积中选择满足下列条件的元组:
第2分S与第4分量相等,或第3分量和第4分量相等,并取第1分量和第5分量构成新的关系。
(2)元组表达式
“i(mi/)(mv)(/?
e)Ase)AM2]=y[i]/uf[3]=v[i]/v[i]="[i]A/[2]=v[2]}
⑶域表达式{a(3v)(玉)gg)AS3)八(y=""="))}
2.9
(1)汉语表达式:
选择R关系中元组第2分量值不等于S关系中某元组第1分量值的元组。
(2)关系代数表达式円2(6謨3(RxS))
⑶域表达式:
{Ql(m")®)(R(Q)人S(M)A("Hy))}
2.10
(1)汉语表达式:
选择R中元组第1分量值与第2分量值互换后仍存在于R中的元组。
(2)关系代数表达式:
口・2(%八2・3(肮/?
))
(3)域表达式・"I(3w)(/?
(r)A/?
(w)A/[l]=k[2]a/[2]="[1])}
2.11
⑵"心⑴a/[2]=47-)}
3)
“丨(加)(%)(/?
(“)ASe)A41]=Ml]M[2]=M[2]M[3]="[3]A/[4]=v[l]/V[5]=W2]A46]=W3]}
"I(加)(引)(/?
(")ASW)人"[3]=讥1]人/[1]="[1]m[2]=闪3]}
2.12
设有关系:
S(SNO,SNAME,AGE,SEX,CDEPT):
SC(SNO,exo,GRADE):
C(CNO,CNAME,CDEPT,TXAME):
用关系代数表示
(1)刘老师所教授课程的课程号、课程名
nC«O・cxamE(°TXAxr=■(C))
(2)检索年龄大于23的男学生的学号和姓名
risCO.SXAME(0ACS2ZrSees•刘*(S))
(3)检索学号为'090111'学生所学课程的课程爼与任课教师洛ncNAJC^TNAME(C80sNC=-OSOlll'SC)
(4)检索至少选修刘老师所教授课程中一门课的女学生姓名
nSXAME(0TXA3C*"tf(C)8SC80託X「女’⑸)
(5)检索'王一宁'同学不学课程的课程号
ricMc)-goSNA3C-,王i•亨・(S)8SC)
(6)检索至少选了两门课的学生学号
nSSO(0[a]=[i]n[:
:
IB:
(SCXSC))
(7)检索全部学生都选修的课程的课程号和课程名
ricW.CXAM-(C8(risfjQ.CioCSC)—risso(S)))
(8)检索选修课程包插刘老师所教授课程的学生姓爼nSNAKE(SC80・用・(c))2.13
(1)刘老师所教授课程的课程号、课程洛
{t!
Qu)(C(u)At[l]=u[1]at[2]=u⑵八C[3]=坟J')}
(2)检索年龄大于23的男学生的学号和姓冬
{t|Qu)(S(u)At[1]=u[1]at[2]=u[2]auE3]>23au[4]='男')}
(3)检索学号为'09011r学生所学课程的课程名与任课教师名
{tIGu)(3v)(C(V)aSC(u)av[1]=u[2]At[l]=v[2]At[2]=v[3]AvE1]=*090
111*)}
(4)检索至少选修刘老师所教授课程中一门课的女学生姓名
{t|(3u)<3v)(3w)(S(u)aSC(v)aC(w)au[4]=妆,/w[l]=u[1]av[2]=w[l]Aw[3]=c刘'At[ll=u[2])}
(5)检索'王一宁'同学不学课程的课程号
{/1(3»)(Vv)C(k)a5C(v)a041]=v(2]=>0w)(s{w}avi(l]=v[I]au(2]*王一宁'))八/[1]="[1])}
(6)检索至少选了两门课的学生学号
(7)检索全部学生都选修的课程的课程号和课程名
{rl(V/0(3v)(3KO(S(/7)ASC(v)AC(KOAz41]=v[l