设为首页 |加入收藏 | 返回申报网站
    首 页 学习指南 课程建设 教师队伍 电子教材 教学课件 授课录像 实践教学 习题试题 学习参考 技术前沿 在线答疑
   
     
教学大纲
课程简介
课程历史沿革
课程特色
课程体系
教学大纲
授课计划
教材资料
友情链接
 
您所在的位置: 首页 > 学习指南 > 教学大纲 > 详细信息

第六章 关系数据理论

课时分配:8课时

(一)教学要求

本章讲解关系数据理论,内容的理论性较强。在函数依赖、多值依赖的范畴内讨论了关系模式的规范化。在关系数据库中,对关系模式的基本要求是满足第一范式。这样的关系模式就是合法的、允许的。但是,人们发现有些关系模式存在插入、删除异常、修改复杂,数据冗余等毛病。人们寻求解决这些问题的方法,这就是规范化的目的。  
  规范化的基本思想是逐步消除数据依赖中不合适的部分,使模式中的各关系模式达到某种程度的“分离”,即“一事一地”的模式设计原则。让一个关系描述一个概念、一个实体或者实体间的一种联系。若多于一个概念就把它“分离”出去。因此所谓规范化实质上是概念的单一化。

在整个讨论过程中,只采用了两种关系运算——投影和自然连接。并且总是从一个关系模式出发,而不是从一组关系模式出发实行分解。“等价”的定义也是一组关系模式与一个关系模式的“等价”,这就是说,在开始讨论问题时事实上已经假设了存在着一个单一的关系模式,这就是泛关系假设。在泛关系假设的前提下,逐次讨论了1NF2NF3NFBCNF4NF。最后给出了数据依赖的公理系统以及模式分解的算法。如图1所示。

                       1NF

                          消除非主属性对码的部分函数依赖

消除决定属性           2NF

集非码的非平              消除非主属性对码的传递函数依赖

凡函数依赖             3NF

                          消除主属性对码的部分和传递函数依赖

                 BCNF

                          消除非平凡且非函数依赖的多值依赖

                 4NF

1 各种范式及规范化过程

 

 本章一开始,就指出这是研究模式设计的一种特殊情况:“假设已知一个模式Sφ,它仅由单个关系模式组成,问题是要设计一个模式SD,它与Sφ‘等价’,但在某些方面更好一些”。
  泛关系假设是运用规范化理论时的障碍,因为承认了泛关系假设,就等于承认了现实世界各实体间只能有一种联系,而这常常是办不到的。比如工人与机器之间就可以存在“使用”、“维护”等多种联系。对此,人们提出了一些办法,希望解决这个矛盾。例如建立一个不受泛关系假设限制的理论,或者采用某些手段使现实世界向信息世界转换时适合于泛关系的要求。  

最后应当强调的是,规范化理论为数据库设计提供了理论的指南和工具,但仅仅是指南和工具。并不是规范化程度越高,模式就越好,而必须结合应用环境和现实世界的具体情况合理地选择数据库模式。

1)需要了解的内容:什么是一个“不好”的数据库模式。什么是模式的插入异常和删除异常。规范化理论的重要意义;多值依赖和4NF。 

2) 需要掌握的内容:关系的形式化定义,数据依赖的基本概念(函数依赖、平凡函数依赖、非平凡的函数依赖、部分函数依赖、完全函数依赖、传递函数依赖的概念;码、候选码、外码的概念和定义;多值依赖的概念),范式的概念,从1NFBCNF的定义,规范化的含义和作用。
  (3)需要举一反三的内容:四个范式的理解与应用,各个级别范式中存在的问题(插入异常、删除异常、数据冗余)和解决方法。能够根据应用语义,完整地写出关系模式的数据依赖集合,并能根据数据依赖分析某一个关系模式属于第几范式。
   4)重点内容:函数依赖、范式、1NF2NF3NFBCNF

5)难点内容:函数依赖、3NFBCNF4NF、模式分解。

(二) 课程内容

6.1 问题的提出

1)数据依赖对关系模式的影响:插入异常、删除异常、冗余太大

6.2 规范化

1)数据依赖形式化定义:包括函数依赖、平凡函数依赖与非平凡函数依赖、完全函数依赖与部分函数、传递函数依赖与直接函数依赖等基本概念,达到领会层次。

2)候选码、主码、主属性、非主属性、全码、外码的定义:用函数依赖的概念来定义。

3)关系模式的范式概念:关系数据库中的关系要满足一定要求,满足不同程度要求的为不同范式

41NF:如果一个关系模式R的所有属性都是不可分的基本数据项,则R1NF

52NF:若关系模式R1NF,并且每一个非主属性都完全函数依赖于R的码,则R2NF

63NF:关系模式RF> 中若不存在这样的码X、属性组Y及非主属性ZZ Í Y, 使得XYY XYZ,成立,则称RF> 3NF。若R3NF,则R的每一个非主属性既不部分函数依赖于候选码也不传递函数依赖于候选码。

7BCNF:设关系模式RF>1NF,如果对于R的每个函数依赖XY,若Y不属于X,则X必含有候选码,那么RBCNF。即关系模式RF>中,如果每一个决定因素都包含码,则RBCNF

8)多值依赖:多值依赖的定义以及多值依赖与函数依赖的两个基本区别。

94NF:关系模式RF>1NF,如果对于R的每个非平凡多值依赖X→→YY Í X),X都含有候选码,则R4NF

10)规范化小结:规范化的目的和规范化的过程。

6.3 数据依赖的公理系统

1Armstrong公理系统:包括A1自反律、A2增广律、A3传递律以及合并规则、伪传递规则、分解规则等。

2F+概念:在关系模式RF>中为F所逻辑蕴含的函数依赖的全体叫作 F的闭包,记为F+

3XF+概念,设F为属性集U上的一组函数依赖,X ÍUXF+ ={ A|XA能由F 根据Armstrong公理导出}XF+称为属性集X关于函数依赖集F 的闭包。

4)函数依赖集等价:如果G+=F+,就说函数依赖集F覆盖GFG的覆盖,或GF的覆盖),或FG等价。

5)最小函数依赖集:F中任一函数依赖的右部仅含有一个属性;F中不存在这样

的函数依赖XA,使得FF-{XA}等价;F中不存在这样的函数依赖XA X

有真子集Z使得F-{XA}{ZA}F等价。

教学方法:举例说明,达到简单应用层次。

6.4 模式分解(选讲)

1)关系模式的分解问题:包括分解的必要性、分解标准和无损连接分解算法,

达到识记层次;

2)保持无损连接的分解:包括分解到BCNF的无损分解算法,达到简单应用层次。(3)保持函数依赖的分解:包括分解到3NF的函数依赖分解算法、及既保持无损

分解又保持函数依赖的到3NF的分解算法,达到简单应用层次。

(三)思考题

1.理解并给出下列术语的定义:

函数依赖、多值依赖、候选码、1NF2NF3NFBCNF

2.试给出一个多值依赖的实例。

3.建立一个关于系、学生、班级、学会等诸信息的关系数据库,其中:

   学生属性:学号、姓名、出生年月、系名、班号、宿舍区

   班级属性:班号、专业明、系名、人数、入校年份

   系属性: 系名、系号、系办公室地点、人数

   学会属性: 学会名、成立年份、地点、人数

有关语义如下:一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。一个系的学生住在同一宿舍区。每个学生可参加若干学会,每个学会有若干学生。学生参加某学会有一个入会年份。

请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。

指出各关系的候选码、外部码,有没有全码存在?

4.设关系模式R,其中U={A,B,C,D,E,F} ,函数依赖集F={AC,CA,BAC,DAC,BDA}.

1)求出BF

2)求出F的最小函数依赖集。

5.指出下列关系模式是第几范式?并说明理由。

1R(X,Y,Z) 

F={YZ,YX,XYZ}

2R(W,X,Y,Z)          

F={XZ,WXY}     

3R(X,Y,Z)       

F={XYZ }

4R(X,Y,Z)

F={YZ, XZY}

 


 
 
    版权所有:德州学院   技术支持:湖北华秦教育软件技术有限公司 [返回顶部]