Join
分解和無損連接
如果有人問我以下問題,我將不勝感激。
考慮具有以下函式依賴關係的關係 R(A, B, C, D, E):
A, B → C D, E → C B → D
i) 分解 R 使其處於第二範式。
問題的第二部分:ii)假設 R 填充了以下數據:
| A | B | C | D | E | | a1 | b1 | c1 | d1 | e1 | | a2 | b1 | c2 | d1 | e2 | | a2 | b2 | c1 | d3 | e2 |
證明您的 2NF 分解對於連接是無損的。為此,在分解的表中生成一個連接表達式,並在上面的原始表中顯示其執行結果。
謝謝。
我想通了,並在講座中得到了證實,希望這對其他人有幫助:
一世)
鍵是 {A,B,E}。
這意味著 FD1 和 FD3 都是部分鍵 - 但請注意 FD2 不是,因為 {D,E} 不是部分鍵。分解為每個 FD 創建一個表,為 PK FD 創建一個表:
R1(A,B,E) R2(A,B,C) R3(B,D)
ii) 使用上述我們可以創建以下表格:
`R1 R2 R3` | A | B | E | | A | B | C | | B | D | | a1 | b1 | e1 | | a1 | b1 | c1 | | b1 | d1 | | a2 | b1 | e2 | | a2 | b1 | c2 | | b2 | d3 | | a2 | b2 | e2 | | a2 | b2 | c1 |
加入 R1 和 R2 給出:
R1R2 R3 | A | B | E | C | | B | D | | a1 | b1 | e1 | c1 | | b1 | d1 | | a2 | b1 | e2 | c2 | | b2 | d3 | | a2 | b2 | e2 | c1 |
將 R1R2 與 R3 連接起來:
| A | B | E | C | D | | a1 | b1 | e1 | c1 | d1 | | a2 | b1 | e2 | c2 | d1 | | a2 | b2 | e2 | c1 | d3 |
這等於:
| A | B | C | D | E | | a1 | b1 | c1 | d1 | e1 | | a2 | b1 | c2 | d1 | e2 | | a2 | b2 | c1 | d3 | e2 |
因此,分解對於連接是有損失的。