资源描述
课后作业习题
《数据库系统概论》课程部分习题及参考答案
第一章绪论(教材 41页)
1.试述数据、数据库、数据库系统、数据库管理系统得概念。
数据:
描述事物得符号记录称为数据。数据得种类有文字、图形、图象、声音、正文等等。数据与其语义就是不可分得。
数据库:
数据库就是长期储存在计算机内、有组织得、可共享得数据集合。数据库中得数据按一定得数据模型组织、描述与储存,具有较小得冗余度、较高得数据独立性与易扩展性,并可为各种用户共享。
数据库系统:
数据库系统( DBS)就是指在计算机系统中引入数据库后得系统构成.数据库系统由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
数据库管理系统:
数据库管理系统 (DBMS)就是位于用户与操作系统之间得一层数据管理软件.用于科学地组织与存储数据、高效地获取与维护数据.DBMS主要功能包括数据定义功能、数据操纵功能、数据库得运行管理功能、数据库得建立与维护功能.
2.使用数据库系统有什么好处?
使用数据库系统得好处就是由数据库管理系统得特点或优点决定得.
使用数据库系统得好处很多,例如可以大大提高应用开发得效率,方便用户得使用,减轻数据库系统管理人员维护得负担等。
为什么有这些好处,可以结合第 5题来回答。
使用数据库系统可以大大提高应用开发得效率。因为在数据库系统中应用程序不必考虑数据得定义、存储与数据存取得具体路径,这些工作都由 DBMS来完成。
此外,当应用逻辑改变,数据得逻辑结构需要改变时,由于数据库系统提供了数据与程序之间得独立性。数据逻辑结构得改变就是 DBA得责任,开发人员不必修改应用程序,或者只需要修改很少得应用程序。从而既简化了应用程序得编制,又大大减少了应用程序得维护与修改。
使用数据库系统可以减轻数据库系统管理人员维护系统得负担.因为 DBMS在数据库建立、运用与维护时对数据库进行统一得管理与控制,包括数据得完整性、安全性,多用户并发控制,故障恢复等等都由DBMS执行。
总之,使用数据库系统得优点就是很多得,既便于数据得集中管理,控制数据冗余,可以提高数据得利用率与一致性,又有利于应用程序得开发与维护。
3。试述文件系统与数据库系统得区别与联系。
文件系统与数据库系统得区别:
文件系统面向某一应用程序,共享性差、冗余度大,独立性差,纪录内有结构、整体无结构,应用程序自己控制。
数据库系统面向现实世界,共享性高、冗余度小,具有高度得物理独立性与一定得逻辑独立性,整体结构化,用数据模型描述,由数据库管理系统提供数据安全性、完整性、并发控制与恢复能力。
文件系统与数据库系统得联系就是:
文件系统与数据库系统都就是计算机系统中管理数据得软件。
5.试述数据库系统得特点。
数据库系统得主要特点有:
一、数据结构化
数据库系统实现整体数据得结构化,这就是数据库得主要特征之一,也就是数据库系统与文件系统得本质区别.
二、数据得共享性高,冗余度低,易扩充
数据库得数据不再面向某个应用而就是面向整个系统,因此可以被多个用户、多个应用、用多种不同得语言共享使用。由于数据面向整个系统,就是有结构得数据,不仅可以被多个应用共享使用,而且容易增加新得应用,这就使得数据库系统弹性大,易于扩充。
三、数据独立性高
数据独立性包括数据得物理独立性与数据得逻辑独立性。
数据库管理系统得模式结构与二级映象功能保证了数据库中得数据具有很高得物理独立性与逻辑独立性.
四、数据由 DBMS统一管理与控制
数据库得共享就是并发得共享,即多个用户可以同时存取数据库中得数据甚至可以同时存取数据库中同一个数据。为此, DBMS必须提供统一得数据控制功能,包括数据得安全性保护,数据得完整性检查,并发控制与数据库恢复。
6.数据库管理系统得主要功能有哪些?
①数据库定义功能;
②数据存取功能;
③数据库运行管理;
④数据库得建立与维护功能。
7.试述数据模型得概念、数据模型得作用与数据模型得三个要素.
数据模型就是数据库中用来对现实世界进行抽象得工具,就是数据库中用于提供信息表示与操作手段得形式构架。
一般地讲,数据模型就是严格定义得概念得集合。这些概念精确地描述系统得静态特性、动态特性与完整性约束条件.因此数据模型通常由数据结构、数据操作与完整性约束三部分组成。
①数据结构:就是所研究得对象类型得集合,就是对系统得静态特性得描述。
②数据操作:就是指对数据库中各种对象(型)得实例(值)允许进行得操作得集合,包括操作及有关得操作规则,就是对系统动态特性得描述。
③数据得约束条件:就是完整性规则得集合,完整性规则就是给定得数据模型中数据及其联系所具有得制约与依存规则,用以限定符合数据模型得数据库状态以及状态得变化,以保证数据得正确、有效、相容。
8。试述概念模型得作用。
概念模型实际上就是现实世界到机器世界得一个中间层次。概念模型用于信息世界得建模,就是现实世界到信息世界得第一层抽象,就是数据库设计人员进行数据库设计得有力工具,也就是数据库设计人员与用户之间进行交流得语言。
9。定义并解释概念模型中以下术语:
实体,实体型,实体集,属性,码,实体联系图( E—R图)
实体:客观存在并可以相互区分得事物叫实体。
实体型:具有相同属性得实体具有相同得特征与性质,用实体名及其属性名集合来抽象与刻画同类实体称为实体型.
实体集:同型实体得集合称为实体集。
属性:实体所具有得某一特性,一个实体可由若干个属性来刻画。
码:唯一标识实体得属性集称为码。
实体联系图: E-R图提供了表示实体型、属性与联系得方法:
· 实体型:用矩形表示,矩形框内写明实体名。
· 属性:用椭圆形表示,并用无向边将其与相应得实体连接起来。
·联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系得类型( 1 : 1,1 : n或m : n).
第二章 关系数据库 (教材81页)
1、试述关系模型得三个组成部分。
答:关系模型由关系数据结构、关系操作集合与关系完整性约束三部分组成.
2、试述关系数据语言得特点与分类。
答:关系数据语言可以分为三类:
关系代数语言 例如 ISBL
关系演算语言 (元组关系演算语言 例如 APLHA,QUEL 与 域关系演算语言 例如QBE)
具有关系代数与关系演算双重特点得语言 例如 SQL
这些关系数据语言得共同特点就是,具有完备得表达能力,就是非过程化得集合操作语言,功能强,能够嵌入高级语言中使用.
3、 定义并理解下列术语,说明它们之间得联系与区别:
( 1)域,关系,元组,属性
答:
域:域就是一组具有相同数据类型得值得集合。
关系:在域 D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn得子集称为关系,表示为
R(D1,D2,…,Dn)
元组:关系中得每个元素就是关系中得元组。
属性:关系也就是一个二维表,表得每行对应一个元组,表得每列对应一个域.由于域可以相同,为了加以区分,必须对每列起一个名字,称为属性( Attribute)。
( 2)主码,候选码,外部码
答:
候选码:若关系中得某一属性组得值能唯一地标识一个元组,则称该属性组为候选码( Candidate key)。
主码:若一个关系有多个候选码,则选定其中一个为主码( Primary key)。
外部码:设 F就是基本关系R得一个或一组属性,但不就是关系R得码,如果F与基本关系S得主码Ks相对应,则称F就是基本关系R得外部码(Foreign key),简称外码。
基本关系 R称为参照关系(Referencing relation),基本关系S称为被参照关系(Referenced relation)或目标关系(Target relation)。关系R与S可以就是相同得关系。
(3)关系模式,关系,关系数据库
关系模式:关系得描述称为关系模式( Relation Schema)。它可以形式化地表示为:
R(U,D,dom,F)
其中 R为关系名,U为组成该关系得属性名集合,D为属性组U中属性所来自得域,dom为属性向域得映象集合,F为属性间数据得依赖关系集合。
关系:在域 D1,D2,…,Dn上笛卡尔积D1×D2×…×Dn得子集称为关系,表示为
R(D1,D2,…,Dn)
关系就是关系模式在某一时刻得状态或内容。关系模式就是静态得、稳定得,而关系就是动态得、随时间不断变化得,因为关系操作在不断地更新着数据库中得数据。
关系数据库:关系数据库也有型与值之分.关系数据库得型也称为关系数据库模式,就是对关系数据库得描述,它包括若干域得定义以及在这些域上定义得若干关系模式。关系数据库得值就是这些关系模式在某一时刻对应得关系得集合,通常就称为关系数据库。
4、试述关系模型得完整性规则。在参照完整性中,为什么外部码属性得值也可以为空?什么情况下才可以为空?
答:
关系模型得完整性规则就是对关系得某种约束条件。关系模型中可以有三类完整性约束:实体完整性、参照完整性与用户定义得完整性。参见教材
在参照完整性中,外部码属性得值可以为空,它表示该属性得值尚未确定。但前提条件就是该外部码属性不就是其所在关系得主属性.
例如,在下面得 “学生”表中,“专业号”就是一个外部码,不就是学生表得主属性,可以为空.其语义就是,该学生得专业尚未确定.
学生(学号,姓名,性别,专业号,年龄)
专业(专业号,专业名)
而在下面得 “选修”表中得“课程号”虽然也就是一个外部码属性,但它又就是“选修"表得主属性,所以不能为空。因为关系模型必须满足实体完整性。
课程(课程号,课程名,学分)
选修(学号,课程号,成绩)
5.等值连接与自然连接得区别就是什么?
答:自然连接( Natural join)就是一种特殊得等值连接,它要求两个关系中进行比较得分量必须就是相同得属性组,并且要在结果中把重复得属性去掉。
第三章 关系数据库标准语言 SQL (教材148页)
1、 试述SQL语言得特点。
答:
( 1)综合统一. SQL语言集数据定义语言DDL、数据操纵语言DML、数据控制语言DCL得功能于一体.
( 2)高度非过程化。用SQL语言进行数据操作,只要提出“做什么",而无须指明“怎么做”,因此无需了解存取路径,存取路径得选择以及SQL语句得操作过程由系统自动完成。
( 3)面向集合得操作方式.SQL语言采用集合操作方式,不仅操作对象、查找结果可以就是元组得集合,而且一次插入、删除、更新操作得对象也可以就是元组得集合.
( 4)以同一种语法结构提供两种使用方式。SQL语言既就是自含式语言,又就是嵌入式语言.作为自含式语言,它能够独立地用于联机交互得使用方式,也能够嵌入到高级语言程序中,供程序员设计程序时使用。
( 5)语言简捷,易学易用.
2、 试述SQL得定义功能。
答:
SQL得数据定义功能包括定义表、定义视图与定义索引。
SQL语言使用CREATE TABLE语句定义建立基本表,;ALTER TABLE语句修改基本表定义,DROP TABLE语句删除基本表;建立索引使用CREATE INDEX语句建立索引, DROP INDEX语句删除索引表;SQL语言使用CREATE VIEW命令建立视图,DROP VIEW语句删除视图.
3、 用SQL语句建立第3章习题3中得四个表。
答:
对于 S表:S( SNO,SNAME,STATUS,CITY);
建 S表
CREATE TABLE S
(SNO CHAR(3),
SNAME CHAR(10),
STATUS CHAR(2),
CITY CHAR(10));
P(PNO,PNAME,COLOR,WEIGHT);
建 P表、 建J表、建SPJ表略。
4、 针对上题中建立得四个表试用SQL语言完成第3章习题3中得查询.
答:
( 1) 求供应工程J1零件得供应商号码SNO;
SELECT SNO
FROM SPJ
WHERE JNO=‘J1';
( 2) 求供应工程J1零件P1得供应商号码SNO;
SELECT SNO
FROM SPJ
WHERE JNO=‘J1'
AND PNO=‘P1';
( 3) 求供应工程J1零件为红色得供应商号码SNO;
SELECT SNO
FROM SPJ
WHERE JNO=‘J1'
AND PNO IN
(SELECT PNO
FROM P
WHERE COLOR=‘红');
( 4) 求没有使用天津供应商生产得红色零件得工程号JNO;
略, 注意:从 J 表入手,以包含那些尚未使用任何零件得工程号.
5、 针对习题3中得四个表试用SQL语言完成以下各项操作:
( 1)找出所有供应商得姓名与所在城市。
( 2)找出所有零件得名称、颜色、重量。
( 3)找出使用供应商S1所供应零件得工程号码。
( 4)找出工程项目J2使用得各种零件得名称及其数量.
( 5)找出上海厂商供应得所有零件号码。
( 6)找出使用上海产得零件得工程名称。
( 7)找出没有使用天津产得零件得工程号码。
( 8)把全部红色零件得颜色改成蓝色。
( 9)由S5供给J4得零件P6改为由S3供应,请作必要得修改。
( 10)从供应商关系中删除S2得记录,并从供应情况关系中删除相应得记录.
( 11)请将 (S2,J6,P4,200) 插入供应情况关系。
答:
(1) 找出所有供应商得姓名与所在城市。
SELECT SNAME, CITY
FROM S;
(2) 找出所有零件得名称、颜色、重量。
SELECT PNAME, COLOR, WEIGHT
FROM P;
(3) 找出使用供应商S1所供应零件得工程号码。
SELECT JNO
FROM SPJ
WHERE SNO=‘S1';
(4) 找出工程项目J2使用得各种零件得名称及其数量。
SELECT P、PNAME, SPJ、QTY
FROM P, SPJ
WHERE P、PNO=SPJ、PNO
AND SPJ、JNO=’J2';
(5) 找出上海厂商供应得所有零件号码。
SELECT DISTINCT PNO
FROM SPJ
WHERE SNO IN
( SELECT SNO
FROM S
WHERE CITY='上海');
(6) 找出使用上海产得零件得工程名称。
SELECT JNAME
FROM J, SPJ, S
WHERE J、 JNO=SPJ、 JNO
AND SPJ、 SNO=S、SNO
AND S、CITY=’上海';
(7) 找出没有使用天津产得零件得工程号码。
略
(8) 把全部红色零件得颜色改成蓝色。
UPDATE P
SET COLOR='蓝’
WHERE COLOR='红' ;
(9) 由S5供给J4得零件P6改为由S3供应,请作必要得修改。
UPDATE SPJ
SET SNO='S3'
WHERE SNO='S5' AND JNO='J4' AND PNO=’P6';
(10) 从供应商关系中删除S2得记录,并从供应情况关系中删除相应得记录。
解析:注意删除顺序,应该先从 SPJ表中删除供应商S2所供应零件得记录,然后从从S表中删除S2。
(11) 请将 (S2,J6,P4,200) 插入供应情况关系。
INSERT INTO SPJ(SNO, JNO, PNO, QTY)
VALUES (S2,J6,P4,200);
6、 什么就是基本表?什么就是视图?两者得区别与联系就是什么?
答:基本表就是本身独立存在得表,在 SQL中一个关系就对应一个表。
视图就是从一个或几个基本表导出得表。视图本身不独立存储在数据库中,就是一个虚表。即数据库中只存放视图得定义而不存放视图对应得数据,这些数据仍存放在导出视图得基本表中。视图在概念上与基本表等同,用户可以如同基本表那样使用视图,可以在视图上再定义视图。
7、 试述视图得优点。
答: (1)视图能够简化用户得操作。
(2)视图使用户能以多种角度瞧待同一数据。
(3)视图对重构数据库提供了一定程度得逻辑独立性。
(4)视图能够对机密数据提供安全保护.
8、 所有得视图就是否都可以更新?为什么?
答:不就是.视图就是不实际存储数据得虚表,因此对视图得更新,最终要转换为对基本表得更新.因为有些视图得更新不能唯一地有意义地转换成对相应基本表得更新,所以,并不就是所有得视图都就是可更新得。
9、 哪类视图就是可以更新得,哪类视图就是不可更新得? 各举一例说明.
答:基本表得行列子集视图一般就是可更新得.如教材 3、5、3中得例1。
若视图得属性来自集函数、表达式,则该视图肯定就是不可以更新得。
如教材 3、5、3中得S_G视图。
11、 请为三建工程项目建立一个供应情况得视图,包括供应商代码(SNO)、零件
代码( PNO)、供应数量(QTY)。针对该视图完成下列查询:
( 1)找出三建工程项目使用得各种零件代码及其数量。
( 2)找出供应商S1得供应情况。
答:建视图:
CREATE VIEW V_SPJ AS
SELECT SNO, PNO, QTY
FROM SPJ
WHERE JNO=
( SELECT JNO
FROM J
WHERE JNAME='三建');
对该视图查询:
(1) 找出三建工程项目使用得各种零件代码及其数量。
SELECT PNO, QTY
FROM V_SPJ;
(2) 找出供应商S1得供应情况。
SELECT PNO, QTY /* S1供应三建工程得零件号与对应得数量*/
FROM V_SPJ
WHERE SNO=’S1';
第五章 关系数据理论 (教材 196页)
1.理解并给出下列术语得定义:
函数依赖、部分函数依赖、完全函数依赖、候选码、主码、 外码、全码。
答:
函数依赖:设 R (U)就是一个关系模式,U就是R得属性集合,X与Y就是U得子集。对于R (U)得任意一个可能得关系r,如果r中不存在两个元组,它们在X上得属性值相同, 而在Y上得属性值不同, 则称"X函数确定Y”或"Y函数依赖于X”,记作X→Y。
完全函数依赖、部分函数依赖:在 R(U)中,如果X→Y,并且对于X得任何一个真子集X,都有X′→Y,则称Y对X完全函数依赖;若X→Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖;
候选码、主码: 设 K为R(U,F)中得属性或属性组合,若K → U则K为R得候选码。若候选码多于一个,则选定其中得一个为主码。
外码:关系模式 R中属性或属性组X并非R得码,但X就是另一个关系模式得码,则称X就是R得外部码也称外码.
全码:整个属性组就是码,称为全码( All-key)。
2.建立一个关于系、学生、班级、学会等诸信息得关系数据库.
描述学生得属性有:学号、姓名、出生年月、系名、班号、宿舍区。
描述班级得属性有:班号、专业名、系名、人数、入校年份。
描述系得属性有:系名、系号、系办公室地点、人数。
描述学会得属性有:学会名、成立年份、地点、人数。
有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系得学生住在同一宿舍区.每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份.
请给出关系模式,写出每个关系模式得极小函数依赖集,指出就是否存在传递函数依赖,对于函数依赖左部就是多属性得情况讨论函数依赖就是完全函数依赖,还就是部分函数依赖.
指出各关系得候选码、外部码,有没有全码存在?
答:
关系模式: 学生 S(S#,SN,SB,DN,C#,SA)
班级 C(C#,CS,DN,CNUM,CDATE)
系 D(D#,DN,DA,DNUM)
学会 P(PN,DATE1,PA,PNUM)
学生 -—学会SP(S#,PN,DATE2)
其中, S#—学号,SN-姓名,SB—出生年月,SA—宿舍区
C#—班号,CS—专业名,CNUM—班级人数,CDATE—入校年份
D#—系号,DN—系名,DA-系办公室地点,DNUM-系人数
PN-学会名,DATE1—成立年月,PA-地点,PNUM—学会人数,DATE2—入会年份
每个关系模式得极小函数依赖集:
S:S#→SN,S#→SB,S#→C#,C#→DN,DN→SA
C:C#→CS,C#→CNUM,C#→CDATE,CS→DN,(CS,CDATE)→C#
D:D#→DN,DN→D#,D#→DA,D#→DNUM
P:PN→DATE1,PN→PA,PN→PNUM
SP:(S#,PN)→DATE2
S中存在传递函数依赖: S#→DN, S#→SA, C#→SA
C中存在传递函数依赖:C#→DN
( S#,PN)→DATE2 与(CS,CDATE)→C# 均为SP中得函数依赖,就是完全函数依赖
关系 候选码 外部码 全码
S S# C#,DN 无
C C#,(CS,CDATE) DN 无
D D#与DN 无 无
P PN 无 无
SP (S#,PN) S#,PN 无
4、 试举出三个多值依赖得实例.
答:
( 1)关系模式MSC(M,S,C)中,M表示专业,S表示学生,C表示该专业得必修课。假设每个专业有多个学生,有一组必修课。设同专业内所有学生得选修得必修课相同,实例关系如下。按照语义对于M得每一个值M i,S有一个完整得集合与之对应而不问C取何值,所以M→→S.由于C与S得完全对称性,必然有M→→C成立.
M S C
M 1 S1 C1
M 1 S1 C2
M 1 S2 C1
M 1 S2 C2
…… …… ……
( 2)关系模式ISA(I,S,A)中,I表示学生兴趣小组,S表示学生,A表示某兴趣小组
得活动项目。假设每个兴趣小组有多个学生,有若干活动项目.每个学生必须参加所
在兴趣小组得所有活动项目,每个活动项目要求该兴趣小组得所有学生参加。
按照语义有 I→→S,I→→A成立。
( 3)关系模式RDP(R,D,P)中,R表示医院得病房,D表示责任医务人员,P表示病人。假设每个病房住有多个病人,有多个责任医务人员负责医治与护理该病房得所有病人。按照语义有R→→D,R→→P成立。
第六章 数据库设计 (教材241页)
1、 试述数据库设计过程。
1) 需求分析
2) 概念结构设计
3) 逻辑结构设计
4) 数据库物理设计
5) 数据库实施
6) 数据库运行与维护
这就是一个完整得实际数据库及其应用系统得设计过程。不仅包括设计数据库本身,还包括数据库得实施、数据库运行与维护。
设计一个完善得数据库应用系统往往就是上述六个阶段得不断反复。
2、 试述数据库设计过程得各个阶段上得设计描述.
答:各阶段得设计要点如下:
1) 需求分析:准确了解与分析用户需求(包括数据与处理)。
2) 概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS得概念模型。
3) 逻辑结构设计:将概念结构转换为某个DBMS所支持得数据模型,并对其进行优化。
4) 数据库物理设计:为逻辑数据模型选取一个最适合应用环境得物理结构(包括存储结构与存取方法)。
5) 数据库实施:设计人员运用DBMS提供得数据语言、工具及宿主语言,根据逻辑设计与物理设计得结果建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
6) 数据库运行与维护:在数据库系统运行过程中对其进行评价、调整与修改。
3、 试述数据库设计过程中结构设计部分形成得数据库模式。
答:数据库结构设计得不同阶段形成数据库得各级模式,即:
在概念设计阶段形成独立于机器特点,独立于各个 DBMS产品得概念模式,在本篇中就就是E—R图;
在逻辑设计阶段将 E-R图转换成具体得数据库产品支持得数据模型,如关系模型,形成数据库逻辑模式;然后在基本表得基础上再建立必要得视图(View),形成数据得外模式;
在物理设计阶段,根据 DBMS特点与处理得需要,进行物理存储安排,建立索引,形成数据库内模式。
概念模式就是面向用户与设计人员得,属于概念模型得层次;逻辑模式、外模式、内模式就是 DBMS支持得模式,属于数据模型得层次.可以在DBMS中加以描述与存储。
4、 试述数据库设计得特点。
答:数据库设计既就是一项涉及多学科得综合性技术又就是一项庞大得工程项目。其主要特点有:
1) 数据库建设就是硬件、软件与干件(技术与管理得界面)得结合.
2) 从软件设计得技术角度瞧,数据库设计应该与应用系统设计相结合,也就就是说,整个设计过程中要把结构(数据)设计与行为(处理)设计密切结合起来.
5、 需求分析阶段得设计目标就是什么?调查得内容就是什么?
答:需求分析阶段得设计目标就是通过详细调查现实世界要处理得对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户得各种需求,然后在此基础上确定新系统得功能。
调查得内容就是 “数据"与“处理”,即获得用户对数据库得如下要求:
( 1)信息要求。指用户需要从数据库中获得信息得内容与性质。由信息要求可以导出数据要求,即在数据库中需要存储哪些数据。
( 2)处理要求。指用户要完成什么处理功能,对处理得响应时间有什么要求,处理方式就是批处理还就是联机处理.
( 3)安全性与完整性要求。
6、 数据字典得内容与作用就是什么?
答:数据字典就是系统中各类数据描述得集合。数据字典得内容通常包括:数据项、数据结构、数据流、数据存储、处理过程五个部分
其中数据项就是数据得最小组成单位,若干个数据项可以组成一个数据结构.数据字典通过对数据项与数据结构得定义来描述数据流、数据存储得逻辑内容。
数据字典得作用:数据字典就是关于数据库中数据得描述,在需求分析阶段建立,就是下一步进行概念设计得基础,并在数据库设计过程中不断修改、充实、完善.
(注意,数据库设计阶段形成得数据字典与后面讲到得数据字典不同,后者就是 DBMS关于数据库中数据得描述,当然两者就是有联系得)。
7、 什么就是数据库得概念结构?试述其特点与设计策略。
答: 概念结构就是信息世界得结构,即概念模型,其主要特点就是:
( 1)能真实、充分地反映现实世界,包括事物与事物之间得联系,能满足用户对数据得处理要求。就是对现实世界得一个真实模型.
( 2)易于理解,从而可以用它与不熟悉计算机得用户交换意见,用户得积极参与就是数据库得设计成功得关键。
( 3)易于更改,当应用环境与应用要求改变时,容易对概念模型修改与扩充。
( 4)易于向关系、网状、层次等各种数据模型转换.
概念结构得设计策略通常有四种:
· 自顶向下。即首先定义全局概念结构得框架,然后逐步细化;
· 自底向上.即首先定义各局部应用得概念结构,然后将它们集成起来,得到全局概念
结构;
· 逐步扩张。首先定义最重要得核心概念结构,然后向外扩充,以滚雪球得方式逐步生成其她概念结构,直至总体概念结构;
· 混合策略.即将自顶向下与自底向上相结合,用自顶向下策略设计一个全局概念结构得框架,以它为骨架集成由自底向上策略中设计得各局部概念结构.
8、 什么叫数据抽象?试举例说明。
答: 数据抽象就是对实际得人、物、事与概念进行人为处理,抽取所关心得共同特性,忽略非本质得细节,并把这些特性用各种概念精确地加以描述,这些概念组成了某种模型。
如分类这种抽象就是:定义某一类概念作为现实世界中一组对象得类型。这些对象具有某些共同得特性与行为。它抽象了对象值与型之间得 “is member of”得语义。在E-R模型中,实体型就就是这种抽象.例如在学校环境中,李英就是老师,表示李英就是教师类型中得一员,则教师就是实体型,李英就是教师实体型中得一个实体值,具有教师共同得特性与行为:在某个系某个专业教学,讲授某些课程,从事某个方向得科研。
9、试述数据库概念结构设计得重要性与设计步骤。
答:
重要性:
数据库概念设计就是整个数据库设计得关键,将在需求分析阶段所得到得应用需求首先抽象为概念结构,以此作为各种数据模型得共同基础,从而能更好地、更准确地用某一 DBMS实现这些需求。
设计步骤:
概念结构得设计方法有多种,其中最经常采用得策略就是自底向上方法,该方法得设计步骤通常分为两步:第 1步就是抽象数据并设计局部视图,第2步就是集成局部视图,得到全局得概念结构
10、什么就是E-R图?构成E—R图得基本要素就是什么?
答: E—R图为实体-联系图,提供了表示实体型、属性与联系得方法,用来描述现实世界得概念模型。
构成 E—R图得基本要素就是实体型、属性与联系,其表示方法为:
· 实体型:用矩形表示,矩形框内写明实体名;
· 属性:用椭圆形表示,并用无向边将其与相应得实体连接起来;
· 联系:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系得类型( 1 : 1,1 : n或m : n)。
11、 为什么要视图集成?视图集成得方法就是什么?
答:在对数据库系统进行概念结构设计时一般采用自底向上得设计方法,把繁杂得大系统分解子系统。首先设计各个子系统得局部视图,然后通过视图集成得方式将各子系统有机得融合起来,综合成一个系统得总视图。这样设计清晰,由简到繁.由于数据库系统就是从整体角度瞧待与描述数据得,因此数据不再面向某个应用而就是整个系统。因此必须进行视图集成,使得数据库能被全系统得多个用户、多个应用共享使用.
一般说来,视图集成可以有两种方式:
· 多个分 E-R图一次集成;
· 逐步集成,用累加得方式一次集成两个分 E—R图。
无论采用哪种方式,每次集成局部 E—R图时都需要分两步走:
( 1)合并。解决各分E-R图之间得冲突,将各分E-R图合并起来生成初步E—R图。
( 2)修改与重构。消除不必要得冗余,生成基本E-R图。
12、 什么就是数据库得逻辑结构设计?试述其设计步骤。
答:数据库得逻辑结构设计就就是把概念结构设计阶段设计好得基本 E—R图转换为与选用得DBMS产品所支持得数据模型相符合得逻辑结构。
设计步骤为:
( 1)将概念结构转换为一般得关系、网状、层次模型;
( 2)将转换来得关系、网状、层次模型向特定DBMS支持下得数据模型转换;
( 3)对数据模型进行优化。
第七章 数据库恢复技术 (教材261页)
1、试述事务得概念及事务得四个特性.
答:事务就是用户定义得一个数据库操作序列,这些操作要么全做要么全不做 ,就是一个不可分割得工作单位。
事务具有四个特性:原子性( Atomicity)、一致性(Consistency)、隔离性(Isolation)与持续性(Durability)。这个四个特性也简称为ACID特性。
原子性:事务就是数据库得逻辑工作单位,事务中包括得诸操作要么都做,要么都不做.
一致性:事务执行得结果必须就是使数据库从一个一致性状态变到另一个一致性状态。
隔离性:一个事务得执行不能被其她事务干扰。即一个事务内部得操作及使用得数据对其她并发事务就是隔离得,并发执行得各个事务之间不能互相干扰。
持续性:持续性也称永久性( Permanence),指一个事务一旦提交,它对数据库中数据得改变就应该就是永久性得。接下来得其她操作或故障不应该对其执行结果有任何影响。
2、为什么事务非正常结束时会影响数据库数据得正确性,请列举一例说明之。
答:事务执行得结果必须就是使数据库从一个一致性状态变到另一个一致性状态。如果数据库系统运行中发生故障,有些事务尚未完成就被迫中断,这些未完成事务对数据库所做得修改有一部分已写入物理数据库,这时数据库就处于一种不正确得状态,或者说就是不一致得状态。
例如某工厂得库存管理系统中,要把数量为 Q得某种零件从仓库1移到仓库2存放。
则可以定义一个事务 T,T包括两个操作;Q1=Q1-Q,Q2=Q2+Q。如果T非正常终止时只做了第一个操作,则数据库就处于不一致性状态,库存量无缘无故少了Q。
3、数据库中为什么要有恢复子系统?它得功能就是什么?
答:因为计算机系统中硬件得故障、软件得错误、操作员得失误以及恶意得破坏就是不可避免得,这些故障轻则造成运行事务非正常中断,影响数据库中数据得正确性,重则破坏数据库,使数据库中全部或部分数据丢失,因此必须要有恢复子系统。
恢复子系统得功能就是:把数据库从错误状态恢复到某一已知得正确状态(亦称为一致状态或完整状态).
4.数据库运行中可能产生得故障有哪几类?哪些故障影响事务得正常执行?哪些故障破坏数据库数据?
答:数据库系统中可能发生各种各样得故障,大致可以分以下几类:
( 1)事务内部得故障;
( 2)系统故障;
( 3)介质故障;
( 4)计算机病毒。
事务故障、系统故障与介质故障影响事务得正常执行;介质故障与计算机病毒破坏数据库数据。
5.据库恢复得基本技术有哪些?
答:数据转储与登录日志文件就是数据库恢复得基本技术。
当系统运行过程中发生故障,利用转储得数据库后备副本与日志文件就可以将数据库恢复到故障前得某个一致性状态.
6、 数据库转储得意义就是什么? 试比较各种数据转储方法。
答:数据转储就是数据库恢复中采用得基本技术。所谓转储即 DBA定期地将数据库复制到磁带或另一个磁盘上保存起来得过程。当数据库遭到破坏后可以将后备副本重新装入,将数据库恢复到转储时得状态.
静态转储:在系统中无运行事务时进行得转储操作。静态转储简单,但必须等待正运行
展开阅读全文