intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Cơ sở dữ liệu: Chương 6 - ThS. Nguyễn Thị Khiêm Hòa (ĐH Ngân hàng TP.HCM)

Chia sẻ: Cxzvscv Cxzvscv | Ngày: | Loại File: PDF | Số trang:74

103
lượt xem
13
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Sau khi học xong chương 6 Phụ thuộc hàm và Chuẩn hóa cơ dữ liệu nằm trong bài giảng cơ sở dữ liệu nhằm trình bày về các nội dung chính: phụ thuộc hàm, nguyên tắc thiết kế các lược đồ quan hệ, chuẩn hóa lược đồ cơ dữ liệu, các dạng chuẩn, một số thuật toán chuẩn hóa.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Cơ sở dữ liệu: Chương 6 - ThS. Nguyễn Thị Khiêm Hòa (ĐH Ngân hàng TP.HCM)

  1. Phụ thuộc hàm và Chuẩn hóa CSDL Functional Dependency and Normal Forms Giảng viên: Ths. Nguyễn Thị Khiêm Hòa
  2. NỘI DUNG • Phụ thuộc hàm. • Nguyên tắc thiết kế các lƣợc đồ quan hệ. • Chuẩn hóa lƣợc đồ CSDL • Các dạng chuẩn. • Một số thuật toán chuẩn hóa. Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 2
  3. PHỤ THUỘC HÀM Ví dụ Bạn có nhận xét gì về mối liên hệ giữa các thuộc tính? Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 3
  4. PHỤ THUỘC HÀM Ví dụ Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 4
  5. PHỤ THUỘC HÀM Ví dụ • Tồn tại hai mối liên hệ giữa các thuộc tính trong quan hệ DU_AN • TenDA -> Diadiem_DA • TenDA-> TenPB • Mối liên hệ nhƣ thế này đƣợc gọi là phụ thuộc hàm Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 5
  6. PHỤ THUỘC HÀM Định nghĩa (1) Khái niệm phụ thuộc hàm f trên quan hệ R giữa hai tập hợp các thuộc tính A1, A2, ..., An và B1, B2, ..., Bm được phát biểu như sau: Nếu hai bộ của quan hệ R có giá trị giống nhau tại các thuộc tính A1, A2, ..., An, thì chúng cũng phải có giá trị giống nhau tại các thuộc tính B1, B2, ..., Bm. Ký hiệu A1, A2, ..., An → B1, B2, ..., Bm Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 6
  7. PHỤ THUỘC HÀM Minh họa bằng hình ảnh Hình 8.1. Ảnh hưởng của phụ thuộc hàm A->B đối với hai bộ t, u bất kỳ. Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 7
  8. PHỤ THUỘC HÀM Định nghĩa (2) Cho R là quan hệ trên tập thuộc tính Ω, với X và Y là hai tập con (khác rỗng) bất kỳ của Ω. Nói rằng X xác định Y, hay Y phụ thuộc hàm vào X, ký hiệu X → Y, khi và chỉ khi :  r, s  R, nếu r[X] = s[X], thì r[Y] = s[Y]. Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 8
  9. PHỤ THUỘC HÀM Ví dụ TenDA  Diadiem_DA, TenPB TenDA, TenNV  Thoigian Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 9
  10. PHỤ THUỘC HÀM Nhận xét Phụ thuộc hàm là phương tiện biểu diễn hình thức và phát hiện ràng buộc dữ liệu. Đây là cơ sở xác định khóa và chuẩn hóa lược đồ cơ sở dữ liệu. Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 10
  11. HỆ TIÊN ĐỀ AMSTRONG Mục tiêu • Giả sử quan hệ R thỏa mãn tập các phụ thuộc hàm  • Chứng minh ràng R cũng phải thỏa mãn phụ thuộc hàm f Ví dụ • Giả sử R thỏa mãn hai phụ thuộc hàm A B, và BC • Chứng minh rằng R cũng thỏa mãn phụ thuộc hàm AC • Chứng minh rằng R không thỏa mãn phụ thuộc hàm CA Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 11
  12. HỆ TIÊN ĐỀ AMSTRONG Luật 1: Luật phản xạ • Nếu Y ⊆ X, thì X Y • Ví dụ: ABC  BC Luật 2: Luật tăng trƣởng • Nếu X  Y thì XZ  YZ • Ví dụ: nếu C  D thì ABC  ABD Luật 3: Luật bắc cầu • Nếu X  Y và Y  Z thì X  Z • Nếu AB  CD và CD  EF thì AB  EF Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 12
  13. HỆ QUẢ CỦA TIÊN ĐỀ AMSTRONG Luật hợp • Nếu X  Y và X  Z thì X  YZ • Ví dụ: AB  CD, AB  EF, AB  CDEF Luật tách hay còn gọi là luật phân rã • Nếu X  YZ thì X  Y và X  Z • Ví dụ: nếu AB  CDEF thì AB  CD, AB  EF, AB  C, AB  D, AB  E và AB  F Luật bắc cầu giả • Nếu X  Y và WY  Z thì WX  Z • Ví dụ: Nếu AB  EF nghệ Thông tin - Trƣờng ĐạiG thìhàng và DEF  học Ngân ABD  G 13 Khoa Công
  14. HỆ TIÊN ĐỀ AMSTRONG Ví dụ TenDA  Diadiem_DA TenDA  TenPB  TenDA  Diadiem_DA, TenPB Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 14
  15. HỆ TIÊN ĐỀ AMSTRONG Ví dụ TenDA  Thoigian TenNV  Thoigian ? TenDA, Ten NV  Thoigian Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 15
  16. BAO ĐÓNG CÁC THUỘC TÍNH Định nghĩa • Bao đóng của X trên  (đƣợc ký hiệu là X+) là tập con của tập thuộc tính đƣợc xác định duy nhất bởi X qua các phụ thuộc hàm trong  Chú ý • Phụ thuộc hàm X  B đƣợc dẫn xuất từ  • Bao đóng của X luôn chứa X Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 16
  17. BAO ĐÓNG CÁC THUỘC TÍNH Thuật toán tìm bao đóng • Phân tách các phụ thuộc hàm trong , sao cho mỗi phụ thuộc hàm trong  chỉ có một thuộc tính ở vế phải • Gọi X là tập hợp bao đóng các thuộc tính. Tại thời điểm khởi tạo X = {A1, A2, ..., An}. • Tìm một phụ thuộc hàm B1B2...Bm→C, sao cho tất cả B1, B2, ..., Bm đều nằm trong X, nhƣng C thì không. Thêm C vào tập X, và lặp lại bƣớc 3 Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 17
  18. BAO ĐÓNG CÁC THUỘC TÍNH Ví dụ • Quan hệ R với các phụ thuộc hàm AB → C(1), BC → AD(2), D → E(3), và CF → B(4). Tìm {A, B}+ 1 2 3 4 Tách (2) thành Bắt đầu với Chọn (1), thêm C vào X X+ = {A,B,C,D,E} BC → A(5), X={A,B} X = {A,B,C} BC → D(6) Chọn (2), thêm D vào X X = {A,B,C,D} Chọn (3), thêm E vào X X = {A,B,C,D,E} Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 18
  19. BAO ĐÓNG CÁC THUỘC TÍNH Ứng dụng 1 • Kiểm tra sự tồn tại của phụ thuộc hàm A  B Tính bao đóng của A Nếu B  {A}+, thì kết luận tồn tại A  B Ngược lại, kết luận không tồn tại A  B Ứng dụng 2 • Tìm khóa (siêu khóa) X của quan hệ R Tính bao đóng của X Nếu {X}+ chứa tất cả thuộc tính của R, thì X là siêu khóa. Ngược lại, kết luận X không phải là siêu khóa Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 19
  20. BAO ĐÓNG CÁC THUỘC TÍNH Ví dụ • Quan hệ R với các phụ thuộc hàm AB → C(1), BC → AD(2), D → E(3), và CF → B(4). • Kiểm tra sự tồn tại của phụ thuộc hàm AB → D Tính {AB}+ = {A,B,C,D,E} Do {D}  {AB}+, nên tồn tại AB → D • Kiểm tra sự tồn tại của phụ thuộc hàm D → A Tính {D}+ = {D,E} Do {A}  {D}+, nên không tồn tại D → A Khoa Công nghệ Thông tin - Trƣờng Đại học Ngân hàng 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2