5规范化理论

发布时间 2023-09-04 15:30:56作者: 无名量

非规范化的关系模式

可能存在问题:数据冗余,更新异常(修改操作一致性的问题)、插入异常、删除异常

若没有达到第3范式 都会存在以上问题

函数依赖:

X决定Y    x->y   y依赖x

求候选键

1 将关系模式的函数依赖关系用“有向图”的方式表示

2找入度为0的属性,并以该属性集合为起点,尝试遍历有向图,若能正常遍历图中所有结点,则该属性集即为关系模式的候选键

3若入度为0的属性集不能遍历图中所有结点,则需要尝试性的将一些中间节点(既有入度,也有出度的结点)并入入度为0的属性集中,直至该集合能所遍历所有结点,集合为候选键

函数依赖

部分函数依赖:依赖候选键的一部分

传递依赖

A->b->C     A ->C 

 

规范化理论公理

A 1自反律:大集合决定小集合

A2增广律:附加上的集合也成立

A3传递律:x->y  y->z   x->z

1合并规则  x->y  x->z  有x->yz

A2 A3

2伪传递规则:x->y  wy->z  有xw->z

3分解规则  x->y 及z属于y  有x->z (a1,a3)

 

范式判断(主属性:出现在候选键中的属性都是主属性)

范式解决:插入异常、删除异常、数据冗余 (哪里不符合拆哪里)

1NF:属性值都是不可分的原子值

2NF:消除非主属性对候选键的部分依赖

3NF:消除非主属性对候选键的传递依赖  A->B(非主属性) B->C(非主属性)  A->C (不可以)

BCNF:消除主属性对候选键的部分和传递依赖(当且仅当每个依赖的决定因素必定包含R的某个候选码(全含))