第四章 关系数据理论

第一节 第二节 第三节 第四节

第二节 规范化                          (1) (2) (3)
    规范化理论,改造关系模式,通过分解关系模式来消除其中不合适的数据依赖;解决插入异常、删除异
常、更新异常和数据冗余。
一、函数依赖
    定义1 设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r中
不可能存在两个元组在X上的属性值相等, 而在Y上的属性值不等, 则称 “X函数确定Y” 或 “Y函数依赖
于X”,记作X→Y。
    X:函数依赖的决定属性集(Determinant)。Y=f(x)。
    说明:函数依赖不是指关系模式R的某个或某些关系实例满足的约束条件,而是指R的所有关系实例均要
满足的约束条件。函数依赖是语义范畴的概念。只能根据数据的语义来确定函数依赖。数据库设计者可以对
现实世界作强制的规定。
二、平凡函数依赖与非平凡函数依赖
    在关系模式R(U)中,对于U的子集X和Y,如果X→Y,但Y ? X,则称X→Y是非平凡的函数依赖。若X→Y,
但Y→X, 则称X→Y是平凡的函数依赖。
    例:在关系SC(Sno, Cno, Grade)中,非平凡函数依赖: (Sno, Cno) → Grade,平凡函数依赖: (Sno,
Cno) → Sno,(Sno, Cno) → Cno。任一关系模式,平凡函数依赖都是必然成立的,它不反映新的语义,因
此若不特别声明, 我们总是讨论非平凡函数依赖。
三、完全函数依赖与部分函数依赖
    定义2 在关系模式R(U)中,如果X→Y,并且对于X的任何一个真子集X’,都有 X’→ Y, 则称Y完全函数
依赖于X,记作X f→ Y。
    若X→Y,但Y不完全函数依赖于X,则称Y部分函数依赖于X,记作X P→ Y。
四、传递函数依赖
    定义3 在关系模式R(U)中,如果X→Y,Y→Z,且Y→X,Y X,则称Z传递函数依赖于X。
    注: 如果Y→X, 即X←→Y,则Z直接依赖于X。
    例: 在关系Std(Sno, Sdept, Mname)中,有:
        Sno → Sdept,Sdept → Mname
        Mname传递函数依赖于Sno
    定义4 设K为关系模式R<U,F>中的属性或属性组合。若K f U,则K称为R的一个侯选码(Candidate Key)。
若关系模式R有多个候选码,则选定其中的一个做为主码(Primary key)。
     定义5 关系模式 R 中属性或属性组X 并非 R的码,但 X 是另一个关系模式的码,则称 X 是R 的外部码
(Foreign key)也称外码。主码和外部码一起提供了表示关系间联系的手段。范式是符合某一种级别的关系
模式的集合。关系数据库中的关系必须满足一定的要求。满足不同程度要求的为不同范式。范式的种类:第一
范式(1NF);第二范式(2NF);第三范式(3NF);BC范式(BCNF);第四范式(4NF);第五范式(5NF)。
    各种范式之间存在联系:,某一关系模式R为第n范式,可
简记为R∈nNF。
    1NF的定义:如果一个关系模式R的所有属性都是不可分的基本数据项,则R∈1NF。第一范式是对关系模式
的最起码的要求。不满足第一范式的数据库模式不能称为关系数据库。满足第一范式的关系模式并不一定是一
个好的关系模式。

吉林大学网络教育学院 版权所有