Bài giảng cơ sở dữ liệu chương 5 dạng chuẩn và chuẩn hóa

29 460 0
Bài giảng cơ sở dữ liệu   chương 5  dạng chuẩn và chuẩn hóa

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CƠ SỞ DỮ LIỆU ( Databases ) Chương 5: Dạng chuẩn Chuẩn hóa bangtqh@utc2.edu.vn Nội dung Dạng chuẩn Chuẩn hóa lược đồ CSDL Bài tập bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1 Dạng chuẩn Chuẩn hóa gì? – Chuẩn hóa kỹ thuật dùng để tạo tập quan hệ có đặc điểm mong muốn dựa vào yêu cầu liệu enterprise – Chuẩn hóa cách tiếp cận từ lên (bottom-up approach) để thiết kế CSDL, mối liên hệ thuộc tính Mục đích chuẩn hóa – Loại bỏ bất thường quan hệ để có quan hệ có cấu trúc tốt hơn, nhỏ Quan hệ có cấu trúc tốt (well-structured relation): – Là quan hệ có dư thừa liệu tối thiểu cho phép người dùng thêm, sửa, xóa mà không gây mâu thuẫn liệu bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1.1.Sự dư thừa liệu Sự phụ thuộc thuộc tính gây dư thừa – Ví dụ: • Điểm môn học • Địa zip code Điểm trung bình xếp loại MAPHG TRPHG NG_NHANCHUC MANV TENNV HONV … Nghien cuu 333445555 05/22/1988 333445555 Tung Nguyen … Dieu hanh 987987987 01/01/1995 987987987 Hung Nguyen … Quan ly 888665555 06/19/1981 888665555 Vinh Pham … TENPHG bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1.1.Sự dư thừa liệu (tt) Thuộc tính đa trị lược đồ ER lược đồ quan hệ nhiều số liệu Ví dụ: NHANVIEN(TENNV, HONV, NS,DCHI,GT,LUONG, BANGCAP) TENNV HONV NS DCHI GT LUONG BANGCAP Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 Trung học Nhu Le 06/20/1951 291 HVH QPN Nu 43000 Trung học Nhu Le 06/20/1951 291 HVH QPN Nu 43000 Đại học Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 Thạc sỹ bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1.1.Sự dư thừa liệu (tt) Sự dư thừa dị thường – Thao tác sửa đổi: cập nhật tất giá trị liên quan – Thao tác xóa: người cuối đơn vị thông tin đơn vị – Thao tác thêm: MAPHG TRPHG NG_NHANCHUC MANV Nghien cuu 333445555 05/22/1988 Dieu hanh 987987987 Quan ly 888665555 TENPHG bangtqh@utc2.edu.vn TENNV HONV … 333445555 Tung Nguyen … 01/01/1995 987987987 Hung Nguyen … 06/19/1981 888665555 Vinh Pham … Chương - Dạng chuẩn chuẩn hóa 5.1.1.Sự dư thừa liệu (tt) Các giá trị không xác định – Đặt thuộc tính Trưởng phòng vào quan hệ NHANVIEN thay vào quan hệ PHONGBAN Các giả – Khi sử dụng phép nối bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1.1.Sự dư thừa liệu (tt) Một số quy tắc thiết kế CSDL quan hệ – NT1: Rõ ràng mặt ngữ nghĩa, tránh phụ thuộc thuộc tính với – NT2: Tránh trùng lặp nội dung đảm bảo tránh dị thường thao tác cập nhật liệu • Phải có số thao tác thêm cập nhật vào lược đồ quan hệ, gây sai hỏng trường hợp xóa bỏ – NT3: Tránh sử dụng thuộc tính có nhiều giá trị Null • Khó thực phép nối kết hợp – NT4: Thiết kế lược đồ quan hệ cho chúng nối với điều kiện thuộc tính khoá khoá theo cách đảm bảo không sinh “giả” bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1.2 Các dạng chuẩn Mỗi dạng chuẩn tập điều kiện lược đồ nhằm đảm bảo tính chất (liên quan tới dư thừa bất thường cập nhật) Chuẩn hóa liệu: trình phân tích lược đồ quan hệ dựa FD khóa để đạt – Cực tiểu dư thừa – Cực tiểu phép cập nhật bất thường bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 5.1.2 Các dạng chuẩn (tt) Phân loại – – – – – Dạng chuẩn (1NF – first normal form) Dạng chuẩn (2NF – second normal form) Dạng chuẩn (3NF – third normal form) Dạng chuẩn BCNF (Boyce-Codd normal form) Dạng chuẩn 4NF bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 10 Dạng chuẩn Định nghĩa: quan hệ R gọi dạng 1NF miền giá trị thuộc tính chứa giá trị nguyên tố đơn, ko phân chia được) giá trị thuộc tính giá trị đơn lấy từ miền giá trị Ví dụ PHONGBAN( MaPHG, TenPHG, DDIEM) Thuộc tính đa trị PHONGBAN(MaPHG, TenPHG) DDIEM_PHG(MaPHG, DDIEM) bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 11 Dạng chuẩn (tt) Table (Key1, (Key2, (Key3, ) ) ) Table1(Key1, ) TableA (Key1,Key2 (Key3, ) ) Table2 (Key1, Key2 ) Table3 (Key1, Key2, Key3, ) Lược đồ gốc: Table (Key1, aaa (Key2, bbb (Key3, ccc .) ) ) Để thỏa mãn 1NF thực – Table1(Key1, aaa ) – Table2(Key1, Key2, bbb ) – Table3(Key1, Key2, Key3, ccc .) bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 12 Dạng chuẩn (tt) Vấn đề tồn 1NF Xét lược đồ DDIEM_PHG(MaPHG, DDIEM) – Vẫn bị lặp lại – Ẩn chứa phụ thuộc hàm phận bangtqh@utc2.edu.vn MAPHG DIADIEM TP HCM HA NOI VUNGTAU NHATRANG TP HCM Chương - Dạng chuẩn chuẩn hóa 13 Dạng chuẩn Phụ thuộc hàm đầy đủ: Một phụ thuộc hàm X → Y phụ thuộc hàm đầy đủ loại bỏ thuộc tính A khỏi X phụ thuộc hàm không ∀ A, A ∈ X, (X – {A}) → Y : sai Phụ thuộc hàm phận: Một phụ thuộc hàm X → Y phụ thuộc phận bỏ thuộc tính A∈ X, khỏi X phụ thuộc hàm đúng, điều có nghĩa với ∃A∈ X, (X – {A}) → Y bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 14 Dạng chuẩn (tt) 2NF: – Thỏa mãn 1NF – Phụ thuộc hàm đầy đủ vào khóa Với quan hệ có thuộc tính khóa đơn ko phải xét Chỉ kiểm tra lược đồ có chứa phụ thuộc hàm phận bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 15 Dạng chuẩn (tt) Ví dụ Phụ thuộc vào MaNV, MaDA NV_DA(MaNV, MaDA, Sogio, TenDA, DDiemDA) Chỉ phụ thuộc vào MaDA bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 16 Dạng chuẩn (tt) Ví dụ Phụ thuộc vào MaNV, MaDA NV_DA(MaNV, MaDA, Sogio, TenDA, DDiemDA) Chỉ phụ thuộc vào MaDA NV_DA(MaNV, MaDA, Sogio) DUAN(MaDA, TenDA) bangtqh@utc2.edu.vn DUAN(MaDA, DDiemDA) Chương - Dạng chuẩn chuẩn hóa 17 Dạng chuẩn 3NF dựa khái niệm phụ thuộc bắc cầu Định nghĩa: Một lược đồ quan hệ R 3NF nó: – Thỏa mãn 2NF – Không có thuộc tính không khoá R phụ thuộc bắc cầu vào khoá bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 18 Dạng chuẩn (tt) Phụ thuộc vào MaNV NV_DV(MaNV, TenNV, NS, DCHI, MaDV, TenDV, TruongPHG) Phụ thuộc vào MaDV Tất thuộc tính phải phụ thuộc vào thuộc tính khóa - Một vài thuộc tính phụ thuộc vào thuộc tính ko phải khóa - Chuẩn hóa Tách nhóm thuộc tính thành quan hệ bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 19 Dạng chuẩn (tt) Phụ thuộc vào MaNV NV_DV(MaNV, TenNV, NS, DCHI, MaDV, TenDV, TruongPHG) Phụ thuộc vào MaDV NHANVIEN(MaNV, TenNV, NS, DCHI, MaDV) DONVI(MaDV, TenDV, TruongPHG) bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 20 Phân rã bảo toàn thông tin (tt) Phân rã lược đồ R = (U,F) thành tập hợp lược đồ: R1 = (U1,F1) R2= (U2, F2)… Rn = (Un,Fn) Phân rã không mát thông tin với thể r hợp lệ R thì: r = r1 r2 Với r1 = πU1(r) bangtqh@utc2.edu.vn … rn r2 = πU2(r),… rn = πUn(r) 29 Chương - Dạng chuẩn chuẩn hóa Phân rã bảo toàn thông tin (tt) Thực tế nhận nhiều (tuple) từ phép kết r1, r2,…,rn gốc ban đầu Vậy lại gọi mát (lossy) ?? Tuy nhiều lại thiếu thông tin cách biết đúng, không với gốc Nhiều không ≡ mát thông tin bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 30 Phân rã bảo toàn thông tin (tt) Định lý 5.1 – Phân rã D = {R1(U1), R2(U2)} R(U) không thông tin tập PTH F nếu: • (U1 ∩ U2) → (U1) ∈ F+, • (U1 ∩ U2) → (U2) ∈ F+ Định lý 5.3 – Nếu phân rã D = {R1, …, Rm} R không thông tin F phân rã Di = {Q1, …, Qk} Ri không thông tin πRi(F) D’ = {R1, …, Ri-1, Q1, …, Qk, Ri+1, …, Rm} R không thông tin bangtqh@utc2.edu.vn 31 Chương - Dạng chuẩn chuẩn hóa Ví dụ Xét lược đồ quan hệ PERSON(SSN, Name, Address,Hobby) SSN Name Address Hobby 1111111 John 123 Main St Stamps 1111111 John 123 Main St Coins 5556667 Mary Lake Dr Hiking 5556667 Mary Lake Dr Skating 9876543 Simpson Fox TV Acting Nếu phân rã lược đồ thành lược đồ: PERSON1(SSN, Name, Address) HOBBY(SSN, Hobby) Việc phân rã có thông tin không? bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 32 Ví dụ Ta có: PERSON1 ∩ HOBBY = {SSN} mà SSN khóa PERSON1, PERSON1 ∩ HOBBY PERSON1 Vậy: Phân rã không thông tin 33 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa Phân rã bảo toàn phụ thuộc hàm Xét lược đồ quan hệ sau: HASACCOUNT(ClientId, OfficeId, AccountNumber) Với PTH sau: ClientId, OfficeId AccountNumber AcountNumber OfficeId Nếu phân rã lược đồ thành lược đồ sau: ACCTOFFICE (AccountNumber, OfficeId) ACCTCLIENT (AccountNumber, ClientId) Phân rã có mát thông tin không??? bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 34 Phân rã bảo toàn PTH (tt) Phân rã không mát thông tin vì: ACCTOFFICE ∩ ACCTCLIENT ={AccountNumber} Do AccountNumber CCTOFFICE nên: ACCTOFFICE ∩ ACCTCLIENT Primary Key ACCTOFFICE Nhưng phân rã không bảo toàn phụ thuộc hàm bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 35 Phân rã bảo toàn PTH (tt) Phụ thuộc hàm gốc: ClientId, OfficeId AcountNumber không tồn phụ thuộc hàm lược đồ phân rã vì: – Cả hai phụ thuộc hàm phân rã không chứa đủ thuộc tính phụ thuộc hàm gốc (1) nên suy diễn lại phụ thuộc hàm bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 36 Phân rã bảo toàn PTH (tt) Cho lược đồ R = (U,F) D = {R1(U1,F1) , R2(U2, F2), , R (Un, Fn) } phân rã R Phân rã gọi bảo toàn phụ thuộc hàm F ∪ Fi tương đương Nếu phụ thuộc hàm f ∈ F không thuộc Fi nghĩa phân rã không bảo toàn phụ thuộc hàm f suy diễn từ ∪ Fi – Chỉ f suy diễn từ ∪ Fi phân rã không bảo toàn PTH bangtqh@utc2.edu.vn 37 Chương - Dạng chuẩn chuẩn hóa Ví dụ Phân rã quan hệ HASACCOUNT AccountNumber ClientId OfficeId B123 111111 SB01 A908 123456 MN08 AccountNumber OfficeId Account Number ClientId B123 SB01 B123 111111 A908 MN08 A908 123456 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 38 Ví dụ HASACCOUNT phân rã sau chèn thêm hàng AccountNumber ClientId OfficeId Sau B123 join lược đồ phân rã lại, phụ thuộc hàm 111111 SB01 ClientId, B567 OfficeId AcountNumber bị vi phạm 111111 SB01 A908 123456 MN08 AccountNumber OfficeId Account Number ClientId B123 B567 A908 SB01 SB01 MN08 B123 111111 B567 111111 A908 123456 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 39 Phép chiếu tập phụ thuộc hàm Xét lược đồ quan hệ R =(U,F) tập S ⊆ U Phép chiếu F lên tập thuộc tính S định nghĩa sau: πS(F) = {X bangtqh@utc2.edu.vn Y|X Y ∈F+ X ∪ Y⊆ S} Chương - Dạng chuẩn chuẩn hóa 40 Giải thuật phân rã thành BCNF R=(U,F) lược đồ quan hệ không chuẩn BCNF Giải thuật: Thực lặp lại việc phân chia R thành lược đồ nhỏ cho lược đồ có PTH vi phạm BCNF Giải thuật kết thúc tất lược đồ kết dạng BCNF bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 41 Giải thuật phân rã thành BCNF Input R = (U,F) Decom = R While có lược đồ S=(V, F’) Decom BCNF /*Nếu có X Y ∈F cho X ∪ Y ⊆ S vi phạm BCNF, dùng FD để phân rã*/ – Thay S Decom với S1 = (XY, F1) – S2=( (S-Y) ∪ X, F2) với F1,F2 tất FD F’ End Return Decom bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 42 Ví dụ Cho R= (U,F) U={ABCDEFGH}, F= {ABH C, A DE, BGH F, F ADH, BH GE} Tìm FD vi phạm BCNF – (ABH)+ = U , ABH siêu khóa, ABH C không vi phạm BCNF – A+ ≠ U, A DE vi phạm BCNF Chia R thành – R1 =(ADE, {A DE}) – R2 = (ABCFGH, {ABH C, BGH F, F bangtqh@utc2.edu.vn AH, BH G}) Chương - Dạng chuẩn chuẩn hóa 43 Ví dụ (tt) Sau phân rã, ý đến phụ thuộc hàm gốc F ADH, BH GE – Chia F ADH thành {F AH, F D} – Chia BH GE thành {BH G, BH E} F D, BH E chỗ phân rã (vì ràng buộc có đủ thuộc tính cho FD này) Nhưng – F D suy diễn từ F AH ∈ R2 A DE ∈ R1 – BH E suy diễn dựa vào (BH)+ từ R1,R2 Phân rã R1,R2 bảo toàn phụ thuộc hàm bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 44 Ví dụ (tt) R1 BCNF Với R2 (ABCFGH, {ABH C, BGH F, F – ABH – F C, BGH AH, BH G}) F không vi phạm BCNF (ABH, BGH siêu khóa) AH vi phạm BCNF Vậy Phân rã R2 thành – R21=(FAH, {F AH}) – R22= (FBCG, {} ) R21, R22 BCNF Phụ thuộc hàm ABH C, BGH F BH G mặt suy dẫn từ PTH R21, R22 R1 Phân rã R2 không bảo toàn phụ thuộc hàm bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 45 Nhận xét Việc phân rã R thành R1, R21, R22 Nếu FD F R1= (FADH; {F ADH có ADH}) R2 = (FBCEG,{}) R1,R2 chuẩn BCNF số FD gốc bị mất, suy diễn bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 46 Tính chất giải thuật phân rã BCNF Không mát thông tin Nhưng không bảo toàn phụ thuộc hàm Là giải thuật không xác định (nondeterministic), phụ thuộc vào thứ tự PTH chọn để xét phân rã 47 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa Giải thuật phân rã thành 3NF Cho lược đồ R(U,F) Bước 1: Tìm phủ tối thiểu G F Bước 2: Phân hoạch G thành tập phụ thuộc hàm G1, ,Gn cho Gi chứa PTH có vế trái Bước 3: với Gi, tạo lược đồ (Ri, Gi) với Ri chứa tất thuộc tính có Gi Bước 4: Nếu Ri thỏa (Ri)+F = R kết thúc, ngược lại đặt Ro=(R, {}) lược đồ Khi R0, R1,…, Rn kết phân rã bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 48 Tính chất giải thuật phân rã thành 3NF Bảo toàn phụ thuộc hàm Không thông tin bangtqh@utc2.edu.vn 49 Chương - Dạng chuẩn chuẩn hóa Ví dụ Cho R= (U,F) với U={ABCDEFGH}, F= {ABH F ADH, BH C, A DE, BGH F, GE} Phủ tối thiểu F là: G={BH C,A D,C E,F A,E F} Phân rã thành lược đồ: – R1 (BHC; {BH C}) – R2 (AD; {A D}) – R3 (CE; {C E}) – R4 (FA; {F A}) – R5 (EF; {E F}) Không có lược đồ phân rã có (Ri)+F = siêu khóa BCGH R, nên bổ sung thêm lược đồ thứ – R6 (BCGH;{}) 50 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa Phân rã BCNF thông qua phân rã 3NF Vì giải thuật phân rã BCNF không bảo toàn phụ thuộc hàm nên phân rã BCNF thông qua phân rã 3NF Nếu lược đồ sau phân rã BCNF dừng, không dùng lúc dùng giải thuật BCNF để phân rã tiếp 51 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa Ví dụ Xét tập thuộc tính sau: St (Student), C (course), Sem (semester), P (Professor), T (time) R(room) tập PTH sau: St C Sem P Sem P C C Sem T P P Sem T CR P Sem C T P Sem T R C 52 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa Phân rã 3NF bảo toàn FD Phân rã thành lược đồ sau: R1 (St C Sem P; {St C Sem R2 (P Sem C; {P Sem P}) C}) R3 (C Sem T P; {C Sem T P}) R4 (P Sem T R; {P Sem T R}) Vì phân rã hình thành siêu khóa cho lược đồ gốc, nên bổ sung thêm lược đồ (bước 4) R5 ( St T Sem P; {}) 53 bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa Phân rã thành BCNF Các phân rã BCNF P Sem C nằm phân rã Phân rã tách thành lược đồ – (P Sem C; {P Sem – (St Sem P; {}) C}) Phân rã không mát thông tin không bảo toàn PTH St C Sem P bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 54 Phân rã thành BCNF Phân rã lược đồ thành – (P Sem C; {P Sem C}) – (P Sem T; {}) Không mát thông tin không bảo toàn PTH C Sem T bangtqh@utc2.edu.vn P Chương - Dạng chuẩn chuẩn hóa 55 Phân rã thành BCNF Kết cuối cùng: (P Sem C; {P Sem C}) (P Sem St) (P Sem T) (P Sem T R; {P Sem T R}) (St T Sem P) bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 56 Bài tập bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 57 [...]... bangtqh@utc2.edu.vn 21 Chương 5 - Dạng chuẩn và chuẩn hóa Dạng chuẩn Boyce-Codd Một lược đồ quan hệ R được gọi là ở dạng chuẩn Boyce-Codd (BCNF) nếu nó – Thỏa mãn dạng chuẩn 3NF – Không có thuộc tính phụ thuộc hàm vào thuộc tính không khóa Ví dụ R A B C D FD1 FD2 FD5 bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 22 Dạng chuẩn Boyce-Codd(tt) Ví dụ: R (A1,A2,A3,A4,A5) Với các phụ thuộc hàm: A1,A2 → A3,A4,A5 A4... sau: – R1( A4, A2) – R2(A1, A4, A3, A5) bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 24 Dạng chuẩn Boyce-Codd(tt) Ví dụ Phụ thuộc vào cả 2 MaSV, MaMH SV_MH_GV(MaSV, MONHOC, GIANGVIEN) Phụ thuộc vào MONHOC bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 25 Dạng chuẩn Boyce-Codd(tt) Ví dụ Phụ thuộc vào cả 2 MaSV, MaMH SV_MH_GV(MaSV, MaMH, MaGV) Phụ thuộc vào MONHOC SV_MH(MaSV, MaMH) bangtqh@utc2.edu.vn... Chương 5 - Dạng chuẩn và chuẩn hóa 54 Phân rã thành BCNF Phân rã lược đồ 3 thành – (P Sem C; {P Sem C}) – (P Sem T; {}) Không mất mát thông tin nhưng cũng không bảo toàn PTH C Sem T bangtqh@utc2.edu.vn P Chương 5 - Dạng chuẩn và chuẩn hóa 55 Phân rã thành BCNF Kết quả cuối cùng: (P Sem C; {P Sem C}) (P Sem St) (P Sem T) (P Sem T R; {P Sem T R}) (St T Sem P) bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn. .. Account Number ClientId B123 B567 A908 SB01 SB01 MN08 B123 111111 B567 111111 A908 123 456 bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 39 Phép chiếu của tập phụ thuộc hàm Xét lược đồ quan hệ R =(U,F) và tập S ⊆ U Phép chiếu của F lên tập các thuộc tính S được định nghĩa như sau: πS(F) = {X bangtqh@utc2.edu.vn Y|X Y ∈F+ và X ∪ Y⊆ S} Chương 5 - Dạng chuẩn và chuẩn hóa 40 Giải thuật phân rã thành... dùng lúc đó mới dùng giải thuật BCNF để phân rã tiếp 51 bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa Ví dụ Xét tập thuộc tính sau: St (Student), C (course), Sem (semester), P (Professor), T (time) và R(room) và tập PTH như sau: St C Sem P Sem P C C Sem T P P Sem T CR P Sem C T P Sem T R C 52 bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa Phân rã 3NF bảo toàn FD Phân rã thành 4 lược đồ... Chương 5 - Dạng chuẩn và chuẩn hóa 26 5. 1.3 Phân rã lược đồ quan hệ Lược đồ quan hệ chung R(A1, …, An) – Tập hợp tất cả các thuộc tính của các thực thể Xác định tập phụ thuộc hàm F trên R Phân rã – Sử dụng các thuật toán chuẩn hóa để tách R thành tập các lược đồ D = {R1, …, Rm} Yêu cầu – Bảo toàn thông tin – Các lược đồ Ri phải ở dạng chuẩn 3 hoặc BCNF bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn. .. bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 23 Dạng chuẩn Boyce-Codd(tt) Nếu một lược đồ quan hệ không thoả mãn điều kiện BCNF, thủ tục chuẩn hóa bao gồm: – Loại bỏ các thuộc tính khóa phụ thuộc hàm vào thuộc tính không khóa ra khỏi quan hệ – tách chúng thành một quan hệ riêng có khoá chính là thuộc tính không khóa gây ra phụ thuộc Ví dụ trên: R (A1,A2,A3,A4,A5) Với các phụ thuộc hàm: – A1,A2 → A3,A4,A5 –... R2 không bảo toàn phụ thuộc hàm bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 45 Nhận xét Việc phân rã R thành R1, R21, R22 không phải là duy nhất Nếu bắt đầu từ FD F R1= (FADH; {F ADH thì sẽ có ADH}) R2 = (FBCEG,{}) R1,R2 cũng ở chuẩn BCNF và 1 số FD gốc cũng bị mất, không thể suy diễn được bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 46 Tính chất của giải thuật phân rã BCNF Không... Rn là kết quả phân rã bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 48 Tính chất của giải thuật phân rã thành 3NF Bảo toàn phụ thuộc hàm Không mất thông tin bangtqh@utc2.edu.vn 49 Chương 5 - Dạng chuẩn và chuẩn hóa Ví dụ Cho R= (U,F) với U={ABCDEFGH}, F= {ABH F ADH, BH C, A DE, BGH F, GE} Phủ tối thiểu của F là: G={BH C,A D,C E,F A,E F} Phân rã thành 5 lược đồ: – R1 (BHC; {BH C}) – R2 (AD; {A... 987 654 3 Simpson Fox 5 TV Acting Nếu phân rã lược đồ trên thành 2 lược đồ: PERSON1(SSN, Name, Address) HOBBY(SSN, Hobby) Việc phân rã này có mất thông tin không? bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và chuẩn hóa 32 Ví dụ Ta có: PERSON1 ∩ HOBBY = {SSN} mà SSN là khóa chính của PERSON1, do đó PERSON1 ∩ HOBBY PERSON1 Vậy: Phân rã này không mất thông tin 33 bangtqh@utc2.edu.vn Chương 5 - Dạng chuẩn và ... form) Dạng chuẩn (2NF – second normal form) Dạng chuẩn (3NF – third normal form) Dạng chuẩn BCNF (Boyce-Codd normal form) Dạng chuẩn 4NF bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 10 Dạng chuẩn. .. Chương - Dạng chuẩn chuẩn hóa 15 Dạng chuẩn (tt) Ví dụ Phụ thuộc vào MaNV, MaDA NV_DA(MaNV, MaDA, Sogio, TenDA, DDiemDA) Chỉ phụ thuộc vào MaDA bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa. .. bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn hóa 24 Dạng chuẩn Boyce-Codd(tt) Ví dụ Phụ thuộc vào MaSV, MaMH SV_MH_GV(MaSV, MONHOC, GIANGVIEN) Phụ thuộc vào MONHOC bangtqh@utc2.edu.vn Chương - Dạng chuẩn chuẩn

Ngày đăng: 01/04/2016, 09:38

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan