关系数据理论

    xiaoxiao2021-04-12  33

    基本概念

    一个关系模式应当是一个五元组

    R(U,D,DOM,F)

    R:关系名U:一组属性D:属性组U中属性所来自的域DDOM:属性到域的映射DOMF:属性组U上的一组数据依赖F

    数据依赖:

    函数依赖(Functional Dependency,FD)多值依赖(Multivalued Dependency,MVD)

    规范化

    函数依赖

    设R(U)是属性集U上的关系模式。X、Y是U的子集。对于R(U)的任意一个可能的关系r,r中每一个X唯一确定一个Y,称X函数确定Y或Y函数依赖于X,记作X→Y。 R中一切关系均要满足约束条件。

    X→Y,但 YX (Y不真包含于X) ,称X→Y是非平凡的函数依赖X→Y,但 YX (Y真包含于X),称X→Y是平凡的函数依赖若X→Y,则X称为这个函数依赖的决定属性组,也称为决定因素若X→Y,Y→X,则记作X←→YY不函数依赖于X如果X→Y,并且Y不函数依赖于X的任何一个真子集,则称Y对X完全函数依赖如果X→Y,但Y不完全依赖于X,则称Y对X部分函数依赖 如果X→Y,( YX ),Y→Z, ZY 当X不函数依赖于Y,则称Z对X*传递函数依赖*当Y→X,则X←→Y,称Z对X*直接函数依赖*

    设K为R< U,F> 中的属性或属性组合,若U对K完全函数依赖,则K为R的候选码,若候选码多余一个,则选定其中一个为主码。 包含在任何一个候选码中的属性成为主属性,如果整个属性是码,则成为全码。 关系模式R中,属性或属性组X并非R的码,但X是另一个关系模式的码,则称X是R的外码。 主码和外码提供了一个表示关系间联系的手段。

    范式

    不同的范式表示关系数据库满足不同程度的要求。 各种范式之间的联系:

    5NF4NFBCNF3NF2NF1NF 一个低一级范式的关系模型通过模式分解可以转换为若干个高一级范式大的关系模型的集合,这种过程就叫规范化。

    1NF

    关系模式满足每一个分量必须是不可分的数据项属于第一范式(1NF) 缺点:

    数据冗余太大更新异常插入异常删除异常

    2NF

    R1NF ,且每一个非主属性完全函数依赖于码,则 R2NF

    3NF

    每一个非主属性既不部分依赖于码也不传递依赖于码 但主属性可能存在对码的部分依赖和传递依赖

    BCNF

    所有非主属性对每一个码都是完全函数依赖所有非主属性对每一个不包含它的码,也是完全函数依赖没有任何属性完全函数依赖于非码的任何一组属性

    BCNF在函数依赖范畴内已实现彻底的分离,消除了插入和删除异常

    多值依赖

    设R(U)是属性集U上的一个关系模式。X,Y,Z是U的子集,并且Z=U-X-Y。关系模式R(U)中多值依赖X→→Y成立,当且仅当对R(U)的任意关系r,给定的一对(x,z)值,有一组Y的值,这组值仅仅决定于x值而与z值无关。

    4NF

    关系模式 R<U,F>1NF ,如果对于R的每个非平凡多值依赖X→→Y( YX ),X都含码,则称 R<U,F>4NF 。 4NF所允许的非平凡多值依赖实际上是函数依赖。 4NF中还存在连接依赖,连接依赖在关系的连接运算时才反映出来,如果消除了连接依赖,则可进一步达到5NF的关系模式。

    总结

    Created with Raphaël 2.1.0 1NF 1NF 2NF 2NF 3NF 3NF BCNF BCNF 4NF 4NF 消除非主属性对码的部分函数依赖 消除非主属性对码的传递函数依赖 消除主属性对码的部分和传递函数依赖 消除非平凡且非函数依赖的多值依赖

    ———————————————————— 摘自《数据库系统概论》(第四版)王珊、萨师煊

    转载请注明原文地址: https://ju.6miu.com/read-667197.html

    最新回复(0)