Google Search Box

自訂搜尋

Saturday, July 3, 2010

Re: [課業] 資料庫/正規化及推導候選鍵

作者: nonsweet (不甜) 站內: Examination
標題: Re: [課業] 資料庫/正規化及推導候選鍵
時間: Sat Jul 3 21:20:10 2010

※ 引述《nonsweet (不甜)》之銘言:
: R1(A, B, C, D, E, F)
: FD有 {A, B, C}→E;{A, B, C}→D;{A, B, C}→F;D→E;{A, B}→C

: R2(G, H, I, J, K)
: FD有 {G, H}→I;{G, H}→J;{G, H}→K;H→G

: R3(P, Q, S, T)
: {P, Q}→T;{P, Q}→S;T→Q

: R4(T, U, V, X, Y, Z)
: {T, U, V}→X;{T, U, V}→Y;{T, U}→Z

: (二) R1、R2、R3、R4分別不滿足那個正規化(Normal Form)?
: (三) R1、R2、R3、R4分別應如何更改,使之滿足BCNF(Boyce-Codd Normal Form)?

自問自答一下,有錯請指正:

R1候選鍵:{A, B}
R2候選鍵:{H}
R3候選鍵:{P, Q}和{P, T} (候選鍵不是唯一,且具有共同屬性)
R4候選鍵:{T, U, V}

1. R1中不符合之FD:{A, B, C}→E;{A, B, C}→D;{A, B, C}→F;D→E。
合併不符合規定的FD:{A, B, C, D}→{D, E, F}
利用Heath's定理分割表格:
R11(A, B, C),主鍵為{A, B}
R12(A, B, C, D, E, F),此表格仍不符合BCNF,不符合之FD為D→E,因此再分割成:
R121(A, B, C, D, F),主鍵為{A, B, C}。
R122(D, E),主鍵為{D}。

2. R2中不符合之FD:{G, H}→I;{G, H}→J;{G, H}→K。
合併不符規定之FD:{G, H}→{I, J, K}
利用Heath's定理分割表格:
R21(G, H),主鍵為{H}。
R22(G, H, I, J, K),主鍵為{G, H}。

3. R3中不符合之FD:T→Q。
利用Heath's定理分割表格:
R31(P, T, S),主鍵為{P, T}。
R32(T, Q),主鍵為{T}。

4. R4中不符合之FD:{T, U}→Z。
利用Heath's定理分割表格:
R41(T, U, V, X, Y),主鍵為{T, U, V}。
R42(T, U, Z),主鍵為{T, U}。

No comments:

Post a Comment