CHƢƠNG 6 : CHUẨN HÓA CƠ SỞ DỮ LIỆU
1. CÁC DẠNG CHUẨN CỦA LƢỢC ĐỒ QUANHỆ
1.2. Dạng chuẩn 2 (second normal form)
- Một lƣợc đồ quan hệ Q đạt dạng chuẩn 2 nếu Q đạt dạng chuẩn 1 và tất cả các thuộc tính không khoá của Q đều phụ thuộc đầy đủ vào khoá.
Nếu một lƣợc đồ quan hệ không đạt chuẩn 2 thì ta nói nó đạt dạng chuẩn1.
Chẳng hạn xét lƣợc đồ quan hệ Q(A,B,C,D) và phụ thuộc hàm F={AB C,D; B
D; C A}
Khoá là {A,B} và {B,C}. Do đó D là thuộc tính không khoá, A,B D không là phụ thuộc hàm đầy đủ vì có B D.
Vậy Q đạt chuẩn 1.
Ví dụ:
Xác định dạng chuẩn của lƣợc đồ quan hệ Q(GMVNHP) F={GN; GH; GP; MV; NHPM}
77 Dễ thấy khoá của Q là G.
Thuộc tính không khoá là M,V,N,H,P.
Do các phụ thuộc hàm G M; G V; G N; G H; G P là các phụ thuộc hàm đầy đủ, nên lƣợc đồ quan hệ Q đạt dạng chuẩn 2
Thuật toán kiểm tra dạng chuẩn 2
Vào: lƣợc đồ quan hệ Q, tập phụ thuộc hàm F
Ra: khẳng định Q đạt chuẩn 2 hay không đạt chuẩn 2. Bƣớc 1: Tìm tất cả khóa của Q
Bƣớc 2: Với mỗi khóa K, tìm bao đóng của tất cả tập con thật sự S của K. Bƣớc 3: Nếu có bao đóng S+
chứa thuộc tính không khóa thì Q không đạt chuẩn 2 Ngƣợc lại thì Q đạt chuẩn 2
Ví dụ: Cho lƣợc đồ quan hệ Q(A,B,C,D) và tập phụ thuộc hàm
F={ABC; BD; BCA}. Hỏi Q có đạt chuẩn 2 không?
Giải:
TN={B}, TG={AC}
Xi (TN Xi) (TN Xi)+ Siêu khóa Khóa
B BD
A AB ABCD AB AB
C BC ABCD BC BC
AC ABC ABCD ABC
Khóa là K1=AB và K2=BC. Ta thấy B K1, BD, D là thuộc tính không khóa ị thuộc tính không khóa không phụ thuộc đầy đủ vào khóa Q không đạt chuẩn 2.
Ví dụ: Quan hệ sau đạt chuẩn 2.
Q(G,M,V,N,H,P) F={GM; GN; GH; GP; MV; NHPM} Ta có:
TN={G} TG={M, N, H, P}
Xi (TN Xi) (TN Xi)+ Siêu khóa Khóa
G Q+ G G M GM Q+ GM N GN Q+ GN MN GMN Q+ GMN H GH Q+ GH MH GMH Q+ GMH NH GNH Q+ GNH MNH GMNH Q+ GMNH
78 P GP Q+ GP MP GMP Q+ GMP NP GNP Q+ GNP MNP GMNP Q+ GMNP HP GHP Q+ GHP MHP GMHP Q+ GMHP NHP GNHP Q+ GNHP MNHP GMNHP Q+ GMNHP
Lƣợc đồ quan hệ Q chỉ có một khóa và khóa chỉ có một thuộc tính nên mọi thuộc tính đều phụ thuộc đầy đủ vào khóa Q đạt chuẩn 2.
Hệ quả:
- Q đạt 2NF nếu Q là 1NF và tập thuộc tính không khoá của Q bằng rỗng. - Nếu khoá của quan hệ có một thuộc tính thì quan hệ đó ít nhất đạt chuẩn 2.
Ví dụ
Q(A,B,C,D,E,H) F={A E; C D; E DH} Ta có:
TN={ACB} TG={E}
Xi (TN Xi) (TN Xi)+ SIÊU KHÓA KHÓA
ACB ABCDEH ACB ACB
E ACBE ABCDEH ACBE
khóa của Q là K = {ABC}.CK, CD, D là thuộc tính không khóa D phụ thuộc không đầy đủ vào khóa nên Q không đạt chuẩn 2.
Ví dụ: Q(ABCDEH); F={A E; C D; E DH} Dễ thấy khoá của Q là K={ABC}
D là thuộc tính không khoá. và C D, vì C là tập con thực sự của khoá nên Q không đạt dạng chuẩn 2.
1.3. Dạng chuẩn 3 (third normal form) Thuộc tính phụ thuộc bắc cầu