1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Lý thuyết cơ sở dữ liệu - Chương 4: Phụ thuộc hàm

42 7 0

Đ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

Nội dung

Bài giảng Lý thuyết cơ sở dữ liệu - Chương 4: Phụ thuộc hàm cung cấp cho học viên những kiến thức về định nghĩa phụ thuộc hàm; biểu diễn phụ thuộc hàm; hệ tiên đề Amstrong; bao đóng - closure; tập phụ thuộc hàm tương đương;... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!

CHƯƠNG IV: PHỤ THUỘC HËM I Giới thiệu ¡ Functional Dependency ¡ Phụ thuộc hàm khái niệm xây dựng để mô tả ràng buộc logic CSDL - công cụ để biểu diễn ràng buộc logic thuộc tính quan hệ 8/9/21 8:06 AM *Định nghĩa PTH ¡Cho quan hệ R(U), U = {A1, A2,…An} tập thuộc tính Cho X,Y tập thuộc tính thuộc U ¡Nói X xác định hàm Y hay Y phụ thuộc hàm vào X, ký hiệu X®Y, với quan hệ (bộ) r xác định R(U) với hai t1 t2 mà t1[X] = t2[X] t1[Y] = t2[Y] ¡Cách đọc khác: X xác định Y (hay X kéo theo Y) -X gọi vế trái PTH, Y vế phải acủa PTH ¡Ký hiệu: F:= { f : Lj → Rj | Lj, Rj ! Ω } tập phụ thuộc hàm thuộc tính Ω 8/9/21 8:06 AM ¡ Ví dụ: HOADON (soHD, NgayLap, TongGiaTri) CHITIET_HOADON (SoHD, MaHang, SoLuong, DonGia, ThanhTien) - SoHD ® NgayLap SoHD ® TongGiaTri SoHD, MaHang ® SoLuong SoHD, MaHang ® DonGia SoHD, MaHang ® ThanhTien 8/9/21 8:06 AM ¡ Biểu diễn phụ thuộc hàm: - Liệt kê thuộc tính, dùng đường nối mũi tên từ thuộc tính vế trái đến thuộc tính vế phải tất phụ thuộc hàm ¡ Ví dụ: MƯỢN( Sốthẻ, Mãsốsách, Tênngườimượn, Tênsách, Ngàymượn ) - Với phụ thuộc hàm: FD1: Sốthẻ ® Tênngườimượn FD2: Mãsốsách ® Tênsách FD3: Sốthẻ, Mãsốsách ® Ngàymượn ¡ Có sơ đồ phụ thuộc hàm sau: Sốthẻ Mã số sách Tên người mượn Tên sách Ngàymượn FD2 FD1 FD3 8/9/21 8:06 AM II Hệ ti•n đề Amstrong ¡ Năm 1974, Amstrong đưa hệ luật dẫn hay tính chất phụ thuộc hàm, gọi hệ tiên đề Amstrong ¡ Hệ tiên đề Amstrong gồm nguyên tắc biến đổi PTH 8/9/21 8:06 AM 13 * Hệ ti•n đề Amstrong: ¡ Cho X, Y, Z, W Í U Ký hiệu: XY = XÈY Ta có luật sau : Luật phản xạ: Nếu Y Í X X® Y MaNV, HoTen, NgaySinh ® HoTen, NgaySinh VD: Luật bổ sung - gia tăng: Nếu X®Y XZ®YZ MaNV, NgaySinh ® HoTen, NgaySinh VD: Nếu MaNV ® HoTen Luật bắc cầu: Nếu X®Y Y®Z X® Z VD: Nếu có MaNV, Hoten ® MaP MaP ® TenPhong,DiaChi MaNV, Hoten ® TenPhong, DiaChi Luật tựa bắc cầu: Nếu X®Y WY®Z XW®Z VD: MaNV ® HoTen HoTen, NgaySinh ® HSL MaNV, NgaySinh ® HSL Luật hợp: Nếu X®Y X®Z X®YZ VD: MaSV ® HoTen, MaSV ® NgaySinh MaSV ® HoTen, NgaySinh Luật tách: Nếu X®Y Z Í Y X®Z VD: MaSV ® HoTen, NgaySinh MaSV ® HoTen, MaSV ® NgaySinh 8/9/21 8:06 AM 14 ¡ Ví dụ: Cho R = {ABC} tập F = { AB®C, C®A } Áp dụng hệ tiên đề Amstrong CMR: BC®ABC Thực hiện: Từ C ® A Có: BC ® AB (luật tăng cường thêm B) Từ AB ® C Có: AB ® ABC (luật tăng cường thêm AB) Có BC ® ABC (bắc cầu từ (2) (4)) Vậy tồn BC®ABC 8/9/21 8:06 AM 17 ¡ Ví dụ: Cho R = { A, B, C, E, F } F= { AB C, C B , ABC E, F A } Áp dụng hệ tiên đề Amstrong CMR: FB E 8/9/21 8:06 AM 18 III Bao đ—ng - Closure Các khái niệm ¡ Gọi F tập pth tập thuộc tính U, X Í U ¡ Bao đóng tập thuộc tính X: tất thuộc tính A mà phụ thuộc hàm X ® A suy diễn logic từ F nhờ hệ tiên đề Amstrong Kí hiệu: X+ X+ = { AẻU | X đ A ẻ F+ } ó Là tập tất thuộc tính A mà suy từ X ¡ Bao đóng phụ thuộc hàm: tập tất PTH suy diễn logic từ tập pth F - F+ := {X→Y | X,Y !U X→Y suy dẫn logic từ F} Nếu F+ = F F họ đầy đủ pth 8/9/21 8:06 AM 20 V’ dụ: ¡ Cho LĐQH với R = {ABCDEF} tập PTH F = {AB®C, C®D, AD®E, F®A} ¡ Tìm khóa lược đồ quan hệ 8/9/21 8:06 AM 47 Thuật to‡n t“m tất c‡c kh—a ¡ Tập thuộc tính nguồn (TN) - thuộc tính xuất vế trái, không xuất vế phải pth - thuộc tính khơng xuất vế trái lẫn vế phải pth ¡ Tập thuộc tính đích (TĐ) - thuộc tính xuất vế phải không xuất vế trái pth ¡ Tập thuộc tính trung gian (TG) - Các thuộc tính vế trái lẫn vế phải pth 8/9/21 8:06 AM 53 * Thuật to‡n t“m tất c‡c kh—a ¡ Bước 1: Tính tập TN tập TG ¡ Bước 2: - Nếu TG = 0(rỗng) K = TN => kết thúc tìm khóa - Ngược lại qua bước ¡ Bước 3: Tính TN! - Nếu TN! = U, kết luận có khóa TN - Ngược lại qua bước ¡ Bước 4: tìm tất tập Xi tập trung gian (TG) TG={A,B} => X1={}; X2={A}; X3={B}; X4={AB} ¡ Bước 5: tìm siêu khóa Si theo ngun tắc (TN U Xi)+ = Q+ Si = TN U {Xi} ¡ Bước 6: tìm Khóa cách loại bỏ siêu khóa khơng tối thiểu (loại bỏ siêu khố chứa/bao phủ siêu khố khác) ó xác định siêu khóa tối thiểu khố lược đồ 8/9/21 8:06 AM 55 V’ dụ ¡ Ví dụ: Cho LĐQH Q(ABCDEG) F = {EC→B, AB→C, EB→D, BG→A, AE→G} Xác định tất khóa Q 8/9/21 8:06 AM 59 V’ dụ ¡ Cho tập thuộc tính ABCD PTH F = { A ® BC, B ® C, AB ® D} Xác định tất khóa lược đồ 8/9/21 8:06 AM 60 V’ dụ ¡ Bài 1: Cho lđqh Q(ABCDEG) F = { AE ® C; CG ® A; BD ® G, GA ® E } - Xác định tất khoá Q ¡ Bài 2: Cho lđqh Q(ABCDEG) F = { EC ® B; AB ® C; EB ® D, BG ® A; AE ® G } Xác định tất khoá Q ¡ Bài 3: Cho lđqh Q(ABCDEG) F = {AB ® C; D ® EG; C ® A; BE ® C; BC ® D; CG ® BD; ACD ® B; CE ® AG } - Xác định tất khoá Q 8/9/21 8:06 AM 61 VII Thuộc t’nh dư thừa ¡ Cho F = {Lj → Rj: Lj, Rj ! Ω} ¡ Định nghĩa: ü Cho phụ thuộc hàm thuộc F có dạng A1A2 → B (vế trái phụ thuộc hàm gồm nhiều thuộc tính) ü Nói thuộc tính A1 dư thừa vế trái G+ := F – {A1A2 → B} ∪ {A2 → B} ≅ F+ § Nói cách khác thuộc tính A1 vế trái phụ thuộc A1A2 → B dư thừa, thay A1A2 → B A2 → B bao đóng F+ khơng thay đổi 8/9/21 8:06 AM 62 Thuật to‡n loại bỏ thuộc t’nh dư thừa ¡ XŽt phụ thuộc c— dạng A1A2 ! B ∈ G (kiểm tra c‡c PTH c— vế tr‡i c— nhiều thuộc t’nh) ¡ Giả sử A1 lˆ thuộc t’nh dự thừa, Loại bỏ tạm thời thuộc t’nh A1 A1 A2 ! B ŸT’nh: (A2)+ dựa tr•n F ŸKiểm tra: *Nếu B ⊆(A2)+ th“ A1 lˆ thuộc t’nh dư thừa *Ngược lại, A1 kh™ng dư thừa 8/9/21 8:06 AM 63 V’ dụ ¡ Cho lược đồ quan hệ: a= - U = {A,B,C,D,E,G,H} - F ={AàD, ABàDE, CEàG, E H} ¡ Y/c: Loại bỏ thuộc tính dư thừa VT PTH 8/9/21 8:06 AM 65 ¡ Ví dụ: Cho F = { AB ® CD, B ® C, C ® D } - Kiểm tra xem F có chứa PTH có vế trái dư thừa hay khơng? 8/9/21 8:06 AM 67 VII Tập PTH tối thiểu ¡Định nghĩa: tập pth F gọi tập phụ thuộc hàm tối thiểu nếu: -Khơng có thuộc tính vế trái dư thừa -Khơng có thuộc tính vế phải dư thừa ŸMọi vế phải pth F có thuộc tính -Khơng có phụ thuộc hàm F dư thừa 8/9/21 8:06 AM 68 *Thuật to‡n t“m PTH tối thiểu -Bước 1: Loại khỏi F PTH có thuộc tính vế trái dư thừa -Bước 2: Đưa tất PTH F dạng PTH vế phải có thuộc tính -Bước 3: Loại khỏi F PTH dư thừa 8/9/21 8:06 AM 73 V’ dụ: ¡ Cho tập thuộc tính R = {P,C,H,A,R,T} tập phụ thuộc hàm F sau: - F = { P → CHART, CH → PART, C → T, A → R } - Tìm tập PTH tối thiểu 8/9/21 8:06 AM 76 ¡ Ví dụ: - Cho tập U={A,B,C,D,E} F = { A ®C, BD ®E, B ®D, B ®E, C ®AD } - Tìm tập PTH tối thiểu F 8/9/21 8:06 AM 81 KIỂM TRA Ð 6/3/2021 ¡ Cho lược đồ quan hệ R= < U, F> với U = (ABCDEGH) tập phụ thuộc hàm F ¡ F = {A D, AB DE, CE àG, H} - Tìm tất khóa lược đồ - Loại bỏ thuộc tính VT dư thừa (nếu có) ¡ Yêu cầu: ¡ Làm file word nộp lên hệ thống LMS (trước 11H15) ¡ Trong file gồm: họ tên đầy đủ ¡ Yêu cầu đặt tên file: CSDL-ST7-MSV-Họ tên.docx 8/9/21 8:06 AM 83 ... {AB->C; D->EG; C->A; BE->C; BC->D; CG->BD; ACD->B; CE->AG } Cho X = AD Tính bao đóng (AD)+ 8/9/21 8:06 AM 25 Bˆi to‡n thˆnh vi•n ¡ Dùng để xác định phụ thuộc hàm có thành viên tập phụ thuộc hàm. .. tập pth F gọi tập phụ thuộc hàm tối thiểu nếu: -Khơng có thuộc tính vế trái dư thừa -Khơng có thuộc tính vế phải dư thừa ŸMọi vế phải pth F có thuộc tính -Khơng có phụ thuộc hàm F dư thừa 8/9/21... nghĩa: ü Cho phụ thuộc hàm thuộc F có dạng A1A2 → B (vế trái phụ thuộc hàm gồm nhiều thuộc tính) ü Nói thuộc tính A1 dư thừa vế trái G+ := F – {A1A2 → B} ∪ {A2 → B} ≅ F+ § Nói cách khác thuộc tính

Ngày đăng: 25/01/2022, 09:57

TỪ KHÓA LIÊN QUAN