转换成BCNF的无损连接分解
算法:
例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的无损连接分解相关推荐
- 四、转换成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 ...
- 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: ...
- 3NF的无损连接和保持函数依赖的分解、BCNF的无损连接的分解
首先,需要了解3NF.BCNF范式的要求. 3NF:不存在非主属性对码的传递函数依赖或部分函数依赖. 如AB-C,A->C 码为(A,B),A,B是主属性,C是非主属性,C部分函数依赖于码,即 ...
- C# 数组内元素合并转换成以指定字符连接的字符串
string[] array = { "aa", "bb", "cc", "11", "22" }; ...
- C# 数组转换成以指定字符连接的字符串
string str = string.Join(".", array);//array为数组
- 软件设计师 - 超键、无损连接、函数依赖
1.闭包 在函数依赖集F下由α函数确定的所有属性的集合为F下α的闭包,记为α+ . 闭包算法: result:=α; while(result发生变化)dofor each 函数依赖β→γ in F ...
- PDF怎么转换成jpg图片
PDF怎么转换成jpg图片?在日常工作中,PDF文件是一种非常常用的格式类型.文件存储安全性高,可以保护用户文件的内容,文件的转换也很方便.支持多种文件类型,可自由切换.有的朋友还是比较习惯查阅图片格 ...
- mp4转换成gif怎么转?
mp4转gif,mp4转换成gif怎么转?mp4是最重要也是最常见的视频文件格式,而gif是动态图片的主要格式,有时候因为某些原因,在工作或者学习中需要将mp4视频转换成gif动图,那么你知道从何下手 ...
- 无损连接和模式分解题型
一.判别一个分解的无损连接性 方法一:无损连接定理 关系模式R(U,F)的一个分解ρ={R1<U1,F1>,R2<U2,F2>}具有无损连接的充分必要条件是: U1∩U2→U1 ...
最新文章
- ab url 带参数 测试
- 绝对路径VS相对路径
- lambda 匿名内部类_Lambda运行时内部:窥视无服务器巢穴
- php string常用函数
- 无法打开计算机的组策略,win7系统电脑本地组策略打不开无法运行的解决方法...
- 加速AI计算生态构建,华为昇腾布道西安开发者
- java链式语法_javaScript链式调用原理以及加法实现
- 很NB的发现两个linux server 开发人或者站点(back-end-facility,codeday盛大代号:小虾米)
- 22长安杯——个人赛
- 这款台灯,不仅能护眼,还能点读和互动
- teamview被限制使用的解决办法
- Linux 多个留后门姿势
- UE4 C++入门——动画蒙太奇 学习笔记
- nant_强制NAnt使用.NET Framework的特定版本进行构建和运行
- Python:利用Pillow库创建字符画
- 操作系统 图形窗口 子系统
- python商品打折问题_利用Python“解剖”双11商家打折套路
- Docker镜像和容器相关命令
- 一文读懂谷歌I/O 新硬件、Android Q及多项功能升级
- C语言 十进制转二进制补码(正负都可) 指针 初学