第一題:
在資料表規劃過程中,常須施以“正規化”(normalization)以降低資料重複性以及避免資料
更新異常現象。假設某資料表屬性欄位(A ~ J)間,存在的功能相依性(functional dependency,
FD)如下列四項,請回答下列問題:
1. C → {B}
2. G → {H, J}
3. A → {E, F, I}
4. A+B → {C, D, E, F, G, H, I, J}
(二)承第(一)小題,執行正規化程序,使分解後各表可滿足“第三正規化格式”(3NF)。
【8 分】
要將資料表分解到第三正規化形式(3NF),我們首先需要了解資料表的所有功能相依性,然後逐步分解資料表,直到所有表格都滿足3NF的條件。3NF的主要條件包括:
我們從給定的功能相依性出發,執行以下步驟:
找出候選鍵: 根據給定的功能相依性,我們可以推斷出候選鍵:
找出分解: 根據功能相依性,我們可以將資料表分解如下:
檢查和分解以滿足3NF:
檢查各個表格是否滿足3NF。
?1(?,?)R1(C,B):
?2(?,?,?)R2(G,H,J):
?3(?,?,?,?)R3(A,E,F,I):
?4(?,?,?,?,?,?,?,?,?,?)R4(A,B,C,D,E,F,G,H,I,J):
將 ?4R4 進一步分解:
最終分解後的表格如下:
這樣,我們得到了滿足3NF的分解方案。