Bài giảng Cơ sở dữ liệu: Chương 6 - Trịnh Xuân

10 13 0
Bài giảng Cơ sở dữ liệu: Chương 6 - Trịnh Xuân

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

Thông tin tài liệu

Chương 6: Chuẩn hóa cơ sở dữ liệu (Data normalization). Nội dung chương này gồm có: Một số khái niệm cơ bản, phụ thuộc hàm đầy đủ, phụ thuộc hàm bắc cầu, chuẩn hóa lược đồ quan hệ, các bất thường của quan hệ ở 1NF, thuật toán kiểm tra dạng chuẩn 2,... Mời các bạn cùng tham khảo.

I Một số khái niệm !  Định nghĩa: Phép tách lược đồ quan hệ R= {A1, A2, An} việc thay lược đồ quan hệ R tập lược đồ {R1, R2, , Rk}, Ri ⊂ R, i = 1, ,k - Ri lược đồ R = R1 ∪ R2 ∪ ∪ Rk Khơng địi hỏi Ri phải phân biệt Mục đích: Loại bỏ dị thường liệu CHƯƠNG VIII: CHUẨN HÓA CSDL Data normalization Cơ sở liệu Ví dụ Phép tách-Kết nối không mát thông tin MSKH TÊNKH TP PVC MSMH TÊNMH ĐG SL S1 An HCM 01 P1 Táo 650 300 S1 An HCM 01 P2 Cam 500 200 S1 An HCM 01 P3 Chanh 450 400 S2 Hòa HN 02 P1 Táo 650 100 S2 Hoà HN 02 P3 Chanh 450 300 S3 Thanh NT 03 P2 Cam 500 200 S4 Trang NT 03 P2 Cam 500 210 MaCTY ĐC MH Thanh Xuân 10000 Thanh Xuân 15000 Đống Đa 12000 Đống Đa 16000 ĐC MaCTY MaCTY Thanh Xuân Đống Đa !  Giả sử R tách thành lược đồ R1, R2, , Rk F tập pth !  Nói phép tách R thành lược đồ R1, R2, …, Rk tách - kết nối không mát thông tin F với quan hệ r R thoả F GIA Cơ sở liệu r = ΠR1(r) * Π R2 (r) * * Π Rk(r) MH GIA 1 10000 15000 12000 2 16000 tức r tạo nên từ phép kết nối tự nhiên hình chiếu Ri, i= ,k Phụ thuộc hàm đầy đủ Cơ sở liệu Phụ thuộc hàm bắc cầu -  X → Y !  Cho lược đồ quan hệ α = (U,F), X ⊆ U, A ∈ U, thuộc tính A gọi phụ thuộc hàm bắc cầu vào tập thuộc tính X ∃ Y ⊆ X để: -  X → Y, Y → A -  Nhưng Y /! X với A ∉ XY -  ∀Z ⊂ X Z /→ Y, tập thực X xác định hàm Y !  VD: R(ABCDE), F = {AB ! CD, D ! E}, khoá: AB !  Cho lược đồ quan hệ (U,F), X, Y⊆U !  Khi Y gọi phụ thuộc hàm đầy đủ vào tập X Y phụ thuộc hàm vào X không phụ thuộc hàm vào tập thực X, tức là: -  Ta có: AB ! E pth bắc cầu vì: ∃ D ⊂ R: !  VD: F = {AB ! C, A ! C} -  Ta có pth AB ! C khơng phải pth đầy đủ có pth A !C Cơ sở liệu "  AB ! D "  D /! AB Cơ sở liệu D!E E ∉ ABD Thuật tốn II Kiểm tra phép tách-kết nối khơng thơng tin !  Input: -  R = {A1, A2, , An} – n thuộc tính tập pth F -  phép tách p = (R1, R2, , Rk) – k lược đồ !  Output: Kiểm tra phép tách có mát thông tin hay không ? Bước 1: Lập bảng với n+1 cột k+1 hàng - Cột thứ j# thuộc tính thứ j lược đồ (Aj) - Hàng thứ i # lược đồ Ri - Tại (i,j) điền kí hiệu aj Aj ∈ Ri, ngược lại điền kí hiệu bij Bước 2: thay đổi giá trị cho bảng !  Lần lượt xét pth (X→Y) ∈ F !  Nếu tồn hai hàng mà tất cột ứng với thuộc tính X có giá trị phải thuộc tính Y " nếu có giá trị aj cột tương ứng với thuộc tính Y thay hết thành aj, không thay hết ký hiệu bij !  Lặp lại bước (kể lặp lại phụ thuộc hàm áp dụng) không làm thay đổi bảng Bước 3: Đánh giá kết - Nếu xuất hàng gồm tồn kí hiệu a1, a2, , an phép tách-kết nối khơng mát thông tin, - ngược lại phép tách-kết nối mát thông tin Cơ sở liệu Cơ sở liệu Ví dụ 1: !  Cho quan hệ: CungCap( MaNCC, Sname, Add, Item, Price ) !  Tập phụ thuộc hàm: MaNCC→Sname,Add, Sname,Item→Price !  Kiểm tra phép tách thành hai sơ đồ CongTy{MaNCC, Sname, Add} MatHang{MaNCC, Item, Price} có mát thơng tin? S# !  Lập bảng: hàng – cột S#, Sname, Add a1 S#, Item, Price a1 !  Xét S# → Sname, Add: -  có hai hàng thuộc tính S# -  làm kí hiệu thuộc tính Sname Add "  làm b22 thành a2 "  làm b23 thành a3 !  Bảng có hàng bao gồm ký hiệu a => phép tách không mát thơng tin Cơ sở liệu 10 Ví dụ: S# Sname Sname Add Item Price a2 a3 b14 b15 b22 b23 a4 a5 Add Item Price a1 a2 a3 b14 b15 a1 b22 a2 b23 a3 a4 a5 Cơ sở liệu 11 Ví dụ !  R={MSNV,TenNV,MaSoDA,TenDA, DiadiemDa, Sogio} !  F = { MSNV ! TenNV, MasoDA ! {TenDA, DiadiemDA}, {MaSoDA, MSNV} ! Sogio } !  Kiểm tra phép tách thành -  R1 = { MSNV, TenNV} -  R2 = { MaSoDa, TenDA, DiadiemDA} -  R3 = { MSNV, MasoDA, Sogio} !  R={MSNV, TenNV, MaSoDA, TenDA, DiadiemDa, Sogio} !  F = { MSNV ! TenNV, MasoDA ! {TenDA, DiadiemDA}, {MaSoDA, MSNV} ! Sogio } !  Kiểm tra phép tách thành -  R1 = {TenNV, DiadiemDA} -  R2 = { MSNV, MasoDA, Sogio, TenDA, DiadiemDA} !  Có mát thơng tin? !  Có mát thơng tin? Cơ sở liệu 12 Cơ sở liệu 13 III Chuẩn hóa lược đồ quan hệ !  Chuẩn hóa trình khảo sát danh sách thuộc tính áp dụng quy tắc phân tích vào danh sách đó, biến đổi thành nhiều tập nhỏ # Tách bảng thành nhiều bảng nhỏ !  Sao cho: -  Tối thiểu việc lặp lại -  Tránh dị thường thông tin -  Xác định giải không rõ ràng, nhập nhằng suy diễn !  Các loại dạng chuẩn gồm: -  Dạng chuẩn (1NF – First Normal Form) -  Dạng chuẩn (2NF – Second Normal Form) -  Dạng chuẩn (3NF) -  Dạng chuẩn Boye Code (BCNF) BCNF 3NF 2NF 1NF Cơ sở liệu 21 Cơ sở liệu 22 Dạng chuẩn 1NF !  Lược đồ quan hệ R gọi 1NF tất thuộc tính R thoả mãn điều kiện sau: -  kiểu nguyên tố, -  giá trị thuộc tính đơn trị, -  khơng có thuộc tính có giá trị tính tốn từ số thuộc tính khác MSKH TenKH TP PVC MSMH TenMH ĐG SL S1 An HCM 01 P1 P2 Táo Cam 650 500 300 200 P3 Chanh 450 400 S2 Hòa HN 02 P1 P3 Táo Chanh 650 450 100 300 S3 Thanh NT 03 P2 Cam 500 200 S4 Trang NT 03 P2 Cam 500 210 !  Chú ý: xét dạng chuẩn khơng nói thêm dạng chuẩn xét đạt dạng chuẩn !  Biểu diễn sơ đồ dạng 1NF: R(A1,A2,A3, A4, A5) Cơ sở liệu 23 Cơ sở liệu 24 Các bất thường quan hệ 1NF ! Kết luận: Để kiểm tra lược đồ có dạng 1NF không thực kiểm tra nếu: -  Khơng có thuộc tính đa trị -  Khơng có thuộc tính phức hợp Cơ sở liệu 25 !  Lược đồ dạng 1NF gặp khó khăn thêm-xóa-sửa nhân: Tồn thuộc tính khơng khóa phụ thuộc hàm riêng phần vào khóa !  Giải quyết: đưa dạng chuẩn cao 2NF !  Nguyên MSKH TÊNKH TP PVC MSMH TÊNMH ĐG SL S1 An HCM 01 P1 Táo 650 300 S1 S1 S2 S2 S3 An An Hịa Hồ Thanh HCM HCM HN HN NT 01 01 02 02 03 P2 P3 P1 P3 P2 Cam Chanh Táo Chanh Cam 500 450 650 450 500 200 400 100 300 200 S4 Trang NT 03 P2 Cam 500 210 Chương Cơ sở liệu Dạng chuẩn 2NF Thuật toán kiểm tra dạng chuẩn !  LĐQH R gọi đạt dạng chuẩn R dạng chuẩn tất thuộc tính khơng khóa (thuộc tính khơng tham gia vào khóa) phụ thuộc hàm đầy đủ vào khóa !  Mục đích: -  Giản ước dư thừa liệu -  Tránh dị thường cập nhật gây nên dư thừa liệu !  Biểu diễn sơ đồ dạng 2NF: R(A1,A2,A3, A4, A5) Cơ sở liệu 30 !  Bước 1: Tìm tất khóa quan hệ !  Bước 2: Với khóa K, tìm bao đóng tất tập thực S K -  Chú ý: khóa có thuộc tính đơn khơng cần phải kiểm tra 2NF !  Bước 3: -  có bao đóng S+ chứa thuộc tính khơng khóa quan hệ khơng đạt chuẩn -  ngược lại quan hệ đạt chuẩn (khơng tồn S mà S+ chứa thuộc tính khơng khóa) Cơ sở liệu Thuật tốn đưa dạng 2NF Ví dụ: kiểm tra dạng 2NF quan hệ !  1- QLSV (MaSV, Ten, NS, DC, TenLop, KhoaHoc, MaMH, TenMH, Diem) F = { f1: MaSV ! Ten, NS, DC, TenLop f2: TenLop ! KhoaHoc; f3: MaMH ! TenMH; f4 : TenMH ! MaMH; f5: MaSV, MaMH ! Diem } !  Nhóm thuộc tính phụ thuộc vào phần khố thuộc tính phần tách thành quan hệ mới, lấy phần làm khố cho quan hệ !  Giữ thuộc tính phụ thuộc hồn tồn vào khố giữ lại khố quan hệ R(A1,A2,A3, A4, A5) !  2- KQHT (MaSV, MaMH, TenMH, Diem) FKQHT = { f1: MaMH ! TenMH; f2 : TenMH ! MaMH; f3: MaSV, MaMH ! Diem } R1(A2, A4) !  3- SV (MaSV, Ten, NS, DC, TenLop, KhoaHoc) FSV = { f1:MaSV ! Ten, NS, DC, TenLop; f2: TenLop ! KhoaHoc} Cơ sở liệu 33 R(A1,A2,A3, A5) 34 Ví dụ: NV( MaNV, MaPhong,TenNV, Gioitinh, Diachi,TenPhong ) Cơ sở liệu 38 !  Ví dụ 3: -  Cho R2 (Số hoá đơn, Số sản phẩm, Tên sản phẩm, Lượng yêu cầu) -  F = { Số sản phẩm ! Tên sản phẩm } -  Hỏi quan hệ có dạng 2NF khơng? Nếu chưa tách thành lược đồ dạng 2NF Kết gì? Cơ sở liệu 39 Cơ sở liệu 40 Dạng chuẩn 3NF Các bất thường quan hệ 2NF !  Khi tiến hành Thêm-Sửa-Xóa khơng thực tạo dị thường liệu !  Nguyên nhân: Tồn thuộc tính khơng khóa phụ thuộc bắc cầu vào khóa !  Giải quyết: đưa chuẩn cao 3NF !  Lược đồ R 3NF nếu: -  Ở dạng 2NF -  Mọi thuộc tính khơng khóa khơng phụ thuộc bắc cầu vào khóa quan hệ !  Xét pth X ! A -  Hoặc X siêu khóa R -  Hoặc A thuộc tính khóa R !  Sơ đồ: R(A1,A2,A3, A4, A5) Cơ sở liệu 43 Cơ sở liệu 44 Thuật toán kiểm tra dạng chuẩn !  Output: kết luận Q đạt chuẩn hay không đạt chuẩn !  Thuật tốn: -  Bước 1: tìm tất khóa Q -  Bước 2: từ F tạo tập phụ thuộc hàm tương đương F có vế phải thuộc tính -  Bước 3: Kiểm tra "  Nếu phụ thuộc hàm X!A ∈ F với A∉X có X khóa A thuộc tính khóa Q đạt chuẩn "  ngược lại Q không đạt chuẩn (∃ X → A mà X khơng khóa A khơng thuộc tính khóa) Cơ sở liệu 47 !  Ví dụ 1: Xét quan hệ CNHAN nhu sau: -  CNHAN(MACN, LOAINGHE, HESOTHUONG) -  pth: "  MACN → LOAINGHE "  MACN → HESOTHUONG "  LOAINGHE → HESOTHUONG "  Hỏi lược đồ có đạt chuẩn khơng? Cơ sở liệu 48 Đưa dạng 3NF ! Ví dụ 2: Cho lược đồ quan hệ Q(A,B,C,D) F = { AB !C, D !B, C !ABD} Hỏi Q có đạt chuẩn không? !  Tạo quan hệ gồm thuộc tính phụ thuộc bắc cầu vào thuộc tính khóa, lấy thuộc tính bắc cầu làm khố !  Giữ lại thuộc tính phụ thuộc trực tiếp vào khố !  Thuộc tính bắc cầu nằm hai quan hệ R(A1,A2, A3, A4, A5) R1(A2, A4) R(A1, A2, A3, A5) Cơ sở liệu 49 Cơ sở liệu !  Ví dụ 4: Xét lược đồ quan hệ !  NHÂNVIÊN_ĐƠNVỊ( HọtênNV, MãsốNV, Ngàysinh, Địachỉ, MãsốĐV, TênĐV, MãsốNQL) !  Với phụ thuộc hàm: Ví dụ: NV(MaNV,MaPhong,TenNV,Gioitinh,Diachi,TenPhong) -  MãsốNV→HọtênNV, Ngàysinh,Địachỉ,MãsốĐV,TênĐV, MãsốNQL -  MãsốĐV→ TênĐV, Mã sốNQL !  Lược đồ có dạng 3NF khơng? Tách 3NF Kết 3NF gì? Cơ sở liệu 51 Ví dụ: Xây dựng chuẩn 3NF Cơ sở liệu 52 Kết 2NF !  Ví dụ:Tập pth F định nghĩa R sau: !  F= { MSKH ! TÊNKH,TP MSMH ! TÊNMH,ĐG MSKH, MSMH ! SL TP ! PVC} !  Khoá: MSKH, MSMH $ đưa 3NF MSKH TÊNKH TP PVC MSKH S1 MSMH P1 SL 300 S1 An HCM 01 S1 P2 200 S2 Hoà HN 02 S1 P3 400 S2 P1 100 S3 Thanh NT 03 S2 P3 300 S4 Trang NT 03 S3 P2 200 S4 P2 210 MSKH TÊNKH TP PVC MSMH TÊNMH ĐG SL FR1 = {MSKH ! TÊNKH, TP S1 S1 S1 S2 An An An Hòa HCM HCM HCM HN 01 01 01 02 P1 P2 P3 P1 Táo Cam Chanh Táo 650 500 450 650 300 200 400 100 TP ! PVC} S2 S3 Hoà Thanh HN NT 02 03 P3 P2 Chanh Cam 450 500 300 200 S4 Trang NT 03 P2 Cam 500 210 Cơ sở liệu 55 Kết 3NF TÊNKH TP TP PVC S1 An HCM HCM 01 S2 Hoà HN HN 02 S3 Bình NT NT 03 S4 Trang NT FVC = {TP ! PVC} P1 SL 300 S1 MSKH P2 200 S1 P3 400 S2 P1 100 S1 P1 Táo 650 MSMH P2 Cam 500 S2 P3 300 P3 Chanh 450 S3 P2 200 S4 P2 210 FMH = {MSMH! TÊNMH, ĐG} Cơ sở liệu P1 ĐG Táo 650 P2 Cam 500 P3 Chanh 450 FMH = {MSMH! TÊNMH, ĐG} Cơ sở liệu 56 !  Định nghĩa: Lược đồ quan hệ R dạng chuẩn BCNF với pth X→A R, A∉X X siêu khóa nhỏ ! thuộc tính phụ thuộc trực tiếp vào khóa !  Sơ đồ: FKH = {MSKH ! TÊNKH, TP} ĐG MSMH TÊNMH Dạng chuẩn BCNF (Boyce Codd) MSKH MSMH TÊNMH FĐH = {MSKH, MSMH ! SL} R(A1,A2,A3, A4, A5) FĐH = {MSKH, MSMH ! SL} 57 Cơ sở liệu 58 Thuật toán kiểm tra dạng chuẩn BCNF !  Bước 1: Tìm tất khóa quan hệ Q !  Bước 2: Từ tập pth F tạo tập pth tương đương với F gọi F có vế phải thuộc tính !  Bước 3: ! Ví dụ 1: Cho R = { C, S, Z}, Phụ thuộc hàm: CS→Z, Z →C ! Xác định dạng chuẩn cao -  pth X→A ∈F có X khóa Q đạt chuẩn BCNF -  ngược lại Q không đạt chuẩn BCNF (∃ X → A mà X khơng khóa) # mọi pth có vế trái khóa đạt chuẩn BCNF ngược lại khơng Cơ sở liệu 60 Cơ sở liệu 61 Đưa dạng BCNF !  Loại bỏ thuộc tính khóa phụ thuộc hàm vào thuộc tính khơng khóa khỏi quan hệ tạo thành quan hệ riêng có khố thuộc tính khơng khóa gây phụ thuộc Ví dụ: Hoc(MaSV, MaMon, Diem, MaGV) R(A1, A2, A3, A4, A5) R1(A4, A2) Kết gì? R(A1, A4, A3, A5) Cơ sở liệu 63 Cơ sở liệu 64 * Quá trình chuẩn hóa 1NF R(A1,A2,A3, A4, A5) 2NF R(A1,A2,A3, A4, A5) 3NF R(A1,A2,A3, A4, A5) BCNF R(A1,A2,A3, A4, A5) Cơ sở liệu 66 IV Chuẩn hóa quan hệ Thuật tốn phân rã thành BCNF !  Chuẩn hóa quan hệ việc phân rã lược đồ quan hệ thành lược đồ dạng chuẩn dạng chuẩn BCNF cho bảo toàn phụ thuộc không mát liệu Cơ sở liệu !  Input: Quan hệ R tập PTH F !  Output: tách thành lược đồ BCNF !  Các bước: -  Ban đầu phép tách S R -  Chọn pth X!A X khơng chứa khóa S A∉X ! PTH vi phạm BCNF -  Thay S S1 S2 Trong đó: "  S1 = XA "  S2 = S \ A (loại thuộc tính A khỏi S) -  Q trình tiếp tục tất lược đồ quan hệ BCNF 67 Cơ sở liệu 68 Ví dụ: Tách lược đồ dạng BCNF !  Cho lược đồ R(CTHRSG), đó: -  C – Course; T – Teacher; H – Hour: Giờ học -  R – Room; S – Student; G – Group !  PTH F = { C!T; HR!C; HT!R; CS!G; HS!R } !  Khóa: HS C T: Mỗi khố học (course) có thầy (teacher) HR C: Tại thời điểm (Hour) phịng học (room) có khố học HT R: Tại thời điểm giáo viên phòng CS G: Một sinh viên học course lớp HS R: Một SV, thời điểm định phòng C – Cource T – Teacher H – Hour R – Room S – Student G – Group CSDL Tâm 7h 21 N.V Hà CSDL.1 CSDL Tâm 7h 21 T.V Huy CSDL.1 CSDL Tâm 7h 21 Đ.T Lan CSDL.1 CTDL Xuân 9h 22 N.V Hà CTDL.1 CTDL Xuân 9h 22 Đ.T Lan CTDL.1 CTDL Xuân 9h 22 L.T Linh CTDL.1 TRR Linh 7h 23 T.V An TRR.1 TRR Linh 7h 23 Đ.V Hưởng TRR.2 Cơ sở liệu !  Xét CS!G !  Xét C!T -  Tách thành R1(CSG) R2(CTHRS) R1(CSG) C– Cource -  Tách thành R21(CT) R22(CHRS) R2(CTHRS) C– Cource T– Teacher R21(CT) R1(CSG) S– Student G– Group CSDL N.V Hà CSDL.1 CSDL Tâm 7h 21 N.V Hà CSDL T.V Huy CSDL.1 CSDL Tâm 7h 21 CSDL Đ.T Lan CSDL.1 CSDL Tâm 7h CTDL N.V Hà CTDL.1 CTDL Xuân 9h CTDL Đ.T Lan CTDL.1 CTDL Xuân CTDL L.T Linh CTDL.1 CTDL TRR T.V An TRR.1 TRR TRR Đ.V Hưởng TRR.2 TRR Cơ sở liệu 74 H– R– S – Student Hour Room R22(CHRS) S – Student G – Group C– Cource T– Teacher C– Cource H– Hour R– Room CSDL N.V Hà CSDL.1 CSDL Tâm CSDL 7h 21 N.V Hà T.V Huy CSDL T.V Huy CSDL.1 CTDL Xuân CSDL 7h 21 T.V Huy 21 Đ.T Lan CSDL Đ.T Lan CSDL.1 TRR Linh CSDL 7h 21 Đ.T Lan 22 N.V Hà CTDL N.V Hà CTDL.1 CTDL 9h 22 N.V Hà 9h 22 Đ.T Lan CTDL Đ.T Lan CTDL.1 CTDL 9h 22 Đ.T Lan Xuân 9h 22 L.T Linh CTDL L.T Linh CTDL.1 CTDL 9h 22 L.T Linh Linh 7h 23 T.V An TRR T.V An TRR.2 TRR 7h 23 T.V An Linh 7h 23 Đ.V Hưởng TRR Đ.V Hưởng TRR.2 TRR 7h 23 Đ.V Hưởng 75 C– Cource Cơ sở liệu S – Student 76 Thuật toán phân rã thành 3NF R221(CHR) !  Xét CH!R -  Tách thành R221(CHR) R222(CHS) C– Cource H– Hour R– Room CSDL 7h 21 CTDL 9h 22 TRR 7h 23 -  Loại bỏ thuộc tính R thuộc tính khơng liên quan đến PTH F (khơng có mặt hai vế PTH) -  Nếu có PTH F liên quan đến tất thuộc tính R kết R (không tách nữa) -  Xét PTH X!A vi phạm 3NF (phụ thuộc bắc cầu vào khóa) tách thành lược đồ XA R222(CHS) R21(CT) R1(CSG) T– Teacher C– Cource H– Hour CSDL Tâm CSDL 7h N.V Hà CTDL Xuân CSDL 7h T.V Huy TRR Linh CSDL 7h Đ.T Lan CTDL 9h N.V Hà CTDL.1 CTDL 9h Đ.T Lan L.T Linh CTDL.1 CTDL 9h L.T Linh TRR T.V An TRR.2 TRR 7h T.V An TRR Đ.V Hưởng TRR.2 TRR 7h Đ.V Hưởng S – Student G – Group C– Cource CSDL N.V Hà CSDL.1 CSDL T.V Huy CSDL.1 CSDL Đ.T Lan CSDL.1 CTDL N.V Hà CTDL.1 CTDL Đ.T Lan CTDL C– Cource !  Input: Lược đồ R tập phụ thuộc hàm F !  Output: Tách thành lược đồ 3NF !  Thuật toán: S – Student "  Nếu tồn PTH X!A1, X!A2, …, X!An gộp thành XA1A2 An Cơ sở liệu 77 Cơ sở liệu 79 Ví dụ: Tách 3NF !  Cho lược đồ R(CTHRSG), đó: -  C – Course; T – Teacher; H – Hour: Giờ học -  R – Room; S – Student; G – Group !  PTH F={ C!T; HR!C; HT!R; CS!G; HS!R} !  Khóa: CHS % Xét C!T vi phạm 3NF (phụ thuộc bắc cầu vào khoá), % Tách R thành R1(C,T) R2(C,H,R,S,G) C – Cource R2 R1 S – Student G– Group 21 N.V Hà CSDL.1 21 T.V Huy CSDL.1 7h 21 Đ.T Lan CSDL.1 CTDL 9h 22 N.V Hà CTDL.1 CTDL.1 CTDL 9h 22 Đ.T Lan CTDL.1 L.T Linh CTDL.1 CTDL 9h 22 L.T Linh CTDL.1 23 T.V An TRR.1 TRR 7h 23 T.V An TRR.1 23 Đ.V Hưởng TRR.1 TRR 7h 23 Đ.V Hưởng TRR.1 R T – Teacher H – Hour R – Room CSDL Tâm 7h CSDL Tâm 7h CSDL Tâm CTDL C– Cource T– Teacher C– Cource H– Hour R– Room S – Student G – Group 21 N.V Hà CSDL.1 CSDL Tâm CSDL 7h 21 T.V Huy CSDL.1 CTDL Xuân CSDL 7h 7h 21 Đ.T Lan CSDL.1 TRR Linh CSDL Xuân 9h 22 N.V Hà CTDL.1 CTDL Xuân 9h 22 Đ.T Lan CTDL Xuân 9h 22 TRR Linh 7h TRR Linh 7h Cơ sở liệu 80 Cơ sở liệu 81 R1 % Xét CS!G vi phạm 3NF(phụ thuộc phận vào khoá), % tách R2 thành R21(C,S,G) R22(C,H,R,S) R21 C– Cource C– Cource T– Teacher CSDL Tâm CTDL Xuân TRR Linh R22 S – Student G– Group CSDL N.V Hà CSDL.1 CSDL T.V Huy CSDL R1 C– Cource R222 R21 C– S – Student Cource G– Group H– Hour R– Room S – Student H– Hour R– Room S – Student CSDL N.V Hà CSDL.1 7h 21 N.V Hà CSDL 7h 21 N.V Hà CSDL T.V Huy CSDL.1 7h 21 T.V Huy CSDL.1 CSDL 7h 21 T.V Huy CSDL Đ.T Lan CSDL.1 7h 21 Đ.T Lan Đ.T Lan CSDL.1 CSDL 7h 21 Đ.T Lan CTDL N.V Hà CTDL.1 9h 22 CTDL N.V Hà CTDL.1 CTDL 9h 22 N.V Hà CTDL Đ.T Lan CTDL.1 9h CTDL Đ.T Lan CTDL.1 CTDL 9h 22 Đ.T Lan CTDL L.T Linh CTDL.1 9h CTDL L.T Linh CTDL.1 CTDL 9h 22 L.T Linh TRR T.V An TRR.1 TRR T.V An TRR.1 TRR 7h 23 T.V An TRR Đ.V Hưởng TRR.1 TRR.1 TRR 7h 23 Đ.V Hưởng TRR Đ.V Hưởng Cơ sở liệu C– Cource %  Xét HR!C vi phạm 3NF, tách R22 thành R221(H,R,C) R222(H,S,R) 82 Cơ sở liệu T– Teacher CSDL Tâm CTDL Xuân TRR Linh R221 N.V Hà C– Cource H– Hour R– Room 22 Đ.T Lan CSDL 7h 21 22 L.T Linh CTDL 9h 22 7h 23 T.V An TRR 7h 23 7h 23 Đ.V Hưởng 83 The End! Cơ sở liệu 85 Cơ sở liệu 90 ... R(A1, A4, A3, A5) Cơ sở liệu 63 Cơ sở liệu 64 * Quá trình chuẩn hóa 1NF R(A1,A2,A3, A4, A5) 2NF R(A1,A2,A3, A4, A5) 3NF R(A1,A2,A3, A4, A5) BCNF R(A1,A2,A3, A4, A5) Cơ sở liệu 66 IV Chuẩn hóa quan... A5) Cơ sở liệu 23 Cơ sở liệu 24 Các bất thường quan hệ 1NF ! Kết luận: Để kiểm tra lược đồ có dạng 1NF khơng thực kiểm tra nếu: -? ?? Khơng có thuộc tính đa trị -? ?? Khơng có thuộc tính phức hợp Cơ sở. .. cao -? ?? pth X→A ∈F có X khóa Q đạt chuẩn BCNF -? ?? ngược lại Q không đạt chuẩn BCNF (∃ X → A mà X khơng khóa) # mọi pth có vế trái khóa đạt chuẩn BCNF ngược lại khơng Cơ sở liệu 60 Cơ sở liệu 61

Ngày đăng: 21/05/2021, 14:21

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

Tài liệu liên quan