博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
8.19 标准范式 Day36
阅读量:5148 次
发布时间:2019-06-13

本文共 1002 字,大约阅读时间需要 3 分钟。

---note---

1NF的定义:

  如果一个关系模式R(U,F)的所有属性都是不可分的基本数据项

    则R(U,F)属于1NF

2NF的定义:

  若关系模式属于1NF,并且每一个非主属性都完全依赖于R的码

    则R属于2NF

3NF的定义:

  关系模式中若不存在这样的候选码X,属性组Y及非主属性Z,

使得X->Y,Y-\->X,Y->Z 成立,则称R属于3NF

  R属于3NF,则R的每一个非主属性既不部分函数依赖于候选码也不传递函数依赖于候选码

      R属于3NF,R也是2NF

BCNF的定义:

  设R(U,F)属于1NF,如果对于R的每个函数依赖X->Y,若Y不包含于X(Y不属于X),则X必含有候选码,那么R属于BCNF

    所有非主属性都完全函数依赖于每个候选码

    所有主属性都完全函数依赖于每个不包含它的候选码

    设有任何属性完全函数依赖于非码的任何一组属性

  如果R属于3NF,且R只有一个候选码,则R属于BCNF

多值依赖:

  R关系模式,X,Y,Z是U的子集,并且Z=U-X-Y

    X->->Y, Z=U-X-Y=∅

      X->->Y为平凡多值依赖

对称性与传递性

4NF定义:

  关系模式:R<U,F>属于1NF,如果对于R的每个非平凡多值依赖X-\->Y(Y属于X)

X都含有候选码,则R属于4NF

  不允许有非平凡且非函数依赖的多值依赖

  允许的是函数依赖

 

X-\->Y(Y属于X) X都含有候选码

  1NF

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

  2NF

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

  3NF  

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

  BCNF  

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

  4NF

消除非平凡函数依赖的关系,非主码

 

如果一个分解具有无损连接性,则它能够保证不丢失信息

如果一个分解保持了函数依赖,则它可以减轻或解决各种异常情况

 

无损连接保持数据完整性

函数依赖保持了逻辑关系

  若要求分解保持函数依赖,一定能达到3NF,不一定达到BCNF

  既具有无损连接性,又保持函数依赖,则模式分解一定能够达到3NF

---note---

转载于:https://www.cnblogs.com/Dying39/p/5832449.html

你可能感兴趣的文章
Swift 入门之简单语法(六)
查看>>
shim和polyfill有什么区别
查看>>
Failed to load the JNI shared library “E:/2000/Java/JDK6/bin/..jre/bin/client/jvm.dll
查看>>
〖Python〗-- IO多路复用
查看>>
栈(括号匹配)
查看>>
Java学习 · 初识 面向对象深入一
查看>>
源代码如何管理
查看>>
vue怎么将一个组件引入另一个组件?
查看>>
bzoj1040: [ZJOI2008]骑士
查看>>
LeetCode 74. Search a 2D Matrix(搜索二维矩阵)
查看>>
利用SignalR来同步更新Winfrom
查看>>
反射机制
查看>>
CocoaPod
查看>>
css3实现漂亮的按钮链接
查看>>
BZOJ 1251: 序列终结者 [splay]
查看>>
云的世界
查看>>
初识DetNet:确定性网络的前世今生
查看>>
5G边缘网络虚拟化的利器:vCPE和SD-WAN
查看>>
MATLAB基础入门笔记
查看>>
【UVA】434-Matty&#39;s Blocks
查看>>