算法:

例1: 关系模式R<U,F>,其中U={C,T,H,R,S,G},

F={CS→G,C→T,TH→R,HR→C,HS→R},将其分解成BCNF并保持无损连接。

例2:关系模式R<U,F>,其中:U={A,B,C,D,E},F={A→C,C→D,B→C,DE→C,CE→A},将其分解成BCNF并保持无损连接。

解:

① 令ρ={R(U,F)}。

② ρ中不是所有的模式都是BCNF,转入下一步。

③ 分解R:R上的候选关键字为BE(因为所有函数依赖的右边没有BE)。考虑A→C函数依赖不满足BCNF条件(因A不包含候选键BE),将其分解成R1(AC)、R2(ABDE)。计算R1和R2的最小函数依赖集分别为:F1={A→C},F2={A→D,B→D,DE→D,BE→A}。其中A→D是由于R2中没有属性C且A→C,C→D;B→D是由于R2中没有属性C且B→C,C→D;DE→D是由于R2中没有属性C且DE→C,C→D;BE→A是由于R2中没有属性C且B→C,CE→A。又由于DE→D是蕴含关系,可以去掉,故F2={A→D,B→D,BE→A}。

分解R2:R2上的候选关键字为BE。考虑B→D函数依赖不满足BCNF条件,将其分解成R21(BD)、R22(ABE)。计算R21和R22的最小函数依赖集分别为:F21={B→D},F22={BE→A}。(考虑A→D函数依赖的话,就分解为R21(AD)、R22(ABE) )

由于R22上的候选关键字为BE,而F22中的所有函数依赖满足BCNF条件。故R可以分解为无损连接性的BCNF如:ρ={R1(AC),R21(BD),R22(ABE)}

原文:https://blog.csdn.net/ristal/article/details/6652020

转换成BCNF的无损连接分解相关推荐

  1. 四、转换成BCNF的保持无损连接的分解

    转换成BCNF的保持无损连接的分解 算法1: 例3: 关系模式R<U,F>,其中U={C,T,H,R,S,G}, F={CS→G,C→T,TH→R,HR→C,HS→R},将其分解成BCNF ...

  2. bcnf分解算法_【数据库】转换成BCNF的保持无损连接的分解

    转换成BCNF的保持无损连接的分解 算法1: 例3:关系模式R,其中U={C,T,H,R,S,G}, F={CS→G,C→T,TH→R,HR→C,HS→R},将其分解成BCNF并保持无损连接. 例4: ...

  3. 3NF的无损连接和保持函数依赖的分解、BCNF的无损连接的分解

    首先,需要了解3NF.BCNF范式的要求. 3NF:不存在非主属性对码的传递函数依赖或部分函数依赖. 如AB-C,A->C  码为(A,B),A,B是主属性,C是非主属性,C部分函数依赖于码,即 ...

  4. C# 数组内元素合并转换成以指定字符连接的字符串

    string[] array = { "aa", "bb", "cc", "11", "22" }; ...

  5. C# 数组转换成以指定字符连接的字符串

    string  str = string.Join(".", array);//array为数组

  6. 软件设计师 - 超键、无损连接、函数依赖

    1.闭包 在函数依赖集F下由α函数确定的所有属性的集合为F下α的闭包,记为α+ . 闭包算法: result:=α; while(result发生变化)dofor each 函数依赖β→γ in F ...

  7. PDF怎么转换成jpg图片

    PDF怎么转换成jpg图片?在日常工作中,PDF文件是一种非常常用的格式类型.文件存储安全性高,可以保护用户文件的内容,文件的转换也很方便.支持多种文件类型,可自由切换.有的朋友还是比较习惯查阅图片格 ...

  8. mp4转换成gif怎么转?

    mp4转gif,mp4转换成gif怎么转?mp4是最重要也是最常见的视频文件格式,而gif是动态图片的主要格式,有时候因为某些原因,在工作或者学习中需要将mp4视频转换成gif动图,那么你知道从何下手 ...

  9. 无损连接和模式分解题型

    一.判别一个分解的无损连接性 方法一:无损连接定理 关系模式R(U,F)的一个分解ρ={R1<U1,F1>,R2<U2,F2>}具有无损连接的充分必要条件是: U1∩U2→U1 ...

最新文章

  1. Java后端职业规划,附学习笔记+面试整理+进阶书籍
  2. 【错误记录】解压 Linux 内核报错 ( Can not create symbolic link : 客户端没有所需的特权 | Windows 中配置 7z 命令行执行解压操作 )
  3. Canal解析数据报错:column size is not match for table xxxx 59 vs 57
  4. 『ACM C++』 PTA 天梯赛练习集L1 | 016-017
  5. 记录 spring 使用@Value获取properties文件中的属性值
  6. Red Hat Enterprise MRG 2.0 Installation And Configuration Guide
  7. github设置中文_【Github】100+ Chinese Word Vectors 上百种预训练中文词向量
  8. CCNA-第三篇-OSI模型-上
  9. linux——select、poll、epoll
  10. Java Collections工具类
  11. 六元均匀直线阵的各元间距为_小间距led显示屏的封装方式有哪些?本文带你了解!...
  12. boot客户管理系统源码_「计算机毕设」基于SpringBoot开发的仓库管理系统
  13. ANSYS之翼型NACA4412流场计算系列:Profili、ICEM CFD、Fluent
  14. 小程序使用wxs处理手机号
  15. RGB 透明度 对应代码
  16. 推荐几本经济金融类的图书
  17. 颜色的前世今生15·CMYK系统(原色的选择)
  18. 微软天下行 豪侠汤山会 现场纪实
  19. Java语言程序设计与数据结构(基础篇)梁勇第一章书中例题
  20. Acwing4269. 校庆

热门文章

  1. python发红包(转载)
  2. linux找出已经删除但磁盘空间未释放的大文件并清空
  3. JSP停车场车位管理系统myeclipse开发oracle数据库BS模式java编程网
  4. spring的Webflux
  5. 【023】Springboot+vue+mysql员工考勤管理系统(多角色登录、请假、打卡)(含源码、数据库、运行教程)
  6. linux下文件夹归置方式
  7. kali工具Crunch
  8. Spark 持久化(cache和persist的区别)
  9. HTML5系列代码:设置滚动条
  10. 手把手教你开发基于深度学习的人脸识别【考勤/签到】系统