Cơ Sở Dữ Liệu ĐH Cần Thơ Chương 6 pdf

24 249 0
Cơ Sở Dữ Liệu ĐH Cần Thơ Chương 6 pdf

Đ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

Chương Chương 6. 6. CHU CHU Ẩ Ẩ N H N H Ó Ó A LƯ A LƯ Ợ Ợ C Đ C Đ Ồ Ồ CSDL QUAN H CSDL QUAN H Ệ Ệ GV: Trần Ngân Bình tnbinh@cit.ctu.edu.vn 6.2 N N ộ ộ i Dung i Dung  Khóa - Siêu Khóa  Giải thuật tìm tất cả các khóa  Các dạng phụ thuộchàm  Sự dư thừa dữ liệu và các dị thường khi cập nhật  Dạng chuẩn 1  Dạng chuẩn 2  Dạng chuẩn 3  Dạng chuẩn BCNF  Phi chuẩn hóa 6.3 Kh Kh ó ó a a - - Siêu Siêu Kh Kh ó ó a a  Khái niệm: Cho lược đồ quan hệ α = <U,F>, K ⊆ U ) K đượcgọi là siêu khóa của α nếu: K + = U ( hay K -> U) ) K đượcgọi là khóa của α nếu:  K là siêu khóa  K là siêu khóa nhỏ nhất: ∀ X ⊂ K, X không là siêu khóa, hay X > U  Nhận xét: ) Một LĐQH có thể có một hoặc nhiều siêu khóa, và một hoặc nhiều khóa. ) Các khóa có thể có số lượng thuộc tính khác nhau. ) Hai khóa phân biệt không thể bao nhau: Nếu K1 ≠ K2, thì K1 ⊄ K2 và K2 ⊄ K1. 6.4 V V í í d d ụ ụ kh kh ó ó a a & & siêu siêu Kh Kh ó ó a a  Ví dụ: Dữ liệu về các cầu thủ bóng đágồm các thuộc tính: ) U = { TENCT, MAU_AO, SO_AO, DOI, TINH, HLV, DIEM, Km } ) F = { TINH → Km MAU_AO → TINH, DOI, HLV DOI, TINH → MAU_AO, HLV MAU_AO, SO_AO → U }  Từ tập PTH F ta có thể suy ra: ) Có siêu khóa K: K={DOI, TINH, SO_AO, MAU_AO } ) Và có khóa K1, K2 :  K1= { MAU_AO, SO_AO}  và K2= {DOI, TINH, SO_AO} 6.5 Gi Gi ả ả i i Thu Thu ậ ậ t t T T ì ì m m T T ấ ấ t t C C ả ả C C á á c c Kh Kh ó ó a a (1) (1)  Phép dịch chuyển LĐQH: ) Cho LĐQH α = <U, F >, X ⊆ U. ) Phép dịch chuyểnLĐQH trên X cho ta một LĐQH α’= α\X = <U’, F’>, trong đó:  U’ = U \ X  F’ = { L i \X → R i \ X , i= 1 m}. NếuR i \X = φ thì bỏđiPTH đó.  Ðịnh lý cơ bản: ) Cho LĐQH α = <U, F>, X, Y ⊆ U, X∩Y =φ ) thì: (XY) + α = X (Y) + α \X 6.6 Gi Gi ả ả i i Thu Thu ậ ậ t t T T ì ì m m T T ấ ấ t t C C ả ả C C á á c c Kh Kh ó ó a a (1) (1)  Ví dụ: Giả sử tìm (AGHI) + trên lược đồ quan hệ α gồm: U = { ABCDEGHIJ } F = { AG → BC BCE → GC→ DAB } AD → EC IB → DJ Ta có thể tìm AGH(I) + α \{AGH} α’= α \ {AGH } = < U’, F’ >, U’ = BCDEIJ F’ = { φ → BC BCE → φ D → EC IB → DJ C → DB } Ö I + α’ = IBCDJE Ö (AGHI) + α = AGH (I) + α’ = AGHIBCDJE = ABCDEGHIJ  Hệ quả: X + α = X (φ) + α \X 6.7 Gi Gi ả ả i i Thu Thu ậ ậ t t T T ì ì m m T T ấ ấ t t C C ả ả C C á á c c Kh Kh ó ó a a (2) (2)  Ðịnh lý: GọiK α là tậphợptấtcả các khóa của LĐQH α, và: ) U 0 = ∩ K α : là tậpcácthuộctínhnằm trong mọi khóa. ) M = ∪ K α : là tậpcácthuộc tính khóa hay tậpthuộctính nguyên thủy. ) I = U\M: là tậpcácthuộc tính không nằm trong mọi khóa. ) Khi đó: vớiX ⊆ U thì:  K α = X ⊕ K α \X ⇔ X ⊆ U 0  K α = K α \X ⇔ X ⊆ I  Chú ý: phép tóan ⊕: ) X ⊕ { Y 1 , Y 2 , Y n } = {XY 1 ,XY 2 , XY n } 6.8 Gi Gi ả ả i i Thu Thu ậ ậ t t T T ì ì m m T T ấ ấ t t C C ả ả C C á á c c Kh Kh ó ó a a (2) (2)  GiảithuậttìmK α : )Bước1: ÐưaF về dạng rút gọntự nhiên )Bước 2:Tính U 0 = U - ∪ R i )Bước 3: Tính I = ∪ R i - ∪ L i )Bước4: Xácđịnh α’= α\U 0 I )Bước5: TìmK α’ )Bước6: K α = U 0 ⊕ K α’ m i=1 m i=1 m i=1 6.9 V V í í D D ụ ụ T T ì ì m m T T ấ ấ t t C C ả ả C C á á c c Kh Kh ó ó a a  Ví dụ: Cho α= <U, F> với U = ABCDEGHIJL  F = { AI → ECD ABJ → GH CDL → ABEH} 1. F đã ở dạng rút gọntự nhiên. 2. U 0 = U - ∪ R i = IJL 3. I = ABCDEGHIJL - ABCDIJL = EGH 4. α’= α \U 0 I = <U’, F >  U’ = U - U 0 I = ABCD  F’ = { A → CD CD → AB} 5. Vì A + = ABCD = U’, (CD) + = ABCD Î K α’ = { A, CD} 6. K α = U 0 ⊕ K α’ = IJL ⊕ {A, CD } = {AIJL, CDIJL} 6.10 C C á á c c D D ạ ạ ng ng Ph Ph ụ ụ Thu Thu ộ ộ c c H H à à m m  Phụ thuộctừng phần: Phụ thuộc hàm X Æ A được gọilàphụ thuộctừng phầnnếuX làtập con thậtsự củamột khóa củaR. ) Ví dụ: SAIP, F = {SÆ A, SI Æ P} => khóa là SI.  A: không là thuộc tính nguyên tố. S Æ A: là phụ thuộc hàm từng phần  Phụ thuộc hàm đầy đủ (phụ thuộc hàm sơ cấp): Phụ thuộc hàm X Æ A được gọi là phụ thuộc đầy đủ nếu không tồn tại tập con thật sự Y ⊂ X nào để Y Æ A xảy ra. Như vậy, phụ thuộc đầy đủ vào khóa ngược lại với phụ thuộc từng phần. [...]... nhóm lặp lại Các bảng chưa chuẩn 6. 13 Dạng Chuẩn 1 (1NF) Một quan hệ thỏa 1NF nếu mọi thuộc tính của R đều khác trống, PTH vào khóa và không được mang giá trị kép Ví dụ: Bảng không chuẩn 6. 14 Đưa về 1NF: Cách 1: San phẳng => tạo ra nhiều dữ liệu dư thừa 6. 15 Đưa về 1NF: Cách 2: Tách thành các bảng 6. 16 Dị thường khi cập nhật Dị thường khi xen: Thêm vào một Tài sản mới cần cho thuê? Dị thường khi xóa... đáp ứng được các yêu cầu cho trước về dữ liệu của một công ty Có nhiều dạng chuẩn: 1NF, 2NF, 3NF, BCNF,… Một CSDL không chuẩn đạt chuẩn 3 sẽ: Dẫn đến dữ liệu dư thừa => dữ liệu không nhất quán Có thể dẫn đến những tình trạng dị thường khi cập nhật dữ liệu 6. 12 Các Dạng Chuẩn Của Một LĐQH Các bảng được chuẩn hóa hoàn toàn : Loại bỏ các dị thường có thể có : Dạng chuẩn thứ tư Loại bỏ các phụ thuộc hàm đa... Y, với Y ≠ X, Y ≠ A thỏa: X Y và Y A 6. 11 Chuẩn hóa CSDL Một CSDL được thiết kế không tốt sẽ dẫn đến nhiều vấn đề rắc rối nảy sinh khi sử dụng như dư thừa dữ liệu, dị thường khi cập nhật Vấn đề đặt ra là làm sao thiết kế được một CSDL tốt Chuẩn hóa CSDL là một kỹ thuật dùng để tạo ra một tập các quan hệ với các thuộc tính đáp ứng được các yêu cầu cho trước về dữ liệu của một công ty Có nhiều dạng chuẩn:... Ví dụ: QH không thỏa 2NF Không thoả dạng chuẩn 2 Khóa chính 6. 19 Đưa về 2NF Tách các thuộc tính phụ thuộc một phần vào khóa => đưa vào quan hệ mới Khóa chính 6. 20 Dạng chuẩn 3 (3NF) Một quan hệ thỏa 3NF là một quan hệ thỏa 2NF và không tồn tại bất cứ một PTH truyền nào trong quan hệ Khóa chính Không thoả dạng chuẩn 2 Khóa chính Khóa chính 6. 21 Đưa về 3NF Tách các thuộc tính không phụ thuộc trực tiếp... dòng liên quan? 6. 17 Dạng chuẩn 2 (2NF) Một quan hệ thỏa 2NF là một quan hệ thỏa 1NF và không tồn tại bất cứ một PTH từng phần nào trong quan hệ Nhận xét: Ðể biết một quan hệ R có thỏa dạng chuẩn 2 hay không, ta phải xác định khóa của R Từ đó, mới có thể xác định các PTH nào là PTH từng phần Chỉ có các quan hệ có khóa gồm hai thuộc tính trở lên thì mới có thể không thỏa dạng chuẩn 2 6. 18 Ví dụ: QH không... CSDL thỏa dạng chuẩn 3 là: 1 2 3 4 Customer (Customer_No, Cname) Rental (Customer_No, Property_No, RentStart, RentFinish) Property_for_Rent (Property_No, Paddress, Rent, Owner_N) Owner (Owner_No, Oname) 6. 22 Dạng chuẩn Boyce-Codd (BCNF) Ðịnh nghĩa: Một sơ đồ QH được xem là ở dạng chuẩn BCNF nếu nó thỏa dạng chuẩn thứ 3 và không tồn tại bất cứ PTH nào mà vế trái không phải là siêu khóa Ví dụ: R = (CSZ),... đó thì chỉ liên hệ với một nhân viên duy nhất: LIÊN_HỆ (MAKH, LOẠI_HÀNG, MANV) Nếu Cty qui định: mỗi nhân viên chỉ phụ trách một loại hàng hóa: MANV LOAI_HANG => Quan hệ LIEN_HE không thỏa chuẩn BCNF 6. 23 Phi chuẩn hóa (Denormalization) Tạo sự rườm rà để cho hệ thống tránh Phải kết nối thường xuyên nhiều quan hệ VD: THISINH(SOBD, HO, TEN, NSINH, MABTS) BTS(MABTS, TENBTS) => THISINH(SOBD, HO, TEN, NSINH,... MABTS, TENBTS) Mặc dù có PTH truyền => Phải phát biểu ràng buộc này Phải tính toán thường xuyên các giá trị dẫn xuất VD: HÓAĐƠN (STT_HĐ, NGÀY, TENKH, TRIGIA_HĐ) CHITIẾT_HĐ (STT_HĐ, MA_HANG, DGIA, SOLG) 6. 24 . các yêu cầu cho trước về dữ liệu của một công ty  Có nhiều dạng chuẩn: 1NF, 2NF, 3NF, BCNF,…  Một CSDL không chuẩn đạt chuẩn 3 sẽ: ) Dẫn đến dữ liệu dư thừa => dữ liệu không nhất quán ) Có. Chương Chương 6. 6. CHU CHU Ẩ Ẩ N H N H Ó Ó A LƯ A LƯ Ợ Ợ C Đ C Đ Ồ Ồ CSDL QUAN H CSDL QUAN H Ệ Ệ GV: Trần Ngân Bình tnbinh@cit.ctu.edu.vn 6. 2 N N ộ ộ i Dung i Dung . ph ẳ ẳ ng ng => tạo ra nhiều dữ liệu dư thừa 6. 16 Đ ưa v Đ ưa v ề ề 1NF: 1NF: C C á á ch 2: T ch 2: T á á ch th ch th à à nh c nh c á á c b c b ả ả ng ng 6. 17 D D ị ị thư thư ờ ờ ng khi

Ngày đăng: 10/08/2014, 17:22

Mục lục

  • Chương 6. CHUẨN HÓA LƯỢC ĐỒ CSDL QUAN HỆ

  • Khóa - Siêu Khóa

  • Ví dụ khóa & siêu Khóa

  • Giải Thuật Tìm Tất Cả Các Khóa (1)

  • Giải Thuật Tìm Tất Cả Các Khóa (1)

  • Giải Thuật Tìm Tất Cả Các Khóa (2)

  • Giải Thuật Tìm Tất Cả Các Khóa (2)

  • Ví Dụ Tìm Tất Cả Các Khóa

  • Các Dạng Phụ Thuộc Hàm

  • Các Dạng Phụ Thuộc Hàm

  • Các Dạng Chuẩn Của Một LĐQH

  • Đưa về 1NF: Cách 1: San phẳng

  • Đưa về 1NF: Cách 2: Tách thành các bảng

  • Dị thường khi cập nhật

  • Ví dụ: QH không thỏa 2NF

  • Dạng chuẩn Boyce-Codd (BCNF)

  • Phi chuẩn hóa (Denormalization)

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

Tài liệu liên quan