数据库原理与应用示范系统第三版习题与标准答案.docx
《数据库原理与应用示范系统第三版习题与标准答案.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用示范系统第三版习题与标准答案.docx(25页珍藏版)》请在冰豆网上搜索。
数据库原理与应用示范系统第三版习题与标准答案
习题一
1.试回答下列问题
(1)什么是数据库?
(2)什么是数据库管理系统?
(3)什么是数据库系统?
答:
(1)数据库是被长期存放在计算机内,有组织的,统一管理的相关数据的集合。
(2)数据库管理系统(DataBaseManagementSystem,简称DBMS),是位于用户与操作系统之间的一层数据管理软件,它属于系统软件,它为用户或应用程序提供访问DB的方
法,包括DB的建立、查询、更新及各种数据控制。
(3)数据库系统(DBS)通常是指带有数据库的计算机应用系统。
DBS是一个实际可运行
的,按照数据库方法存储、维护和向应用系统提供数据支持的系统,它是数据库、硬件、软
件和数据库管理员(DBA的集合体。
2.计算机数据管理经历了哪几个阶段?
答:
数据管理技术的发展经历了三个阶段:
人工管理阶段、文件系统阶段、数据库系统阶段。
3.试述文件系统的缺点。
答:
(1)数据共享性差,冗余度大。
(2)数据不一致性。
(3)数据联系弱。
4.试述数据库系统的特点。
答:
(1)采用复杂的数据模型表示数据结构。
(2)有较高的数据独立性。
(3)数据的共享性高,冗余度低,易扩充。
(4)数据由DBM銃一控制和管理。
5.试述概念模型的作用。
答:
概念模型是独立于计算机系统的数据模型,它完全不涉及信息在计算机系统中的表示,只是用来描述某个特定组织所关系的信息结构。
概念模型用于建立信息世界的数据模型,强调其语义表达能力,概念应该简单、清晰、易于用户理解,它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具。
这一模型中最著名的是“实体联系模型”。
6.解释下列概念:
内模式、模式、外模式、DDL、DML
答:
内模式也称存储模式(StorageSchema)。
它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式。
一个数据库只有一个内模式。
模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
它是数据库系统模式结构的中间层。
外模式也称子模式(Subschema)或用户模式,它是用户与数据库系统的接口,是用户用到的那部分数据的逻辑结构和特征的描述,是数据库用户的数据视图。
DDL是数据定义语言(DataDefinitionLanguage—DDL),用户通过它可以方便地对数
据库中的数据对象进行定义。
DML是数据操纵语言(DataManipulationLanguage—DML,实现对数据库中数据的操作。
7.试述数据库系统三级模式结构,这种结构的优点是什么?
答:
数据库系统的体系结构分成三级:
内部级(internal),概念级(conceptual)和外部级
(external)。
这个三级结构也称数据库系统的“三级模式结构”。
内部级也称“内模式”,概念级也称“模式”,外部级也称“外模式”,故数据库系统是由外模式、模式和内模式三级构成,如下图所示:
8.试述数据库的物理独立性和逻辑独立性。
答:
数据的独立性包括数据的物理独立性和数据的逻辑独立性。
数据的物理独立性是指当数据在计算机存储设备上的物理存储改变时,应用程序可以不
用改动,而由DBMS来处理这种改变。
数据逻辑独立性是指当数据的整体逻辑结构改变时,不影响用户的逻辑结构以及应用程
序。
9.DBS由哪几部分组成?
DBA的职责是什么?
答:
DBS一般由数据库(即实际存储在计算机中的数据)、数据库管理系统、相应的硬件、
软件和各类人员构成。
数据库系统是一个有使用人员及维护人员、加工设备和数据资源的完
整的计算机应用系统。
DBA是数据资源管理机构的一组人员。
总的来说,负责全面地管理和控制数据库系统。
具体职责包括:
(a)决定数据库的信息内容和结构
(b)决定数据库的存储结构和存取策略
(c)定义数据的安全性要求和完整性的约束条件
(d)监督和控制数据库的使用和运行
(e)数据库的改进和重组
10.数据库管理系统的主要功能有哪些?
答:
DBMS勺主要功能包括以下几个方面:
1数据定义功能
2数据操纵功能
3数据库的运行管理
4数据库的建立和维护功能
11.试述DBMS在用户访问数据库过程中所起的作用。
答:
应用程序通过DBMS读取数据库中记录,DBM助程序开辟一个数据库的系统缓冲区,用于数据的传输和格式的转换。
12.试写出用户访问数据库的过程。
答:
(1)用户在应用程序中安排一条读记录的DML语句。
该语句给出涉及的外模式中记录类
型名及键值。
当计算机执行该DML语句时,立即启动DBMS并把读记录的命令传给DBMS
(2)DBMS接到命令后,加以分析,并调出程序A对应的外模式,检查该操作的合法权限,决定是否执行该命令。
(3)在决定执行A的命令后,DBM碉出相应的模式描述,并从外模式映象到模式,决定应读入哪些模式记录。
(4)DBMS调出相应的内模式描述,并将模式映象成为模式的内部记录模式,确定应读入哪些物理记录。
(5)DBMS^操作系统(OS发出从指定地址读取物理记录的命令。
(6)OS执行该命令,按指定地址从数据库把记录读入OS的系统缓冲区,进而读入数据
库的系统缓冲区,并在操作结束后向DBMS乍出回答。
(7)DBMS攵到OS的回答后,将读入缓冲区中的数据转换成模式记录,外部记录。
(8)DBMSS导出的外部记录从系统缓冲区送到应用程序A的工作区中。
(9)DBMS^运行日志数据库中写入读一条记录的信息。
(10)DBMS^读记录成功与否信息返回给程序A。
(11)程序A决定是否使用工作区中的数据。
习题二
1.试述关系模型的3个组成部分。
答:
关系模型是由关系数据结构、关系操作集合和关系完整性约束三部分组成。
这是关系模型的三要素。
2.定义并理解下列术语。
(1)域,笛卡尔积,关系,元组,属性
(2)主键,候选键,外键
答:
(1)域:
一组具有相同数据类型的值的集合。
给定一组域D1,D2,…,Dn,其笛
卡尔积为:
D1xD2x-xDn={(d1,d2,…,dn)|di€Di,i=1,2,…,n},其中每一元素
(d1,d2,…,dn)叫做一个元组(Tuple)。
D1xD2x-xDn的子集叫做域D1,D2,…,Dn上的关系。
关系是笛卡尔积的有限子集,所以关系也是一个二维表,表的每一行表示一个元组,表的每一列对应一个域。
对每列起一个名字,称为属性(Attribute)。
(2)如果一个属性集能唯一标识元组,又不含有多余属性,那么这个属性集称为候
选键。
主键(primarykey):
用户选作元组标识的一个候选键称为主键。
注意:
若一个关系有多个候选键,只能指定其中一个为主键。
如果关系中的属性或属性组不是本关系的主键,而是引用另一个关系的主键,则称这一属性或属性组为外键。
3.试回答下列问题:
(1)可以表示任何关系代数操作的五种基本代数操作是什么?
(2)连接、等值连接、自然连接、外连接、半连接的区别是什么?
(3)元组关系演算表达式和域关系演算表达式的区别是什么?
(4)域关系演算表达式的安全性定义是什么?
答:
(1)关系代数操作的五种基本代数操作是并、差、笛卡尔积、投影、选择。
(2)连接也称为B连接。
它是从两个关系的笛卡尔积中选取属性间满足一定条件的元
组。
B为“=的连接运算称为等值连接。
它是从关系R与S的广义笛卡尔积中选取A,B
属性值相等的那些元组。
自然连接(Naturaljoin)是一种特殊的等值连接,它要求两个
关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。
如果在R
和S做自然连接时,保留被舍弃的元组,其空缺的另一关系的属性的值用空值(mull)填充,
那么这种操作称为“外连接”操作。
关系R和S的半连接操作记为R|_S,定义为R和S的自然连接在关系R的属性集上的投影,
(3)在元组关系演算系统中,我们称{t|P(t)}型表达式为元组演算表达式,其中P
(t)是元组关系演算公式,t是元组变量。
一个元组演算表达式表示一个关系。
域关系演
算类似于元组关系演算,不同的是用域变量代替元组变量。
域关系演算的变量在域中取值,故称为域变量,每个自由变量对应一个列或一个属性。
(4)如果域关系演算表达式满足以下三个条件则是安全的:
(1)每一个关系代数表达式有一个等价的、安全的元组演算表达式。
(2)每一个安全的元组演算表达式有一个等价的安全域演算表达式。
⑻R
答:
RUS:
A
B
C
a
b
c
d
a
c
c
b
d
d
c
d
b
g
a
Rns:
A
B
C
d
c
d
R-S:
A
B
C
a
b
c
d
a
c
c
b
d
RXS:
R.A
R.B
R.C
S.A
S.B
S.C
a
b
c
b
g
a
a
b
c
d
c
d
d
a
c
b
g
a
d
a
c
d
c
d
c
b
d
b
g
a
c
b
d
d
c
d
d
c
d
b
g
a
d
c
d
d
c
d
5.设有关系R和S,如图2-10所示。
计算:
RXS,RS,ca=c(RXS)。
B答:
rXS:
R.A
R.B
S.B
S.C
a
b
b
c
a
b
e
a
a
b
b
d
c
b
b
c
c
b
e
a
c
b
b
d
d
e
b
c
d
e
e
a
d
e
b
d
RIS:
A
B
C
a
b
c
a
b
d
c
b
c
c
b
d
d
e
a
(TA=C(RXS)
R.A
R.B
S.B
S.C
a
b
E
a
c
b
b
c
d
e
b
d
6.如果R是二目关系,那么下列元组表达式的结果是什么?
{tI(u)(R(t)AR(u)A(t[1]工u[1]Vt[2]工u[2]))}
答:
当R的元组数》2时,R中每个元组都存在与之不相同的元组,因此表达式的结果为关系R;当R的元组数为0或1时,表达式的结果为空关系Ro
7.设有两个关系R(A,B,C)和S(D,E,F)o试表下列关系代数表达式转换成等价的元组表达式:
(1)na(R)
(2)tb='19'(R)(3)RXS(4)na,f(tc=d(RXS))
答:
(1)na(R)转换成{tI(u)(R(u)At[1]=u[1])}
(2)tb='19'(R)转换成{tIR(t)At[2]=‘19’)}
(3)RXS转换成{tI(u)(v)(R(u)AS(v)At[1]=u[1]At[2]=u[2]At[3]=u
[3]At[4]=v[1]At[5]=