关系模式设计之规范形式

编程入门 行业动态 更新时间:2024-10-08 23:00:11

关系模式设计之规范<a href=https://www.elefans.com/category/jswz/34/1770517.html style=形式"/>

关系模式设计之规范形式

一、关系的第一范式和第二范式

1.1 关系的1NF

1.1.1 概念

  • 若关系模式中关系的每个分量都是不可分的数据项(值,原子),则称属于第一范式,记为:
  • 示例

1.1.2 不符合1NF的处理

  • 将非1NF转换为1NF情况
  • 示例

1.2 关系的2NF

1.2.1 概念

  • 若且U中的每一非主属性完全函数依赖于候选键,则称属于第二范式,记为:

1.2.2 练习

二、关系的第3范式和Boyce-Codd范式

2.1 关系的3NF

2.1.1概念

  • 若且R中不存在这样的情况:候选键X,属性组和非主属性A,且,,,,使得,成立。满足以上条件则称属于第三范式,记为:。
  • 第三范式消除了非主属性对候选键的传递依赖

2.1.2 练习

  • 关系模式设计如满足第3范式,则一定能满足第2范式;反之不然。

2.2 关系的BCNF

2.2.1 概念

  • 若,若对于任何(或),当(或)时,X比含有候选键,则称属于Boyce-Codd范式,记为:。
  • 示例

  • [定理]若,则。
  • 有传递依赖额或者说不满足3NF的,也一定不满足BCNF。
  • 关系模式分解成BCNF

三、多值依赖

3.1 多值依赖的定义

  • 对,设,若对的任一关系r,若元组,,,则必有使得:
  • 均成立,则称Y多值依赖于X,或说X多值决定Y,记作

3.2 多值依赖的特性

  • 直观的,对于X给定值,Y有一组值与之对应(0或n个)且这组Y值不以任何方式于U-X-Y中属性值相联系,有
  • 若交换t,s的Y值而得到的新元组仍在r中,则
  • X,Y不必不相交,u,v可以与t,s相同
  • 函数依赖是多值依赖的特例
  • 令,有,若,则必有​​​​​​​

3.3 多值依赖的公理

3.3.1 多值依赖的Armstrong公理

  • [Armstrong's Axioms A4~A8]关于多值依赖的公理,设,对于的任一关系r,有以下规则:

    • [A4]多值依赖互补律或对称性:若,则

    • [A5]多值依赖的增广律:若且,则

    • [A6]多值依赖传递律:若,

    • [A7]若,则

    • [A8]若,且对于某个与Y不相交的W有,,则有​​​​​​​

3.3.2 关于多值依赖的推论

  • [引理7]:由Armstrong's Axioms可推出如下结论。
    • 多值依赖合并律:若且,则
    • 多值依赖伪传递律:若且,则
    • 混合伪传递律:若,,则
    • 多值依赖分解律:若,则,,。

四、关系的第4范式和弱第4范式

4.1 关系的4NF

  • 设,D是其上的一组依赖(函数依赖,多值依赖),对任意,若,必有X为超键,则称满足第四范式,记为:。
  • 第四范式消除了非主属性对候选键以外属性的多值依赖。也就是说,如果存在多值依赖,则一定依赖于候选键
  • [定理]若,则必有。
  • [定理]若R上仅存在函数依赖,则若有即有,反之,若,也有​​​​​​​

4.2 关系的W4NF

  • 设,若R上的任何互补多值依赖和中必有一个是函数依赖,则称R是弱第四范式的,记为
  • 注:W4NF不一定是BCNF, 反之亦然。

更多推荐

关系模式设计之规范形式

本文发布于:2024-03-23 19:23:19,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1741873.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:形式   模式   关系

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!