LaTex公式--课本例6.4-6.8 和补充习题1~6

课本P182 eg.6.4

由题意可以得出 ( S n o , C n o ) → G r a g e (Sno,Cno)\rightarrow Grage Sno,CnoGrage, S n o → S d e p t Sno \rightarrow Sdept SnoSdept, S n o → S l o c Sno \rightarrow Sloc SnoSloc,
S d e p t → S l o c Sdept \rightarrow Sloc SdeptSloc
1.求候选码
可以得出为(Sno,Cno)。
可以说是一个小规律吧:只出现在左边的一定在候选码里,只在右边出现的一定不是候选码。
2.非主属性:Sdept,Cno,Grade
3.找依赖关系
( S n o , C n o ) → G r a g e (Sno,Cno)\rightarrow Grage Sno,CnoGrage;
( S n o , C n o ) → S d e p t (Sno,Cno) \rightarrow Sdept (Sno,Cno)Sdept但是 S n o → S d e p t Sno \rightarrow Sdept SnoSdept,存在部分函数依赖
同理, ( S n o , C n o ) → S l o c (Sno,Cno) \rightarrow Sloc (Sno,Cno)Sloc但是 S n o → S l o c Sno \rightarrow Sloc SnoSloc,存在部分函数依赖
所以,最终S-L-C 是第一范式。

课本P184 eg.6.5

1.确定码为Cno。
2.非主属性:Cname和Pcno
3.由于候选码只有一个,所以不存在部分函数依赖关系;
而且,传递依赖关系也不成立,Cname与Pcno没有函数依赖关系,综上两点,可以确定为第三范式。
4.由于Cno为唯一的决定因素,所以为BCNF。

课本P184 eg.6.6

很明显,Sno和Sname分别可以决定剩余的所有。
1.候选码Sno,Sname
2.非主属性:Sage,Sdept
3.不存在部分函数依赖,同时也没有传递依赖(注意 S n a m e → S n o Sname \rightarrow Sno SnameSno S n o → S n a m e Sno \rightarrow Sname SnoSname,不满足函数依赖的条件)(其实是 S n a m e → s n o Sname \rightarrow sno Snamesno S n o → s n a m e Sno \rightarrow sname Snosname
4.可以确定Sno和Sname为决定因素,无其他决定因素,所以为BCNF。

课本P185 eg.6.7

1.候选码为(S,J),(J,P),两个都可以作为候选码
2.无主属性
3.无部分依赖和传递依赖的关系。可确定为第三范式。
4.除(S,J),(J,P)外无其他决定因素,所以为BCNF。

课本P185 eg.6.8

1.(S,J),(S,T)为候选码。
2.无主属性
3.无依赖关系,可确定为第三范式
4.由于 T → J T \rightarrow J TJ,T是决定因素,但T不包含码,所以不是BCNF。是第三范式
解决方案:
可分解为ST(S,T)和TJ(T,J),以T为中间枢纽,则两个均是BCNF。

总结:先找候选码,再确定非主属性,再判断函数依赖关系得出第几范式。
只在左侧出现的一定在候选码里,只在右侧出现的一定不是候选码。

补充习题:

一.

Y(X1,X2,X3,X4)
(X1,X2)→X3
X2→X4
侯选码?
属于第几范式?

解:
(1)候选码:(X1,X2)
(2)非主属性:X3,X4
(3) ( X 1 , X 2 ) → X 3 (X1,X2) \rightarrow X3 X1,X2X3成立,但是 ( X 1 , X 2 ) → X 4 (X1,X2) \rightarrow X4 X1X2X4 X 2 → X 4 X2 \rightarrow X4 X2X4,存在部分函数依赖,所以属于1NF

二.

R(A,B,C,D)
F={AB→D,AC→BD,B→C}
侯选码?
最高属于第几范式?

解:
(1)候选码:(A,B),(A,C)
(2)非主属性:D
(3)不存在部分函数依赖或传递函数依赖,为第三范式
(4)不属于BCNF,因为B→C,B不包含码
最高为3NF
【注】:候选码中一定有A,一定没有D,因为A只在左侧出现,D只在右侧出现。

三.

R(X,Y,Z,W)
F={Y←→W,XY→Z}
侯选码?
最高属于第几范式?
(1)候选码:(X,Y),(X,W)
(2)非主属性:Z
(3)只有Z,且Z完全依赖于码,是第二范式
(4)无传递函数依赖,是第三范式
(5)由于 W → Y W \rightarrow Y WY,但是W不含主码,所以不是BCNF
最高为3NF

四.

R(A,B,C,D,E) F={A→B,CE→A,E→D}
1 求候选码
2 最高属于第几范式,为什么?
3 分解到3NF
解:
(1)候选码:(C,E)
(2) 由于 ( C , E ) → D (C,E) \rightarrow D CED E → D E \rightarrow D ED ,存在部分函数依赖
所以最高属于1NF
(3)分解为2NF:
R1(A,B,C,E),R2(D,E)
因为 CE→A(且A∕→CE),A→B ,存在传递函数依赖
分解为:R1(A,C,E),R2(A,B),R3(D,E)
【注】:分解为3NF时,分解出 A → B A \rightarrow B AB

五.

R(商店编号,商品编号,数量,部门编号,负责人)
每个商店的每种商品只在一个部门销售,
每个商店的每个部门只有一个负责人
每个商店的每种商品只有一个库存数量
1 求候选码
2 R已达第几范式?为什么?
3 若不属于3NF,分解成3NF
解:
(1)候选码:(商店编号,商品编号)
(2)R已经是2NF,不存在部分函数依赖
(商店编号,商品编号)→(商店编号,部门编号)(反之不成立)
(商店编号,部门编号) →负责人,所以存在传递函数依赖
(3)分解为3NF
由于对于每个商店,每个部门只有一个负责人,存在传递函数依赖,关键应该是(商店编号, 部 门 编 号 → 负 责 人 部门编号 \rightarrow 负责人
R1(商店编号,商品编号,数量,部门编号)
R2(商店编号,部门编号,负责人)

六.

R(A,B,C,D,E,F) F={A→C,AB→D,C→E,D→BF}
1 写出关键字
2 分解到2NF
3 分解到3NF
4 分解到BCNF

解:
(1)候选码:(A,B),(A,D)
(2)由于 A B → A AB \rightarrow A ABA, A → C A \rightarrow C AC
所以R1(A,C,E)(要把E放在R1,因为 C → E C \rightarrow E CE
A D → F AD \rightarrow F ADF D → F D \rightarrow F DF
所以R2(D,F)
剩下的:R3(A,B,D)
R1(A,C,E),R2(D,F),R3(A,B,D)
(3)由于 A → C A \rightarrow C AC C → E C \rightarrow E CE存在传递函数依赖,所以将R1分为(A,C)和(C,E)
R1(A,C)R2(C,E),R3(D,F),R4(A,B,D)
(4) D → B D \rightarrow B DB,由于D不包含码,所以应使决定因素中无D
将(A,B,D)分为(A,B)(B,D)
R1(A,C)R2(C,E),R3(D,F),R4(A,B),R5(B,D)

LaTex公式

X → Y X \rightarrow Y XY
X ↛ Y X \nrightarrow Y XY
X ↛ Y X \not\rightarrow Y XY
X ⟶ F Y X \overset F \longrightarrow Y XFY
X ⟶ P Y X \overset P \longrightarrow Y XPY
X ⟶ 传 递 Y X \overset {传递} \longrightarrow Y XY
X ⟶ F Y X \stackrel {F} {\longrightarrow} Y XFY

$X \rightarrow Y$ 
$X \nrightarrow Y$
$X \not\rightarrow Y$
$X \overset F \longrightarrow Y$
$X \overset P \longrightarrow Y$
$X \overset {传递} \longrightarrow Y$
$X \stackrel {F} {\longrightarrow} Y$

如果需要向左的箭头,直接将right改为left即可

X ⊂ Y X \subset Y XY X ⊄ Y X \not\subset Y XY
X ⊆ Y X \subseteq Y XY X ⊈ Y X \nsubseteq Y XY

$X \subset Y$ $X \not\subset Y$
$X \subseteq Y$  $X \nsubseteq Y$ 

交换元素可以得到相反的结果。

总结:

掌握还不熟练,还需要多理解哇,函数依赖关系。补充习题的3~6题有难度哇。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值