《《数据库系统概论》第四版课后习题答案.docx》由会员分享,可在线阅读,更多相关《《数据库系统概论》第四版课后习题答案.docx(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章绪论1 .试述数据、数据库、数据库系统、数据库管理系统的概念。答:(1 )数据(Data):描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图 像、声音、正文等。数据与其语义是不可分的。解析在现代计算机系统中数据的概念是广义 的。早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中 的数据。现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。数 据与其语义是不可分的。500这个数字可以表示一件物品的价格是500元,也可以表示一 个学术会议参加的人数有500人,还可以表示一袋奶粉重500克。(2 )数据库(DataBase ,简称DB )
2、:数据库是长期储存在计算机内的、有组织的、可 共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、 较高的数据独立性和易扩展性,并可为各种用户共享。(3 )数据库系统(DataBas。Sytem ,简称DBS ):数据库系统是指在计算机系统中 引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、 数据库管理员构成。解析数据库系统和数据库是两个概念。数据库系统是一个人一机系统, 数据库是数据库系统的一个组成部分。但是在日常工作中人们常常把数据库系统简称为数据 库。希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引
3、 起混淆。(4 )数据库管理系统(DataBase Management sytem ,简称DBMs ):数据库管理系统是 位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和 维护数据。DBMS的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、 数据库的建立和维护功能。解析DBMS是一个大型的复杂的软件系统,是计算机中的基础 软件。目前,专门研制DBMS的厂商及其研制的DBMS产品很多。著名的有美国IBM公 司的DBZ关系数据库管理系统和IMS层次数据库管理系统、美国Oracle公司的orade 关系数据库管理系统、s油ase公司的s油ase关系数据
4、库管理系统、美国微软公司的 SQL Serve ,关系数据库管理系统等。2 .使用数据库系统有什么好处?答:使用数据库系统的好处是由数据库管理系统的特点或优点决定的。使用数据库系统的好处很 多,例如,可以大大提高应用开发的效率,方便用户的使用,减轻数据库系统管理人员维护 的负担,等等。使用数据库系统可以大大提高应用开发的效率。因为在数据库系统中应用程 序不必考虑数据的定义、存储和数据存取的具体路径,这些工作都由DBMS来完成。用一 个通俗的比喻,使用了 DBMS就如有了一个好参谋、好助手,许多具体的技术工作都由这 个助手来完成。开发人员就可以专注于应用逻辑的设计,而不必为数据管理的许许多多复杂
5、 的细节操心。还有,当应用逻辑改变,数据的逻辑结构也需要改变时,由于数据库系统提供 了数据与程序之间的独立性,数据逻辑结构的改变是DBA的责任,开发人员不必修改应 用程序,或者只需要修改很少的应用程序,从而既简化了应用程序的编制,又大大减少了应 用程序的维护和修改。使用数据库系统可以减轻数据库系统管理人员维护系统的负担。因为 DBMS在数据库建立、运用和维护时对数据库进行统一的管理和控制,包括数据的完整性、 安全性、多用户并发控制、故障恢复等,都由DBMS执行。总之,使用数据库系统的优点 是很多的,既便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于 应用程序的开发和维护。读
6、者可以在自己今后的工作中结合具体应用,认真加以体会和总结。3 .试述文件系统与数据库系统的区别和联系。答:1 .什么是数据库的安全性?答:数据库的安全性是指保护数据库以防止不合法的使用所造成的数据泄露、更改或破坏。2 .数据库安全性和计算机系统的安全性有什么关系?答:安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系 统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。 系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统、网络系统的安全性是紧密联系、相 互支持的,.试述可信计算机系统评测标准的情
7、况,试述TDI/TCSEC标准的基本内容。答:各个国家在计算机安全技术方面都建立了一套可信标准。目前各国引用或制定的一系列 安全标准中,最重要的是美国国防部(DoD )正式颁布的DoD可信计算机系统评估标 准(伽 sted Co 哪 uter system Evaluation criteria,简称 TcsEc ,又称桔皮书)。(TDI / TCSEC 标准是将TcsEc扩展到数据库管理系统,即可信计算机系统评估标准关于可信数据库系 统的解释(Tmsted Database Interpretation简称TDI,又称紫皮书)。在TDI中定义了数 据库管理系统的设计与实现中需满足和用以进行安
8、全性级别评估的标准。TDI与TcsEc 一样,从安全策略、责任、保证和文档四个方面来描述安全性级别划分的指 标。每个方面又细分为若干项。3 .试述TcsEC (TDI )将系统安全级别划分为4组7个等级的基本内容。答:根据计算机系统对安全性各项指标的支持情况,TCSEC ( TDI )将系统划分为四组 (division ) 7 个等级,依次是 D、C ( CI, CZ )、B ( BI, BZ , B3 )、A ( AI),按系统可 靠或可信程度逐渐增高。全级别定 义A1依江设计(Verified即)B3以个域SfHmrity I kNiuiifi*)B2结构化保护1 Stnion)D献小保
9、护,Miniinril Protection)安这些安全级别之间具有一种偏序向下兼容的关系,即较高安全性级别提供的安全保护包含较 低级别的所有保护要求,同时提供更多或更完善的保护能力。各个等级的基本内容为: D级D级是最低级别。一切不符合更高标准的系统,统统归于D组。C1级只提供了非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控 制(DAC),保护或限制用户权限的传播。C2级实际是安全产品的最低档次,提供受控的存取保护,即将C1级的DAC进一步细化, 以个人身份注册负责,并实施审计和资源隔离。B1级标记安全保护。对系统的数据加以标记,并对标记的主体和客体实施强制存取控制 (M
10、AC )以及审计等安全机制。B2级结构化保护。建立形式化的安全策略模型并对系统内的所有主体和客体实施DAC和 MACoB3级安全域。该级的TCB必须满足访问监控器的要求,审计跟踪能力更强,并提供系统 恢复过程。Al级验证设计,即提供B3级保护的同时给出系统的形式化设计说明和验证以确信各安全 保护真正实现。4 .试述实现数据库安全性控制的常用方法和技术。答:实现数据库安全性控制的常用方法和技术有:(1)用户标识和鉴别:该方法由系统提供一定的方式让用户标识自己的名字或身份。每次 用户要求进入系统时,由系统进行核对,通过鉴定后才提供系统的使用权。(2 )存取控制:通过用户权限定义和合法权检查确保只有
11、合法权限的用户访问数据库,所 有未被授权的人员无法存取数据。例如CZ级中的自主存取控制(DAC),B1级中的强制存 取控制(MAC )o(3 )视图机制:为不同的用户定义视图,通过视图机制把要保密的数据对无权存取的用户 隐藏起来,从而自动地对数据提供一定程度的安全保护。(4 )审计:建立审计日志,把用户对数据库的所有操作自动记录下来放入审计日志中,DBA 可以利用审计跟踪的信息,重现导致数据库现有状况的一系列事件,找出非法存取数据的人、 时间和内容等。(5 )数据加密:对存储和传输的数据进行加密处理,从而使得不知道解密算法的人无法获 知数据的内容。5 .什么是数据库中的自主存取控制方法和强制存
12、取控制方法? 答:自主存取控制方法:定义各个用户对不同数据对象的存取权限。当用户对数据库访问时首先 检查用户的存取权限。防止不合法用户对数据库的存取。强制存取控制方法:每一个数据对象被(强制地)标以一定的密级,每一个用户也被(强制 地)授予某一个级别的许可证。系统规定只有具有某一许可证级别的用户才能存取某一个密 级的数据对象。6 .SQL语言中提供了哪些数据控制(自主存取控制)的语句?请试举几例说明它们的使用 方法。答:SQL中的自主存取控制是通过GRANT语句和REVOKE语句来实现的。如:GRANT SELECT , INSERT ON StudentTO王平WITH GRANT OPTI
13、ON ;就将Student表的SELECT和INSERT权限授予了用户王平,后面的“WITH GRANT OPTION ”子句表示用户王平同时也获得了 “授权”的权限,即可以把得到的权限继续授 予其他用户。REVOKE INSERT ON Student FROM 王平 CASCADE ;就将Student表的INSERT权限从用户王平处收回,选项CASCADE表示,如果用户王平 将Student的INSERT权限又转授给了其他用户,那么这些权限也将从其他用户处收回。7 .请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功 能:(a )用户王明对两个表有SEL
14、ECT权力。GRANT SELECT ON 职工者B 门TO王明(b )用户李勇对两个表有INSERT和DELETE权力。GRANT INSERT,DELETE ON 职工,部门TO李勇(c)每个职工只对自己的记录有SELECT权力。GRANT SELECT ON 职工WHEN USER()=NAMETO ALL;(d )用户刘星对职工表有SELECT权力,对工资字段具有更新权力。GRANT SELECT,UPDATE(工资)ON 职工TO刘星(e )用户张新具有修改这两个表的结构的权力。GRANT ALTER TABLE ON 职工,部门TO张新;(f)用户周平具有对两个表所有权力(读,插,
15、改,删数据),并具有给其他用户授权的 权力。GRANT ALL PRIVILIGES ON 职工,部门TO周平WITH GRANT OPTION;(g)用户杨兰具有从每个部门职工中SELECT最高工资、最低工资、平均工资的权力,他 不能查看每个人的工资。CREATE VIEW 部门工资ASSELECT部门名称,MAX(工资),MIN(工资),AVG(工资)FROM职工,部门WHERE职工,部门号二部门.部门号GROUP BY职工.部门号GRANT SELECT ON 部门工资TO杨兰;.把习题8中(1) - (7)的每一种情况,撤销各用户所授予的权力(1) REVOKE SELECT ON 职
16、工,部门 FROM 王明;REVOKE INSERT , DELETE ON 职工,部门 FROM 李勇;(2) REOVKE SELECT ON 职工WHEN USER () =NAMEFROM ALI;REVOKE SELECT , UPDATE ON 职工FROM刘星;REVOKE ALTER TABLE ON 职工,部门FROM张新;REVOKE ALL PRIVILIGES ON 职工,部门FROM周平;REVOKE SELECT ON 部门工资FROM杨兰;DROP VIEW 部门工资;10 .为什么强制存取控制提供了更高级别的数据库安全性?答:强制存取控制(MAC )是对数据本身
17、进行密级标记,无论数据如何复制,标记与数据 是一个不可分的整体,只有符合密级标记要求的用户才可以操纵数据,从而提供了更高级别 的安全性。11 .理解并解释MAC机制中主体、客体、敏感度标记的含义。答:主体是系统中的活动实体,既包括DBMS所管理的实际用户,也包括代表用户的各进程。 客体是系统中的被动实体,是受主体操纵的,包括文件、基表、索引、视图等。对于主体和 客体,DBMS为它们每个实例(值)指派一个敏感度标记(Label )。敏感度标记被分成若干级别,例如绝密(Top Secret )、机密(Secret ) 可信(Confidential )、 公开(Public )等。主体的敏感度标记
18、称为许可证级别(Clearance玫vel),客体的敏感 度标记称为密级(Classification Level )。13 .什么是数据库的审计功能,为什么要提供审计功能?答:审计功能是指DBMS的审计模块在用户对数据库执行操作的同时把所有操作自动记录 到系统的审计日志中。因为任何系统的安全保护措施都不是完美无缺的,蓄意盗窃破坏数据的人总可能存在。利用 数据库的审计功能,DBA可以根据审计跟踪的信息,重现导致数据库现有状况的一系列事 件,找出非法存取数据的人、时间和内容等。14 .统计数据库中存在何种特殊的安全性问题?答:统计数据库允许用户查询聚集类型的信息,如合计、平均值、最大值、最小值等
19、,不允 许查询单个记录信息。但是,人们可以从合法的查询中推导出不合法的信息,即可能存在隐 蔽的信息通道,这是统计数据库要研究和解决的特殊的安全性问题。第5章数据库完整性1什么是数据库的完整性?答:数据库的完整性是指数据的正确性和相容性。2 .数据库的完整性概念与数据库的安全性概念有什么区别和联系? 答:数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存 在不符合语义的数据,防止错误信息的输入和输出,即所谓垃圾进垃圾出(Garba : e In Garba : e out )所造成的无效操作和错误结果。后者是保护数据库防止恶意的破坏和非法的 存取。也就是说,安全性措
20、施的防范对象是非法用户和非法操作,完整性措施的防范对象是 不合语义的数据。3 .什么是数据库的完整性约束条件?可分为哪几类?答完整性约束条件是指数据库中的数据应该满足的语义约束条件。一般可以分为六类:静态列 级约束、静态元组约束、静态关系约束、动态列级约束、动态元组约束、动态关系约束。静 态列级约束是对一个列的取值域的说明,包括以下几个方面:(1 )对数据类型的约束,包 括数据的类型、长度、单位、精度等;(2 )对数据格式的约束;(3 )对取值范围或取 值集合的约束;(4 )对空值的约束;(5 )其他约束。静态元组约束就是规定组成一个 元组的各个列之间的约束关系,静态元组约束只局限在单个元组上
21、。静态关系约束是在一个 关系的各个元组之间或者若干关系之间常常存在各种联系或约束。常见的静态关系约束有:(1)实体完整性约束;(2)参照完整性约束;(3)函数依赖 约束。动态列级约束是修改列定义或列值时应满足的约束条件,包括下面两方面:(1 )修改列定 义时的约束;(2 )修改列值时的约束。动态元组约束是指修改某个元组的值时需要参照 其旧值,并且新旧值之间需要满足某种约束条件。动态关系约束是加在关系变化前后状态上 的限制条件,例如事务一致性、原子性等约束条件。4 . DBMS的完整性控制机制应具有哪些功能? 答:DBMS的完整性控制机制应具有三个方面的功能:(1 )定义功能,即提供定义完整性约
22、 束条件的机制;(2 )检查功能,即检查用户发出的操作请求是否违背了完整性约束条件; (3 )违约反应:如果发现用户的操作请求使数据违背了完整性约束条件,则采取一定的动 作来保证数据的完整性。5 . RDBMS在实现参照完整性时需要考虑哪些方面? 答RDBMs在实现参照完整性时需要考虑以下几个方面:(1 )外码是否可以接受空值。(2) 册1除被参照关系的元组时的考虑,这时系统可能采取的作法有三种:1 )级联删除 (CASCADES ); 2 )受限册 1除(RESTRICTED ); 3 )置空值册1)除(NULLIFIES )。(3 ) 在参照关系中插入元组时的问题,这时系统可能采取的作法有
23、:1)受限插入;2 )递归 插入。(4 )修改关系中主码的问题。一般是不能用UPDATE语句修改关系主码的。如果 需要修改主码值,只能先删除该元组,然后再把具有新主码值的元组插入到关系中。如果允 许修改主码,首先要保证主码的惟一性和非空,否则拒绝修改。然后要区分是参照关系还是 被参照关系。6 .假设有下面两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),其中 职工号为主码;部门(部门号,名称,经理名,电话),其中部门号为主码。用SQL语言 定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:定义每个模式的主码; 定义参照完整性;定义职工年龄不得超过60岁。答CREATE
24、TABLE DEPT(Deptno NUMBER(2),Deptname VARCHAR(IO),Manager VARCHAR(IO), PhoneNumber Char(12) CONSTRAINT PK_SC RIMARY KEY(Deptno);CREATE TABLE EMP(Empno NUMBER(4),Ename VARCHAR( 10),Age NUMBER(2),CONSTRAINT C1 CHECK (Aage=60),Job VARCHAR(9),Sal NUMBER。,2),Deptno NUMBER(2),CONSTRAINT FK_DEPTNOFOREIGN KE
25、Y(Deptno)REFFERENCES DEPT(Deptno);.关系系统中,当操作违反实体完整性、参照完整性和用户定义的完整性约束条件时,一 般是如何分别进行处理的?答:对于违反实体完整性和用户定义的完整性的操作一般都采用拒绝执行的方式进行处理。而对 于违反参照完整性的操作,并不都是简单地拒绝执行,有时要根据应用语义执行一些附加的 操作,以保证数据库的正确性。第6章关系数据库理论1 .理解并给出下列术语的定义:函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码(All 一 key )、1 NF、ZNF、3NF、BcNF、多值依赖、4NF。定义1 :设R(U)是属性集
26、U上的关系模式。X, Y是属性集U的子集。若对于R(U)的任意 一个可能的关系r, r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等, 则称X函数确定Y或Y函数依赖于X,记作X9Y。(即只要X上的属性值相等,Y上的值 一定相等。)术语和记号:X9Y,但Y不是X的子集,则称X9Y是非平凡的函数依赖。若不特别声明,总是讨论非 平凡的函数依赖。X9Y,但Y是X的子集,则称X9Y是平凡的函数依赖。若X3Y,则X叫做决定因素eterminant)。若X9Y,、6X,则记作XG9Y。、若Y不函数依赖于X,则记作X3Y。定义2:在R(U)中,如果X6Y,并且对于X的任何一个真子集、K,都有X,
27、9Y,则称Y 对X完全函数依赖若X少Y,但Y不完全函数依赖于X,则称Y对X部分函数依赖定义3:若关系模式R的每一个分量是不可再分的数据项,则关系模式R属于第一范式(1NF)。 定义4:若关系模式R1NF,且每一个非主属性完全函数依赖于码,则关系模式R2NF。(即1NF消除了非主属性对码的部分函数依赖则成为2NF)O定义5:关系模式R中若不存在这样的码X、属性组Y及非主属性Z(Z不是Y的子 集)使得 X9Y, YfX, YfZ 成立,则称 RE3NFo定义6:关系模式RG1NF o若X9Y且Y不是X的子集时,X必含有码,则ReBCNFo定义7:关系模式ReiNF,如果对于R的每个非平凡多值依赖X
28、3fY(Y不是X的 子集,Z=U-X-Y不为空),X都含有码,则称RvU, Fe4NFo2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。学生:学号、姓名、出生年月、系名、班号、宿舍区。班级:班号、专业名、系名、人数、入校年份。系:系名、系号、系办公地点、人数。学会:学会名、成立年份、办公地点、人数。语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系 的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会 有一个入会年份。请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖, 对于函数依赖左部是多属性的情况讨论函
29、数依赖是完全函数依赖,还是部分函数依赖。指出 各关系模式的候选码、外部码,有没有全码存在?解:(1)关系模式如下:学生:S(Sno, Sname, Sbirth, Dept, Class, Rno)班级:C(Class, Pname, Dept, Cnum, Cyear)系:D(Dept, Dno, Office, Dnum)学会:M(Mname, My ear, Maddr, Mnum)(2)每个关系模式的最小函数依赖集如下:A、学生 S (Sno, Sname, S birth, Dept, Class, Rno)的最小函数依赖集如下:SnofSname, Sno-Sbirth, Sno-
30、Class, ClassfDqpt, DEPTRno传递依赖如下:由于 SnofDept,而 DepSno , DeptRno (宿舍区)所以Sno与Rno之间存在着传递函数依赖。由于 ClassD叩t, DeptClass, D叩Rno所以Class与Rno之间存在着传递函数依赖。由于 Sno3class, Class-Sno, ClassDept所以Sno与Dept之间存在着传递函数依赖。B、班级C(Class, Pname, Dept, Cnum, Cyear)的最小函数依赖集如下:Class-Pname, Class-Cnum, Class今Cyear, PnameDept.由于 Cl
31、ass-Pname, Pname-Class, PnameDept所以Class与Dept之间存在着传递函数依赖。C系D(Dept, Dno, Office, Dnum)的最小函数依赖集如下:DeptDno, DnoDept, DnoOffice, Dno-Dnum根据上述函数依赖可知,D叩t与Office, Dept与Dnum之间不存在传递依赖。D、学会M(Mname, My ear, Maddr, Mnum)的最小函数依赖集如下:Mname玲Myear, MnameMaddr, MnameMnum 该模式不存在传递依赖。(3)各关系模式的候选码、外部码,全码如下:A、学生S候选码:Sno;
32、外部码:Dept、Class;无全码B、班级C候选码:Class;外部码:Dept;无全码C、系D候选码:Dept或Dno;无外部码;无全码D、学会M候选码:Mname;无外部码;无全码3 .试由amstrong公理系统推导出下面三条推理规则:(1 )合并规则:若X Z,X 丫,则有X YZ(2 )伪传递规则:由x 丫,明吟z有翔一 z(3 )分解规则:x Y , zcy,有x z证明(1 )已知X - Z ,由增广律知哟,YZ ,又因为X Y ,可得狱一 X卜)YZ ,最后 根据传递律得x YZ。(2 )已知X -Y ,据增广律得翔一 Wy ,因为阴几)Z ,所以X林协明,Z ,通过传 递律
33、可知翔一 Z O(3 )已知zcy ,根据自反律知、吟z ,又因为x Y ,所以由传递律可得x Z。5 .试举出3个多值依赖的实例。答:(1)关系模式MSC(M,S,C )中,M表示专业,S表示学生,C表示该专业的必修课。 假设每个专业有多个学生,有一组必修课。设同专业内所有学生选修的必修课相同,实例关 系如下。按照语义对于M的每一个值Mi, s有一个完整的集合与之对应而不问C取何值, 所以MS o由于C与S的完全对称性,必然有MC成立。(2)关系模式ISA(I,S,A )中,I表示学生兴趣小组,S表示学生,A表示某兴趣小组 的活动项目。假设每个兴趣小组有多个学生,有若干活动项目。每个学生必须
34、参加所在兴趣 小组的所有活动项目,每个活动项目要求该兴趣小组的所有学生参加。按照语义有I 一一S,I 一A成立。(3)关系模式RDP(R,D,P )中,R表示医院的病房,D表示责任医务人员,P表示病 人。假设每个病房住有多个病人,有多个责任医务人员负责医治和护理该病房的所有病人。 12.下面的结论哪些是正确的?哪些是错误的?对于错误的请给一个反例说明之。(1)任何一个二目关系是属于3NF。答:正确。因为关系模式中只有两个属性,所以无传递。(2)任何一个二目关系是属于BCNF.答:正确。按BCNF的定义,若XfY,且Y不是X的子集时,每个决定因素都包含码, 对于二目关系决定因素必然包含码。详细证
35、明如下:(任何二元关系模式必定是 BCNF)o证明:设R为一个二目关系R(A1, A2),则属性Al和A2之间可能存在以下几种依 赖关系:A、A19A2,但A2fAl,则关系R的码为Al,决定因素都包含码,所以,R是BCNF。B、A19A2, A2A1,则关系R的码为A2,所以决定因素都包含码,R是BCNF。包含码。R是BCNF。C、R的码为(Al, A2)(即Al 3A2, A2fAl),决定因素都 (3)任何一个二目关系是属于4NF.答:正确。因为只有两个属性,所以无非平凡的多值依赖。第7章数据库设计.试述数据库设计过程。答:这里只概要列出数据库设计过程的六个阶段:(1)需求分析;(2 )
36、概念结构设计; (3 )逻辑结构设计;(4 )数据库物理设计;(5 )数据库实施;(6 )数据库运行和维 护。这是一个完整的实际数据库及其应用系统的设计过程。不仅包括设计数据库本身,还包 括数据库的实施、运行和维护。设计一个完善的数据库应用系统往往是上述六个阶段的不断 反复。1 .试述数据库设计过程各个阶段上的设计描述。答:各阶段的设计要点如下:(1 )需求分析:准确了解与分析用户需求(包括数据与处理)。 (2 )概念结构设计:通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS 的概念模型。(3 )逻辑结构设计:将概念结构转换为某个DBMS所支持的数据模型,并 对其进行优化。(4
37、)数据库物理设计:为逻辑数据模型选取一个最适合应用环境的物理 结构(包括存储结构和存取方法)。(5 )数据库实施:设计人员运用DBMS提供的数据 语言、工具及宿主语言,根据逻辑设计和物理设计的结果建立数据库,编制与调试应用程序, 组织数据入库,并进行试运行。(6 )数据库运行和维护:在数据库系统运行过程中对其 进行评价、调整与修改。2 .试述数据库设计过程中结构设计部分形成的数据库模式。答:数据库结构设计的不同阶段形成数据库的各级模式,即:(1)在概念设计阶段形成独 立于机器特点,独立于各个DBMS产品的概念模式,在本篇中就是E R图;(2 ) 在逻辑设计阶段将E R图转换成具体的数据库产品支
38、持的数据模型,如关系模型,形 成数据库逻辑模式,然后在基本表的基础上再建立必要的视图(Vi娜),形成数据的外模式; (3 )在物理设计阶段,根据DBMS特点和处理的需要,进行物理存储安排,建立索引, 形成数据库内模式。3 .试述数据库设计的特点。答:数据库设计既是一项涉及多学科的综合性技术又是一项庞大的工程项目。其主要特点有: (1)数据库建设是硬件、软件和干件(技术与管理的界面)的结合。(2 )从软件设计的 技术角度看,数据库设计应该和应用系统设计相结合,也就是说,整个设计过程中要把结构 (数据)设计和行为(处理)设计密切结合起来。4 .需求分析阶段的设计目标是什么?调查的内容是什么?答:需
39、求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等), 充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础 上确定新系统的功能。调查的内容是“数据夕和“处理”,即获得用户对数据库的如下要 求:(1 )信息要求,指用户需要从数据库中获得信息的内容与性质,由信息要求可以导出 数据要求,即在数据库中需要存储哪些数据;(2 )处理要求,指用户要完成什么处理功 能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理;(3 )安全性与完 整性要求。5 .数据字典的内容和作用是什么?答:数据字典是系统中各类数据描述的集合。数据字典的内容通常包括:(
40、1 )数据项;(2 ) 数据结构;(3 )数据流;(4 )数据存储;(5 )处理过程五个部分。其中数据项是数 据的最小组成单位,若干个数据项可以组成一个数据结构。数据字典通过对数据项和数据结 构的定义来描述数据流和数据存储的逻辑内容。数据字典的作用:数据字典是关于数据库中 数据的描述,在需求分析阶段建立,是下一步进行概念设计的基础,并在数据库设计过程中 不断修改、充实、完盖。6 .什么是数据库的概念结构?试述其特点和设计策略。答:概念结构是信息世界的结构,即概念模型,其主要特点是:(1 )能真实、充分地反映 现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一 个真
41、实模型;(2 )易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积 极参与是数据库设计成功的关键;(3 )易于更改,当应用环境和应用要求改变时,容易 对概念模型修改和扩充;(4 )易于向关系、网状、层次等各种数据模型转换。概念结构 的设计策略通常有四种:1 )自顶向下,即首先定义全局概念结构的框架,然后逐步细化; 2 )自底向上,即首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结 构;3 )逐步扩张,首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐 步生成其他概念结构,直至总体概念结构;4 )混合策略,即将自顶向下和自底向上相结 合,用自顶向下策略设计一个
42、全局概念结构的框架,以它为骨架集成由自底向上策略中设计 的各局部概念结构。7 .什么叫数据抽象?试举例说明。答:数据抽象是对实际的人、物、事和概念进行人为处理,抽取所关心的共同特性,忽略非 本质的细节,并把这些特性用各种概念精确地加以描述,这些概念组成了某种模型。如“分 类夕这种抽象是:定义某一类概念作为现实世界中一组对象的类型。这些对象具有某些共 同的特性和行为。它抽象了对象值和型之间的,1 i 5 member of 的语义。在E R模 型中,实体型就是这种抽象。例如在学校环境中,李英是老师,表示李英是教师类型中的一 员,则教师是实体型,李英是教师实体型中的一个实体值,具有教师共同的特性和
43、行为:在 某个系某个专业教学,讲授某些课程,从事某个方向的科研。8 .试述数据库概念结构设计的重要性和设计步骤。答:重要性:数据库概念设计是整个数据库设计的关键,将在需求分析阶段所得到的应用需 求首先抽象为概念结构,以此作为各种数据模型的共同基础,从而能更好地、更准确地用某 一 DBMS实现这些需求。设计步骤:概念结构的设计方法有多种,其中最经常采用的策略 是自底向上方法,该方法的设计步骤通常分为两步:第1步是抽象数据并设计局部视图, 第2步是集成局部视图,得到全局的概念结构。9 .为什么要视图集成?视图集成的方法是什么?答:在对数据库系统进行概念结构设计时一般采用自底向上的设计方法,把繁杂的
44、大系统分 解子系统。首先设计各个子系统的局部视图,然后通过视图集成的方式将各子系统有机地融 合起来,综合成一个系统的总视图。这样,设计清晰,由简到繁。由于数据库系统是从整体 角度看待和描述数据的,因此数据不再面向某个应用而是整个系统。因此必须进行视图集成, 使得数据库能被全系统的多个用户、多个应用共享使用。一般说来,视图集成可以有两种方 式:(1 )多个分E - R图一次集成;(2 )逐步集成,用累加的方式一次集成两个分E - R图。无论采用哪种方式,每次集成局部E - R图时都需要分两步走:(1 )合并,解 决各分E - R图之间的冲突,将各分E - R图合并起来生成初步E R图;(2 )
45、修改和重构,消除不必要的冗余,生成基本E R图。10 .什么是数据库的逻辑结构设计?试述其设计步骤。答:数据库的逻辑结构设计就是把概念结构设计阶段设计好的基本E - R图转换为与选 用的DBMS产品所支持的数据模型相符合的逻辑结构。设计步骤为:(1 )将概念结构转 换为一般的关系、网状、层次模型;(2 )将转换来的关系、网状、层次模型向特定DBMS 支持下的数据模型转换;(3 )对数据模型进行优化。14.规范化理论对数据库设计有什么指导意义?答:规范化理论为数据库设计人员判断关系模式的优劣提供了理论标准,可用以指导关系数 据模型的优化,用来预测模式可能出现的问题,为设计人员提供了自动产生各种模
46、式的算法 工具,使数据库设计工作有了严格的理论基础。文件系统与数据库系统的区别是:文件系统面向某一应用程序,共享性差,冗余度大,数据 独立性差,记录内有结构,整体无结构,由应用程序自己控制。数据库系统面向现实世界, 共享性高,冗余度小,具有较高的物理独立性和一定的逻辑独立性,整体结构化,用数据模 型描述,由数据库管理系统提供数据的安全性、完整性、并发控制和恢复能力。文件系统与数据库系统的联系是:文件系统与数据库系统都是计算机系统中管理数据的软 件。解析文件系统是操作系统的重要组成部分;而DBMS是独立于操作系统的软件。但是 DBMS是在操作系统的基础上实现的;数据库中数据的组织和存储是通过操作
47、系统中的文 件系统来实现的。4 ,举出适合用文件系统而不是数据库系统的例子;再举出适合用数据库系统的应用例子。 答:(1)适用于文件系统而不是数据库系统的应用例子数据的备份、软件或应用程序使用过程 中的临时数据存储一般使用文件比较合适。早期功能比较简单、比较固定的应用系统也适合 用文件系统。(2 )适用于数据库系统而非文件系统的应用例子目前,几乎所有企业或部门的信息系统 都以数据库系统为基础,都使用数据库。例如,一个工厂的管理信息系统(其中会包括许多 子系统,如库存管理系统、物资采购系统、作业调度系统、设备管理系统、人事管理系统等), 学校的学生管理系统,人事管理系统,图书馆的图书管理系统,等等,都适合用数据库系统。 希望读者能举出自己了解的应用例子。5 .试述数据库系统的特点。答:数据库系统的主要特点有:(1)数据结构化数据库系统实现整体数据的结构化,这是数据库的主要特征之一,也是数 据库系统与文件系统的本质区别。解析注意这里的“整体夕两个字。在数据库系统中,数 据不再针对某一个应用,而是面向全组织,具有整体的结构化。不仅数据是结构化的,而且 数据的存取单位即一次可以存取数据的大小也很灵活,可以小到某一个数据项(如一个学生 的姓名),大到一组记录(成千上万个学生记录)。而在文件系统中,数据的存取单位只有一 个:记
限制150内