永发信息网

转换成3NF的保持函数依赖的分解

答案:3  悬赏:60  手机版
解决时间 2021-03-26 20:28
转换成3NF的保持函数依赖的分解
最佳答案
给你举一个简单的例子吧。关系模式R,其中U={A,B,C,D},F={A→B,B→D,A→D,B→C}

你看F中有A→B,B→D,根据传递性的原则是不是可以得出A→D,所以本F中的A→D就是多余的函数依赖,求最小函数依赖的过程就是将这种多余的函数依赖去除的过程。希望能够帮助你。
全部回答
给你举一个简单的例子吧。关系模式R,其中U={A,B,C,D},F={A→B,B→D,A→D,B→C}
你看F中有A→B,B→D,根据传递性的原则是不是可以得出A→D,所以本F中的A→D就是多余的函数依赖,求最小函数依赖的过程就是将这种多余的函数依赖去除的过程。希望能够帮助你。
算法:
ρ={R1,R2,...,Rk}是关系模式R的一个分解,U={A1,A2,...,An},F={FD1,FD2,...,FDp},并设F是一个最小依赖集,记FDi为Xi→Alj,其步骤如下:
① 对R的函数依赖集F进行极小化处理(处理后的结果仍记为F);
② 找出不在F中出现的属性,将这样的属性构成一个关系模式。把这些属性从U中去掉,剩余的属性仍记为U;
③ 若有X→A F,且XA=U,则ρ={R},算法终止;
④ 否则,对F按具有相同左部的原则分组(假定分为k组),每一组函数依赖Fi所涉及的全部属性形成一个属性集Ui。若Ui Uj(i≠j),就去掉Ui。由于经过了步骤②,故
,于是构成的一个保持函数依赖的分解。并且,每个Ri(Ui,Fi)均属于3NF且保持函数依赖。

例1:关系模式R,其中U={C,T,H,I,S,G},F={CS→G,C→T,TH→I,HI→C,HS→I},将其分解成3NF并保持函数依赖。
解:根据算法进行求解
(一)计算F的最小函数依赖集
① 利用分解规则,将所有的函数依赖变成右边都是单个属性的函数依赖。由于F的所有函数依赖的右边都是单个属性,故不用分解。
② 去掉F中多余的函数依赖
A.设CS→G为冗余的函数依赖,则去掉CS→G,得:
F1={C→T,TH→I,HI→C,HS→I}
计算(CS)F1+:
设X(0)=CS
计算X(1):扫描F1中各个函数依赖,找到左部为CS或CS子集的函数依赖,找到一个C→T函数依赖。故有X(1)=X(0)∪T=CST。
计算X(2):扫描F1中的各个函数依赖,找到左部为CST或CST子集的函数依赖,没有找到任何函数依赖。故有X(2)=X(1)。算法终止。
(CS)F1+= CST不包含G,故CS→G不是冗余的函数依赖,不能从F1中去掉。
B.设C→T为冗余的函数依赖,则去掉C→T,得:
F2={CS→G,TH→I,HI→C,HS→I}
计算(C)F2+:
设X(0)=C
计算X(1):扫描F2中的各个函数依赖,没有找到左部为C的函数依赖。故有X(1)=X(0)。算法终止。故C→T不是冗余的函数依赖,不能从F2中去掉。
C.设TH→I为冗余的函数依赖,则去掉TH→I,得:
F3={CS→G,C→T,HI→C,HS→I}
计算(TH)F3+:
设X(0)=TH
计算X(1):扫描F3中的各个函数依赖,没有找到左部为TH或TH子集的函数依赖。故有X(1)=X(0)。算法终止。故TH→I不是冗余的函数依赖,不能从F3中去掉。
D.设HI→C为冗余的函数依赖,则去掉HI→C,得:
F4={CS→G,C→T,TH→I,HS→I}
计算(HI)F4+:
设X(0)=HI
计算X(1):扫描F4中的各个函数依赖,没有找到左部为HI或HI子集的函数依赖。故有X(1)=X(0)。算法终止。故HI→C不是冗余的函数依赖,不能从F4中去掉。
E.设HS→I为冗余的函数依赖,则去掉HS→I,得:
F5={CS→G,C→T,TH→I,HI→C}
计算(HS)F5+:
设X(0)=HS
计算X(1):扫描F5中的各个函数依赖,没有找到左部为HS或HS子集的函数依赖。故有X(1)=X(0)。算法终止。故HS→I不是冗余的函数依赖,不能从F5中去掉。即:F5={CS→G,C→T,TH→I,HI→C,HS→I}
③ 去掉F5中各函数依赖左边多余的属性(只检查左部不是单个属性的函数依赖)
没有发现左边有多余属性的函数依赖。故最小函数依赖集为:。。。。。。。。。。。。。。
F={CS→G,C→T,TH→I,HI→C,HS→I}
(二)由于R中的所有属性均在F中都出现,所以转下一步。
(三)对F按具有相同左部的原则分为:R1=CSG,R2=CT,R3=THI,R4=HIC,R5=HSI。所以ρ={R1(CSG),R2(CT),R3(THI),R4(HIC),R5(HSI)}。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎么用卡纸做相框
给ABC猜D是什么的游戏?
他们看起来很像.英语怎样表达
单选题下列作品从体裁上看不同于其他三项的一
大蒜后面长须状物能吃吗?
王烁是不是扮演电视剧相思树里面的萧小朴
口技和虞初续志课文有什么异同
合伙生意,对方要求利润全得,怎么办!
我家新房冬天装修好的,放了两个月但没怎么通
该怎么做呢?
尼康D90怎么选择对焦点?
圆桌吃饭哪里为上啊?要是我级别最低应该怎么
我是信鸽协会会员,面临拆迁,信鸽怎么补偿?
中介看了同一个房源,选了中介费低的,另一家
象棋中,一马可以把对面将军吗?
推荐资讯
魅族 vivo oppo哪个好 最新
电脑设置为待机后,怎么才能恢复正常使用?
汽车停了两天两夜,行车记录仪会一直工作吗
《辛丑条约》签订后,中国半殖民地半封建社会
代码共享的介绍
直角三角形中平行于任意直边的线与另一条直边
米米田合起来是什么字
理性看待LPL真的还有希望夺得S赛冠军吗
没精打采的采是什么意思
香菜搭着冰淇淋吃,见过吗
31x87o十13x31o用简便方法写出算式
有没有大指,汉兰达,新唐做选择的呢
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?