关系规范化理论

一、关系模式设计的问题

1.数据冗余问题

2.数据更新问题

3.数据插入问题

4.数据删除问题

总结:S-L-C关系模式不是一个好的关系模式。

解决方法:解决上述问题的方法是进行模式分解,即把一个关系模式分解为二个或多个关系模式,在分解的过程中消除那些“不良”的函数依赖,从而获得良好的关系模式。

二、函数依赖

1.基本概念

函数依赖定义:如果有一个关系模式R(A1,A2,……,An),X和Y为{A1,A2,……,An}的子集,r是R的任一具体关系,那么对于关系r中的任意一个X值,都有一个Y值与之对应,则称X函数决定Y或Y函数依赖于X。

2.一些术语和符号

(1) 如果X\rightarrowY ,但Y不包含于X,则称X\rightarrowY是非平凡的函数依赖。

(2)如果X\rightarrowY ,但Y包含于X,则称X\rightarrowY是平凡的函数依赖。

(3)如果X\rightarrowY ,则称X为决定因子。

(4) 如果X\rightarrowY , Y\rightarrowX,则记作X\leftrightarrowY。

(5)  如果X\rightarrowY ,并且对于X的一个任意真子集X'都有X'不决定Y,则称Y完全函数依赖于X,记作X\overset{f}{\rightarrow}Y;如果 X'\rightarrowY成立,则称Y部分函数依赖于X,记作X\overset{p}{\rightarrow}Y。

(6)如果 X\rightarrowY(非平凡的函数依赖,并且Y不决定X)、Y\rightarrowZ,则称Z传递函数依赖于X。

(7)设K 为关系模式R的一个属性或者属性组,若满足:

                             K\overset{f}{\rightarrow}A1, K\overset{f}{\rightarrow}A2,..., K\overset{f}{\rightarrow}An

则称K为关系模式R的候选键(或候选码)。称包含在候选键中的属性为主属性,不包含在任何候选键中的属性为非主属性。

三、函数依赖的推理规则

设有关系模式R(U,F),U为关系模式R上的属性集,F为R上成立的只涉及U中属性的函数依赖集,X,Y,Z,W均是U的子集。推理规则如下:

1.Armstrong公理

(1)自反律

       若Y\subseteqqX\subseteqqU,则  X\rightarrowY在R上成立。即一组属性函数决定它的所有子集。

(2)增广律

         若 X\rightarrowY在R上成立,且Z\subseteqqU,则XZ\rightarrowYZ在R上也成立。

(3)传递律

    若 X\rightarrowY和 Y\rightarrowZ在R上成立,则 X\rightarrowZ在R上也成立。

2.Armstrong公理推论

(1)合并规则

        若 X\rightarrowY和 X\rightarrowZ在R上成立,则 X\rightarrowYZ在R上也成立。

(2)分解规则

         若 X\rightarrowY和Z\subseteqqY在R上成立,则  X\rightarrowZ在R上也成立。

(3)伪传递规则

          若 X\rightarrowY和 YW\rightarrowZ在R上成立,则 XW\rightarrowZ在R上也成立。

(4)复合规则

          若 X\rightarrowY和 W\rightarrowZ在R上成立,则 XW\rightarrowYZ在R上也成立。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值