zoukankan      html  css  js  c++  java
  • 数据库规范化:模式分解是否具有无损连接

    什么是模式分解?

    在这里插入图片描述

    无损连接分解的测试算法

    在这里插入图片描述

    例子

    1

    举例1:已知R<U,F>,U={A,B,C},F={A→B},如下的两个分解:

    ① ρ1={AB,BC}

    ② ρ2={AB,AC}

    判断这两个分解是否具有无损连接性。

    ①因为AB∩BC=B,AB-BC=A,BC-AB=C

    所以B→A ¢F+,B→C ¢ F+

    故ρ1是有损连接。

    ② 因为AB∩AC=A,AB-AC=B,AC-AB=C

    所以A→B €F+,A→C ¢F+

    故ρ2是无损连接。

    2

    已知R<U,F>,U={A,B,C,D,E},F={A→C,B→C,C→D,DE→C,CE→A},R的一个分解为R1(AD),R2(AB),R3(BE),R4(CDE),R5(AE),判断这个分解是否具有无损连接性。

    ① 构造一个初始的二维表,若“属性”属于“模式”中的属性,则填aj,否则填bij
    在这里插入图片描述

    ② 根据A→C,对上表进行处理,由于属性列A上第1、2、5行相同均为a1,所以将属性列C上的b13、b23、b53改为同一个符号b13(取行号最小值)。

    在这里插入图片描述

    ③ 根据B→C,对上表进行处理,由于属性列B上第2、3行相同均为a2,所以将属性列C上的b13、b33改为同一个符号b13(取行号最小值)。
    在这里插入图片描述

    ④ 根据C→D,对上表进行处理,由于属性列C上第1、2、3、5行相同均为b13,所以将属性列D上的值均改为同一个符号a4。
    在这里插入图片描述

    ⑤ 根据DE→C,对上表进行处理,由于属性列DE上第3、4、5行相同均为a4a5,所以将属性列C上的值均改为同一个符号a3。

    在这里插入图片描述
    ⑥ 根据CE→A,对上表进行处理,由于属性列CE上第3、4、5行相同均为a3a5,所以将属性列A上的值均改为同一个符号a1。

    在这里插入图片描述

    ⑦ 通过上述的修改,使第三行成为a1a2a3a4a5,则算法终止。且分解具有无损连接性。

  • 相关阅读:
    php生成随机颜色代码
    终于完成了 源码 编译lnmp环境
    json_encode 中文 null
    push is not a function
    linux 搭建svn 服务器
    samba 挂载windows共享文件夹
    php 加密 解密 方法
    serialize unserialize
    CentOS Linux解决Device eth0 does not seem to be present 但是没有发现eth1
    javascript 获取视口的高度和宽度
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13308062.html
Copyright © 2011-2022 走看看