数据库5版第七章规范化理论例题解答

合集下载

数据库系统概论第五版课后习题答案王珊版之欧阳歌谷创编

数据库系统概论第五版课后习题答案王珊版之欧阳歌谷创编

第二章关系数据库欧阳歌谷(2021.02.01)1 .试述关系模型的三个组成部分。

答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。

2 .试述关系数据语言的特点和分类。

答:关系数据语言可以分为三类:关系代数语言。

关系演算语言:元组关系演算语言和域关系演算语言。

SQL:具有关系代数和关系演算双重特点的语言。

这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。

3 (略)4 .5 . 述关系模型的完整性规则。

在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空?答:实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。

若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。

即属性F本身不是主属性,则可以取空值,否则不能取空值。

6.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:1)求供应工程J1零件的供应商号码SNO:πSno(σJno=‘J1’(SPJ))2)求供应工程J1零件P1的供应商号码SNO:πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ))3)求供应工程J1零件为红色的供应商号码SNO:πSno(πSno,,Pno(σJno=‘J1‘(SPJ))∞πPno(σCOLOR=’红‘(P)))4)求没有使用天津供应商生产的红色零件的工程号JNO:πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)5)求至少用了供应商S1所供应的全部零件的工程号JNO:πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ))7. 试述等值连接与自然连接的区别和联系。

答:连接运算符是“=”的连接运算称为等值连接。

数据库系统概论第五版课后的习题答案王珊版.doc

数据库系统概论第五版课后的习题答案王珊版.doc

第二章关系数据库1 .试述关系模型的三个组成部分。

答:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。

2 .试述关系数据语言的特点和分类。

答:关系数据语言可以分为三类:关系代数语言。

关系演算语言:元组关系演算语言和域关系演算语言。

SQL:具有关系代数和关系演算双重特点的语言。

这些关系数据语言的共同特点是,语言具有完备的表达能力,是非过程化的集合操作语言,功能强,能够嵌入高级语言中使用。

3 (略)4 .5 . 述关系模型的完整性规则。

在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空?答:实体完整性规则是指若属性A是基本关系R的主属性,则属性A不能取空值。

若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:或者取空值(F的每个属性值均为空值);或者等于S中某个元组的主码值。

即属性F本身不是主属性,则可以取空值,否则不能取空值。

6.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:1)求供应工程J1零件的供应商号码SNO:πSno(σJno=‘J1’(SPJ))2)求供应工程J1零件P1的供应商号码SNO:πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ))3)求供应工程J1零件为红色的供应商号码SNO:πSno(πSno,,Pno(σJno=‘J1‘(SPJ))∞πPno(σCOLOR=’红‘(P)))4)求没有使用天津供应商生产的红色零件的工程号JNO:πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)5)求至少用了供应商S1所供应的全部零件的工程号JNO:πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ))7. 试述等值连接与自然连接的区别和联系。

答:连接运算符是“=”的连接运算称为等值连接。

数据库5版第七章规范化理论例题解答

数据库5版第七章规范化理论例题解答

关系数据库规范化理论例题解答⊄(⊆⊂∈∉)例:证明定理 Armstrong公理是正确的,即如果F成立,则由F根据Armstrong公理所推导的函数依赖总是成立的。

设有R(U,F),X、Y、Z均是U的子集,F是R的函数依赖集,推理规则如下:A1:自反律(reflexivity)如果Y ⊆X ⊆U,则X→Y为F所蕴涵。

A2:增广律(augmentation)如果X→Y为F所蕴涵,且Z⊆U,则XZ→YZ为F的所蕴涵。

(XZ代表X∪Z)A3:传递律(transitivity)如果X→Y和Y→Z为F所蕴涵,则X→Z为F的蕴涵。

证:设t1,t2是关系R中的任意两个元组。

A1:如果t1[X]=t2[X],则因Y X,有t1[Y]=t2[Y],故X→Y成立。

A2:如果t1[XZ]=t2[XZ],则有t1[X]=t2[X],t1[Z]=t2[Z]。

已知X→Y成立,因此可得t1[Y]=t2[Y],由上可知t1[YZ]=t2[YZ],故XZ→YZ成立。

A3:如果t1[X]=t2[X],则t1[Y]=t2[Y];如果t1[Y]=t2[Y],则t1[Z]=t2[Z]由上可得,如果t1[X]=t2[X],则t1[Z]=t2[Z],故X→Z成立。

例:证明定理根据三条推理规则得到下面三条推理规则是正确的。

(1) 合并规则由X→Y,X→Z,有X→YZ。

(2) 伪传递规则由X→Y,WY→Z,有XW→Z。

(3) 分解规则如果X→Y,且Z ⊆ Y,则X→Z成立。

证: (1) 如果X→Y,则X→XY (A2)如果X→Z,则XY→YZ (A2)由上可得X→YZ (A3)(2) 如果X→Y,则WX→WY (A2)WY→Z (已知条件)故得WX→Z (A3)(3) 如果Z⊆Y,则Y→Z (A1)X→Y (已知条件)故得X→Z (A3)例:证明定理 X→Y能由Armstrong公理推导出的充要条件是Y⊆X + F证:设Y={A1,A2,…,Ak},先证充分性:假定Y ⊆X +F,则根据X+F的定义,X→Ai(i=1,2,…,k)可由Armstrong公理导出,根据合并规则则有X→Y。

1.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,...

1.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,...

1.规范化理论是关系数据库进行逻辑设计的理论依据,根据这个理论,关系数据库中的关系必须满足:每一个属性都是()。

A.长度不变的B.不可分解的C.互相关联的D.互不相关的2.已知关系模式R(A,B,C,D,E)及其上的函数依赖集合F={A→D,B →C ,E→A },该关系模式的候选码是()。

A.ABB.BEC.CDD.DE3.关系模式中,满足2NF的模式()。

A.可能是1NFB.必定是1NFC.必定是3NFD.必定是BCNF4.消除了部分函数依赖的1NF的关系模式,必定是()。

A.1NFB.2NFC.3NFD.BCNF5.关系模式的候选码可以有1个或多个,而主码有()。

A.多个B.0个C.1个D.1个或多个6.候选码的属性可以有()。

A.多个B.0个C.1个D.1个或多个7.关系数据库规范化是为了解决关系数据库中()的问题而引入的。

A.提高查询速度B.插入、删除异常和数据冗余C.保证数据的安全性和完整性D.8.学生表(id,name,sex,age,depart_id,depart_name),存在的函数依赖是id→{name,sex,age,depart_id};dept_id→dept_name,其满足()。

A.1NFB.2NFC.3NFD.BCNF9.设有关系模式R(A,B,C,D),其数据依赖集:F={(A,B)→C,C→D},则关系模式R的规范化程度最高达到()。

A.1NFB.2NFC.3NFD.BCNF10.在关系模式R(A,B,C,D)中,存在函数依赖关系{A→B,A→C,A →D,(B,C)→A},则候选码是___________,关系模式R(A,B,C,D)属于____________11 . 在关系模式R(A,C,D)中,存在函数依赖关系{ A→C,A→D},则候选码是___________,关系模式R(A,C,D)最高可以达到_____________ 。

第7章 习题参考答案

第7章 习题参考答案

第7章习题参考答案习题七一、用适当内容填空1. ① 数据处理,② 文件,③ 表之间的联系,④ 安全控制规则,⑤ 二维,⑥描述实体,⑦ 实体联系。

2. ① 人工管理,② 文件系统,③ 数据库系统,④ 分布式数据库系统,⑤人工管理,⑥ 分布式数据库系统,⑦ 人工管理,⑧ 数据库系统。

3. ① DBS,② 人员,③ 数据库,④ 计算机软件,⑤ 数据库,⑥数据库,⑦数据库管理系统。

4. ① 数据定义,② 数据操纵,③ 数据查询。

5. ① 操作,② 不一致性,③ 共享型锁,④ 排他型锁。

6. ① 信息,② 概念模型,③ 实体,④实体属性,⑤ 数据模型,⑥一行数据或记录,⑦ 数据项、列或字段。

7. ① 并发控制,② 数据安全性控制,③数据备份与恢复。

8. ① 实体间的联系② 一对一,③ 一对多,④ 多对多,⑤ 属性名,⑥ 属性值。

9. ① 层次数据模型,② 网状数据模型,③ 关系数据模型,④ 面向对象数据模型,⑤ 两个,⑥ 数据模型,⑦ 网状,⑧ 层次,⑨ 实体型或实体之间的联系,⑩ 一个实11 属性值,○12 具有相同含义的属性。

体或实体之间的联系,○10. ① 矩形,② 椭圆,③ 菱形。

11. ① 包含对象数据的变量,② 描述对象行为特性的方法,③ 对象所响应的消息,④ 调用说明,⑤ 程序代码,⑥ 属性,⑦ 方法,⑧ 类。

12. ① 二维表,② 一个元组,③ 实体,④ 属性值域,⑤ n元关系或n目关系。

13. ① 结构,② 数据类型,③ 取值范围。

14. ① 数据结构,② 数据操作,③ 完整性约束。

15. ① 查询数据,②插入数据,③ 删除数据,④ 数据项投影,⑤ 数据记录选择,⑥ 两个表连接,⑦ 数据插入,⑧ 数据删除。

16. ① 域完整性约束,② 实体完整性约束,③ 参照完整性约束,④ 用户定义完整性约束。

17. ① 投影操作,② 选择操作,③ 连接操作,④ Where 性别=’1’,⑤ *,⑥ 1。

数据库系统概论CH7(部分)习题解答

数据库系统概论CH7(部分)习题解答

第七章 数据库设计第七章讲解数据库设计的方法和步骤。

和许多教科书不同,《数据库系统概论》把数据库设计作为一项工程来讲解和讨论。

因为大型数据库的设计和开发是一项庞大的工程,是涉及多学科的综合性技术。

数据库设计的重要性在于:数据库设计技术是信息系统开发和建设中的核心技术。

《概论》在讲解数据库设计时力求把数据库设计和应用系统设计相结合,把结构(数据)设计和行为(处理)设计密切结合起来。

许多教科书把数据库设计简单地描述为:如何把一组数据储存在数据库中,并为这些数据设计一个合适的逻辑结构,即如何设计关系模式,以及各个关系模式中的属性。

这仅仅是数据库逻辑设计的内容。

在数据库设计的各个阶段,人们都研究和开发了各种数据库设计工具。

关系数据理论是我们进行数据库逻辑设计的有力工具。

一、基本知识点本章讲解数据库设计方法和技术,内容的实践性较强。

① 需要了解的:数据库设计的特点;数据库物理设计的内容和评价;数据库的实施和维护。

② 需要牢固掌握的:数据库设计的基本步骤;数据库设计过程中数据字典的内容;数据库设计各个阶段的具体设计内容、设计描述、设计方法等。

③ 要举一反三的:E-R图的设计;E-R图向关系模型的转换。

④ 难点:技术上的难点是E-R图的设计,数据模型的优化。

真正的难点是理论与实际的结合。

读者一般缺乏实际经验,缺乏解决实际问题的能力,特别是缺乏应用领域的知识。

而数据库设计需要设计人员对应用环境、专业业务有具体深入的了解,这样才能设计出符合具体领域要求的数据库及其应用系统。

希望读者在完成本章习题的基础上要认真完成大作业。

体会这些要点,从而真正掌握本章讲解的知识、方法和技术。

二、习题解答和解析1. 试述数据库设计过程。

答这里只概要列出数据库设计过程的六个阶段:(1) 需求分析;(2) 概念结构设计;(3) 逻辑结构设计;(4) 数据库物理设计;(5) 数据库实施;(6) 数据库运行和维护。

这是一个完整的实际数据库及其应用系统的设计过程。

(完整版)数据库原理第五版习题答案

(完整版)数据库原理第五版习题答案

第1章绪论1 .试述数据、数据库、数据库系统、数据库管理系统的概念。

答:( l )数据(Data ) :描述事物的符号记录称为数据。

数据的种类有数字、文字、图形、图像、声音、正文等。

数据与其语义是不可分的。

解析在现代计算机系统中数据的概念是广义的。

早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。

现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。

数据与其语义是不可分的。

500 这个数字可以表示一件物品的价格是500 元,也可以表示一个学术会议参加的人数有500 人,还可以表示一袋奶粉重500 克。

( 2 )数据库(DataBase ,简称DB ) :数据库是长期储存在计算机内的、有组织的、可共享的数据集合。

数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

( 3 )数据库系统(DataBas 。

Sytem ,简称DBS ) :数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。

解析数据库系统和数据库是两个概念。

数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。

但是在日常工作中人们常常把数据库系统简称为数据库。

希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。

( 4 )数据库管理系统(DataBase Management sytem ,简称DBMs ) :数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。

DBMS 的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。

解析DBMS 是一个大型的复杂的软件系统,是计算机中的基础软件。

目前,专门研制DBMS 的厂商及其研制的DBMS 产品很多。

数据库系统概论第五版第七章的习题解答和解析.doc

数据库系统概论第五版第七章的习题解答和解析.doc

第七章习题解答和解析1. 试述数据库设计过程。

答:这里只概要列出数据库设计过程的六个阶段:(1) 需求分析;(2) 概念结构设计;(3) 逻辑结构设计;(4) 数据库物理设计;(5) 数据库实施;(6) 数据库运行和维护。

这是一个完整的实际数据库及其应用系统的设计过程。

不仅包括设计数据库本身,还包括数据库的实施、运行和维护。

设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。

解析:希望读者能够认真阅读《概论》7.1 的内容,了解并掌握数据库设计过程。

2.试述数据库设计过程中结构设计部分形成的数据库模式。

答:数据库结构设计的不同阶段形成数据库的各级模式,即:(1) 在概念设计阶段形成独立于机器特点,独立于各个DB MS 产品的概念模式,在本篇中就是E-R 图;(2) 在逻辑设计阶段将E-R 图转换成具体的数据库产品支持的数据模型,如关系模型,形成数据库逻辑模式,然后在基本表的基础上再建立必要的视图(View),形成数据的外模式;(3) 在物理设计阶段,根据DB MS 特点和处理的需要,进行物理存储安排,建立索引,形成数据库内模式。

读者可以参考《概论》上图7.4。

图中概念模式是面向用户和设计人员的,属于概念模型的层次;逻辑模式、外模式、内模式是DBMS 支持的模式,属于数据模型的层次,可以在DBMS 中加以描述和存储。

3.需求分析阶段的设计目标是什么? 调查的内容是什么?答需求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。

调查的内容是“数据”和“处理”,即获得用户对数据库的如下要求:(1) 信息要求,指用户需要从数据库中获得信息的内容与性质,由信息要求可以导出数据要求,即在数据库中需要存储哪些数据;(2) 处理要求,指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是联机处理;(3) 安全性与完整性要求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

关系数据库规范化理论例题解答⊄(⊆⊂∈∉)例:证明定理 Armstrong公理是正确的,即如果F成立,则由F根据Armstrong公理所推导的函数依赖总是成立的。

设有R(U,F),X、Y、Z均是U的子集,F是R的函数依赖集,推理规则如下:A1:自反律(reflexivity)如果Y ⊆X ⊆U,则X→Y为F所蕴涵。

A2:增广律(augmentation)如果X→Y为F所蕴涵,且Z⊆U,则XZ→YZ为F的所蕴涵。

(XZ代表X∪Z)A3:传递律(transitivity)如果X→Y和Y→Z为F所蕴涵,则X→Z为F的蕴涵。

证:设t1,t2是关系R中的任意两个元组。

A1:如果t1[X]=t2[X],则因Y X,有t1[Y]=t2[Y],故X→Y成立。

A2:如果t1[XZ]=t2[XZ],则有t1[X]=t2[X],t1[Z]=t2[Z]。

已知X→Y成立,因此可得t1[Y]=t2[Y],由上可知t1[YZ]=t2[YZ],故XZ→YZ成立。

A3:如果t1[X]=t2[X],则t1[Y]=t2[Y];如果t1[Y]=t2[Y],则t1[Z]=t2[Z]由上可得,如果t1[X]=t2[X],则t1[Z]=t2[Z],故X→Z成立。

例:证明定理根据三条推理规则得到下面三条推理规则是正确的。

(1) 合并规则由X→Y,X→Z,有X→YZ。

(2) 伪传递规则由X→Y,WY→Z,有XW→Z。

(3) 分解规则如果X→Y,且Z ⊆ Y,则X→Z成立。

证: (1) 如果X→Y,则X→XY (A2)如果X→Z,则XY→YZ (A2)由上可得X→YZ (A3)(2) 如果X→Y,则WX→WY (A2)WY→Z (已知条件)故得WX→Z (A3)(3) 如果Z⊆Y,则Y→Z (A1)X→Y (已知条件)故得X→Z (A3)例:证明定理 X→Y能由Armstrong公理推导出的充要条件是Y⊆X + F证:设Y={A1,A2,…,Ak},先证充分性:假定Y ⊆X +F,则根据X+F的定义,X→Ai(i=1,2,…,k)可由Armstrong公理导出,根据合并规则则有X→Y。

再证必要性:设X→Y可由Armstrong公理导出,根据分解规则X→Ai(i=1,2,…,k)成立,根据X +F的定义可得Y⊆X+F。

例.证明(1)由{X→YZ,Z→CW}推出X→CWYZ (2)由{X→Y}推出WX→Y解:(1) X→YZ 已知X→Y ,X→ Z,分解Z→CW 已知X→CW 传递X→CWYZ 合并(2) X→Y 已知WX→WY 增广WX→Y 分解例:设V、W、Z是U的子集,A、B是U的属性,令X=VZ,Y=WZ,试证由{V→W,W→V,X →A } 可推出Y→A证:已知X=VZ, X→A ,则 VZ→A已知W→V,增广,则WZ → VZ ,传递WZ →A已知Y= WZ,则Y→A例:设F={AB→C,D→EG,C→A,BE→C,BC→D,CG→BD,ACD→B,CE→AG},求BD+F解:令X(0)=BD,考察X(0)的所有子集{BD},{B},{D},是否作为决定因素出现在F中。

只有D→EG,将EG纳入X(1),得:X(1)=BD∪EG=BDEG考察X(1)的所有子集作为决定因素出现在F中,有D→EF,BE→C,得:X(2)=BDEG∪EGC=BCDEG继续找决定因素为X(2)子集的依赖:D→EG,C→A,BE→C,BC→D,CG→BD,CE→AG,得: X(3)=BCDEG∪ABCDEG=ABCDEG因X(3)=U,结束。

BD+F=ABCDEG例:求证F={AB→C,D→EG,C→A,BE→C,BC→D,CG→BD,ACD→B,CE→AG}中的BD是一个候选码。

解: BD+F=ABCDEG, 则BD→ABCDEG,即BD→u考察BD的子集,求得B+F=B,D+F=DEG因此BD是关系模式的候选码。

例:设关系模式R(A,B,C,D,E)的函数依赖集F={AB→CE,E→AB,C→D},试问R最高属于第几范式。

解:先求决定因素的闭包AB+F=ABCEDE+F=EABCDC+F=CD再求AB子集A,B的闭包 A+F=A,B+F=B 。

因此,AB和E可作为候选码,主属性为A,B,E,非主属性为C,D,不存在非主属性对候选码的部分函数依赖,因此R∈2NF。

存在D对AB码的传递函数依赖,R 3NF。

例:设有关系模式R(A,B,C,D,E,H)其两个函数依赖集分别是F={AB→E,AC→H,AD→B,B→C,C→D}G={AD→BEH,B→C,C→D}判定F是否等价G。

解:先求X→Y∈F关于G的属性闭包X+G,并判Y⊆X+G。

AB+G=ABCDEH, 则E∈AB+GAC+G=ACDBEH, 则H∈AC+GAD+G=ADBEHC, 则B∈AD+GB+G=BCD, 则C∈B+GC+G=CD, 则D∈C+G再求X→Y∈G,关于F的属性闭包X+F,并判Y⊆X+F。

AD+F=ADBCHE, 则BCH⊆ AD+FB+F=BCD, 则C∈B+FC+F=CD, 则D∈C+F因此,F与G等价。

例:设F={AB→E,AC→H,AD→BH,B→C,C→D},试证AC→H是冗余的。

解:令G={AB→E,AD→BH,B→C,C→D}AC+G=ACDBH,包含H,AC→H是冗余的例:设F={AB→C,B→D,C→E,EC→B,AC→B},求F的极小函数依赖集Fc 。

解:(1) F1={AB→C,B→D,C→E,EC→B,AC→B}(2) AB+F1-{AB→C}=ABD, C {A,B,D},保留AB→CB+F1-{B→D}=B, D∉ {B},保留B→DC+F1-{C→E}=C, E∉ {C},保留C→EEC+F1-{EC→B}=EC, BC∉{E,C},保留EC→BAC+F1-{AC→B}=ACEBD,B∈{A,B,C,D,E},取掉AC→B则F2={AB→C,B→D,C→E,EC→B}(3) ({AB}-{A})+F2=B+F2=BD, C∉{B,D} ,保留AB中的A({AB}-{B})+F2=A+F2=A, C∉{A},保留AB中的B({EC}-{E})+F2=C+F2=CEB, B∈{C,E,B} 取掉EC中的E则F3={AB→C,B→D,C→E,C→B}因此Fc = F3={AB→C,B→D,C→E,C→B}。

应当指出,给定F后,Fc不一定是唯一的,检查顺序不一样,可能导致不同的极小函数依赖集。

例如,对F={A→B,B→A,B→C,A→C,C→A},按从前到后顺序,可以求出:Fc={A→B,B→C,C→A}若从第三个开始,可以求出:Fc={A→B,B→A,A→C,C→A}它们都是F的极小函数依赖集。

例: 有关系模式R(A,B,C,D,E) F={A→C,B→C,C→D,DE→C,CE→A}, ρ={R1(A,D),R2(A,B),R3(B,E),R4(C,D,E),R5(A,E)}, 试判别ρ是否为无损分解。

解:(1) 构造初始矩阵如图(2) 检查F的函数依赖,并修改M对于A→C,A列上行1,行2,行5的值相等(为a1),将行1,行2,行5对应C列上的交叉点的值b13,b23,b53改为b13(b13的行号最小)对于B→C,B列上,行2,行3的值相等,修改C列上的行2,行3的值为b13对于C→D,将 D列上行1,行2,行3,行5的值改为a4对于DE→C,D、E列上,行3,行4,行5的值同为a4,a5将C列对应行的值改为a3对于CE→A,C、E列上,行3,行4,行5的值同为a3,a5,将A列对应行的值改为a1检查一遍后,M矩阵的行3变为a1,a2,a3,a4,a5算法终止,ρ是无损分解。

例5-9: 设有关系模式R(A,B,C),F={A→B,C→B},ρ1={R1(A,B),R2(B,C)}, ρ2={R1(A,C),R2(B,C)},求ρ1, ρ2是否无损分解解: 对于ρ1有,U1=AB,U2=BC,U1∩U2=B,U2-U1=C,U1-U2=A对于B→A, B+F=B, 所以B→A∉F+对于B→C, B+F=B,所以B→C∉F+因此ρ1不是无损分解。

对于ρ2有,U1∩U2=C,U1-U2=A,U2-U1=B对于C→B,C+F=CB,所以C→B∈F+因此ρ2是无损分解。

例: R(A,B,C),F={A→B,B→C},若U1={A,B},U2={A,C},U3={B,C},求ΠU1(F),ΠU2(F), ΠU3(F)。

解:根据定义ΠU(F)={X→Y|X→Y∈F+∧XY⊆Ui},则:ΠU1(F)={A→B}, ΠU2(F)={A→C}, ΠU3(F)={B→C}。

例: R(A,B,C),F={A→B,C→B},ρ={R1(A,B),R2(A,C)},求ΠU1(F),ΠU2(F)解:ΠU1(F)={A→B},ΠU2(F)=φ例: 设有R(A,B,C,D),F={A→B,B→C,C→D,D→A},试判断分解ρ={R1(A,B),R2(B,C),R3(C,D)}是否保持依赖。

解:ΠU1(F)={A→B,B→A },ΠU2(F)={B→C,C→B },ΠU3(F)]={C→D,D→C },令G=Πu1(F)∪Πu2(F)∪Πu3(F)={A→B, B→A ,B→C, C→B ,C→D,D→C },显然F中的前三个函数依赖都包含在G中,现在只须判断D→A是否属于G+。

求D+G=DCBA A∈D+G所以D→A∈G+,ρ可以保持依赖。

例: 设有关系模式R(C,T,H,R,S,G), 最小函数依赖集Fc={C→T,HR→C,T→R,CS→G,HS →R},将R分解成3NF且保持依赖。

解 : 按算法得:ρ={R1(C,T),R2(H,R,C),R3(T,R),R4(C,S,G),R5(H,S,R)}例: 设有关系模式S(S#,SN,SA,SS,SD,DN,C#,G),其函数依赖集F={S#→SN,S#→SA,S#→SS,S#→SD,SD→DN,(S#,C#)→G},求S一个满足3NF且保持依赖且无损的分解。

解:求极小函数依赖集Fc,知Fc =F 。

S的码为(S#,C#)τ={S1(S#,SN,SA,SS,SD),S2(SD,DN),S3(S#,C#,G)}例5-13:设有关系模式R(S#,C#,G,TN,D), 属性含义, S#:学号;C#:课程号;G:成绩;TN:任课教师;D:教师所在系。

给定函数依赖集F={(S#,C#)}→G, C#→TN, TN→D},求分解R为BCNF的无损分解。

解:初试化ρ={R}, R的码为(S#,C#),对TN→D,TN不包含码,分解R为ρ={ R1(TN, D),R2(S#, C#, G, TN), }F1={ TN→D}, 码是 TN, F2={(S#,C#)}→G, C#→TN},码是(S#,C#)对于R2中C#→TN,C#不包含码,分解R2,ρ={ R1(TN, D),R2(C#, TN), R3(S#, C#, G) , },F2={ C#→TN},码是C#,F3={(S#,C#)}→G },码是(S#,C#)R1,R2,R3都属于BCNF,分解完成。

相关文档
最新文档