Bài giảng Cơ sở dữ liệu - Chương 6: Chuẩn hóa cơ sở dữ liệu - ThS. Lê Thị Ngọc Thảo
lượt xem 20
download
Bài giảng "Cơ sở dữ liệu - Chương 6: Chuẩn hóa cơ sở dữ liệu" cung cấp cho người đọc các kiến thức về cơ sở dữ liệu, dạng chuẩn cơ sở dữ liệu 1, dạng chuẩn cơ sở dữ liệu 2, dạng chuẩn cơ sở dữ liệu 3, dạng chuẩn Boyce-Codd, chuẩn hóa LĐ cơ sở dữ liệu - Phương pháp phân dã. Mời các bạn cùng tham khảo nội dung chi tiết.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Cơ sở dữ liệu - Chương 6: Chuẩn hóa cơ sở dữ liệu - ThS. Lê Thị Ngọc Thảo
- CƠ SỞ DỮ LIỆU Ệ GV: ThS. Lê Thị Ngọc Thảo Chương 6: Chuẩn hóa CSDL 6.1. Giới thiệu 6 2 Dạng 6.2. D chuẩn h ẩ 1 6.3. Dạng chuẩn 2 6 4 Dạng 6.4. D chuẩn h ẩ 3 6.5. Dạng chuẩn Boyce-Codd 6 6 Chuẩn hóa LĐ CSDL - phương pháp phân rã 6.6. 6.7. Ví dụ www.tdt.edu.vn 2 Cơ Sở Dữ Liệu
- 6.1. Giới thiệu Xét quan hệ ĐẶT_HÀNG (SốĐH, NgàyĐH, MãKH, MãHH, SốLượng ) Số ĐH NgàyĐH MãKH MãHH SốLượng DH01 5/1/99 KH01 H01 50 DH02 13/2/99 KH05 H02 30 DH02 13/2/99 KH05 H03 40 Với tập Pth F = { SốĐH Æ NgàyĐH, MãKH ; SốĐH, ố MãHH Æ SốLượng ố } => Có Trùng lắp thông tin www.tdt.edu.vn 3 Cơ Sở Dữ Liệu 6.1. Giới thiệu Sự trùng lắp thông tin dẫn đến: ¾Tăng chí phí lưu trữ ¾Tăng chi phí kiểm tra RBTV ¾Thiếu nhất quán ¾Vi phạm tính toàn vẹn của dữ liệu www.tdt.edu.vn 4 Cơ Sở Dữ Liệu
- 6.1. Giới thiệu Tổ chức lại thành 2 quan hệ như sau: ĐẶT HÀNG ( SốĐH, ĐẶT_HÀNG SốĐH NgàyĐH, NgàyĐH MãKH ) Với F1 = { SốĐH Æ NgàyĐH, MãKH } CHITIẾT_ĐH Ế (SốĐH, ố MãHH, SốLượng ố ) Với F2 = { SốĐH, MãHH Æ SốLượng } => Khôngg còn xảyy ra tình trạng ạ g trùngg lắp p thôngg tin www.tdt.edu.vn 5 Cơ Sở Dữ Liệu 6.1. Giới thiệu Đánh giá chất lượng thiết kế của lược đồ CSDL E.F.Codd E F C dd đưa đ ra 3 dạng d chuẩn h ẩ (Normal (N lFForm)) R.F.Boyce và E.F.Codd cải tiến dạng chuẩn 3 gọi là dạng chuẩn ẩ Boyce-Codd (BC) Các dạng chuẩn được định nghĩa dựa trên khái niệm PTH www.tdt.edu.vn 6 Cơ Sở Dữ Liệu
- 6.1. Giới thiệu Mục đích của quá trình chuẩn hóa Biểu Biể diễn diễ được đ mọii quan hệ trong t CSDL Tránh sai sót khi thêm, xóa, sửa dữ liệu Tránh phải xây dựng lại cấu trúc của các quan hệ khi cần đến các kiểu dữ liệu mới www.tdt.edu.vn 7 Cơ Sở Dữ Liệu 6.2. DẠNG CHUẨN 1 (1NF) Định nghĩa: Một lược đồ quan hệ Q được gọi là đạt dạng chuẩn 1 nếu mọi thuộc tính của Q đều là thuộc tính đơn Một lược đồ CSDL được gọi là đạt dạng chuẩn 1 nếu mọi lược đồ quan hệ con Qi của nó đều đạt dạng chuẩn 1 www.tdt.edu.vn 8 Cơ Sở Dữ Liệu
- 6.2. DẠNG CHUẨN 1 (1NF) Thuộc tính đơn: Giả sử có lược ợ đồ qquan hệệ Q Q. Một thuộc tính A của Q gọi là thuộc tính đơn nếu nó không phải là một sự tích hợp của nhiều thuộc tính khác Ví dụ 1: CHUYÊN CHUYÊN_MÔN MÔN (MÃGV, (MÃGV MÔN ) MAGV MÔN GV01 PASC CTDL PASC, GV02 CSDL, PT Î Môn không là thuộc tính đơn www.tdt.edu.vn 9 Cơ Sở Dữ Liệu 6.2. DẠNG CHUẨN 1 (1NF) Ví dụ1 : Î Quan hệ CHUYÊN_MÔN CHUYÊN MÔN không đạt dạng chuẩn 1 ÎKhắc phục: CHUYÊN_MÔN (MÃGV, MÔN ) MAGV MÔN GV01 PASC GV01 CTDL GV02 CSDL GV02 PTTKHT www.tdt.edu.vn 10 Cơ Sở Dữ Liệu
- 6.3. DẠNG CHUẨN 2 (2NF) Định nghĩa: Một lược đồ quan hệ Q gọi là đạt dạng chuẩn 2 nếu: • Q đạt dạng chuẩn 1 • Mọi thuộc tính không khóa của Q đều phụ thuộc đầy đủ vào các khóa của Q Một lược đồ CSDL được gọi là đạt dạng chuẩn 2 nếu mọi lược đồ quan hệ con Qi của nó đều ở dạng chuẩn 2 www.tdt.edu.vn 11 Cơ Sở Dữ Liệu 6.3. DẠNG CHUẨN 2 (2NF) Phụ thuộc đầy đủ: Giả sử có 1 lược đồ quan hệ Q và tập PTH F F. Thuộc tính A được gọi là phụ thuộc đầy đủ vào 1 tậ thuộc tập th ộ tính tí h X nếu: ế • A ∈ X+ F • X Æ A là phụ h thuộc th ộ hàm hà nguyên ê tố ( không tồn tại X’ ⊆ X, mà X’ Æ A ) www.tdt.edu.vn 12 Cơ Sở Dữ Liệu
- 6.3. DẠNG CHUẨN 2 (2NF) Ví dụ: ĐẶT_HÀNG ĐẶT HÀNG (SốĐH, (SốĐH MãHH, MãHH NgàyĐH, NgàyĐH MãKH, MãKH SL) F = { SốĐHÆNgàyĐH,MãKH;SốĐH, MãHHÆSL} ÎKhông đạt dạng chuẩn ch ẩn 2 Khắc phục: Tách thành 2 quan hệ: ĐẶT_HÀNG ( SốĐH, NgàyĐH, MãKH ) SốĐH Æ Ngày Với F1 = { Số NgàyĐH,, MãKH ã } CHITIẾT_ĐH (SốĐH, MãHH, SL) SốĐH MãHH Æ SL} Với F2 = { SốĐH, www.tdt.edu.vn 13 Cơ Sở Dữ Liệu 6.3. DẠNG CHUẨN 2 (2NF) Nhận xét Nếu lược đồ quan hệ Q chỉ có 1 khóa K và K chỉ có 1 thuộc tính thì Q đạt dạng chuẩn 2 Một lược l đồ quan hệ Q ở dạng d chuẩn h ẩ 2 vẫn ẫ có ó thể chứa đựng sự trùng lắp thông tin. www.tdt.edu.vn 14 Cơ Sở Dữ Liệu
- 6.4. DẠNG CHUẨN 3 (3NF) Định nghĩa: Một lược đồ quan hệ Q đạt dạng chuẩn 3 nếu: Q ở dạng chuẩn 2 Mọi M i thuộc th ộ tính tí h không khô khóa khó của ủ Q đều đề không khô phụ h thuộc bắc cầu vào một khóa nào của Q Một ộ lược đồ ồ CS CSDL được gọii là à đạt dạng chuẩn ẩ 3 nếu mọi lược đồ quan hệ con Qi của nó đều đạt d dạng chuẩn h ẩ 3 www.tdt.edu.vn 15 Cơ Sở Dữ Liệu 6.4. DẠNG CHUẨN 3 (3NF) Phụ thuộc bắc cầu: Thuộc tính A ∈ Q+ được gọi là phụ thuộc bắc cầu vào tập thuộc tính X nếu ∃Y∈Q+ : 1) X Æ Y ∈ F+ và Y Æ A ∈ F+ 2) Y Æ X ∉ F+ 3) A ∉ (X ∪ Y) Khi đó X Æ A được gọi là PTH bắc cầu www.tdt.edu.vn 16 Cơ Sở Dữ Liệu
- 6.4. DẠNG CHUẨN 3 (3NF) Ví dụ: GIẢNG_DẠY(MãLớp, MãsốGV, TênGV, Địachỉ ) F = {MãlớpÆMãsốGV;MãSốGV ÆTênGV, Địachỉ } ÎKhông đạt dạng chuẩn 3 Khắc phục: Tách thành 2 quan hệ: GIẢNG_DẠY(MãLớp, GIẢNG DẠY(MãLớ MãsốGV) Mã ốGV) F1 = { Mãlớp Æ MãsốGV} GIÁO_VIÊN(MãsốGV, TênGV, Địachỉ ) F2 = {MãSốGV Æ TênGV, Địachỉ } www.tdt.edu.vn 17 Cơ Sở Dữ Liệu 6.4. DẠNG CHUẨN 3 (3NF) Nhận xét: Chính phụ thuộc hàm bắc cầu là nguyên nhân dẫn đến tình trạng trùng lắp thông tin Dạng chuẩn 3 là tiêu chuẩn tối thiểu trong thiết kế cơ sở dữ liệu www.tdt.edu.vn 18 Cơ Sở Dữ Liệu
- 6.5. DẠNG CHUẨN BOYCE-CODD Định nghĩa: Một lược đồ quan hệ Q được gọi là đạt dạng chuẩn Boyce-Codd (BC) nếu mọi phụ thuộc hàm không hiển nhiên của F đều có vế trái chứa khóa. khóa Một lược đồ CSDL được gọi là ở dạng chuẩn BC nếu mọi lược đồ quan hệ con Qi của nó đều đạt dạng chuẩn BC. www.tdt.edu.vn 19 Cơ Sở Dữ Liệu 6.5. DẠNG CHUẨN BOYCE-CODD Nhận xét: Nếu 1 lược đồ quan hệ Q đạt dạng chuẩn BC thì cũng đạt dạng chuẩn 3. Trong T 1 lược l đồ quan hệ Q đạt đ t dạng d chuẩn h ẩ BC, BC việc kiểm tra phụ thuộc hàm chủ yếu là kiểm tra khóa nội. nội www.tdt.edu.vn 20 Cơ Sở Dữ Liệu
- 6.5. DẠNG CHUẨN BOYCE-CODD Ví dụ: ĐẶT_HÀNG ĐẶT HÀNG ( SốĐH, NgàyĐH, MãKH ) F1 = { SốĐH Æ NgàyĐH, MãKH } CHITIẾT_ĐH CHITIẾT ĐH (SốĐH, (SốĐH MãHH, MãHH SốLượng SốL ) F2 = { SốĐH, MãHH Æ SốLượng } Î 2 quan hệ đều đạt dạng chuẩn Boyce-Codd. www.tdt.edu.vn 21 Cơ Sở Dữ Liệu 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Q Quá trình chuẩn hóa 1 lược ợ đồ CSDL: Nhằm mục đích nâng cao chất lượng thiết kế Đưa các lược đồ quan hệ con từ dạng chuẩn thấp lên dạng chuẩn cao hơn mà tối thiểu phải là dạng chuẩn 3. 3 Phương pháp phân rã là 1 phương pháp dùng để chuẩn hóa 1 lược đồ CSDL www.tdt.edu.vn 22 Cơ Sở Dữ Liệu
- 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Sự ự bảo toàn thông g tin Việc chuẩn hóa 1 lược đồ quan hệ hay 1 lược đồ CSDL phải bảo đảm yêu cầu: bảo toàn thông tin Phép phân rã Q thành Q1, Q2, … được gọi là bảo toàn thông tin nếu: ∀TQ: TQ = TQ [Q1] |>
- 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Begin F* = F \ { f ∈ F+ / VT(t) ∪ VP(t) ∈ Q+ } Phương pháp IF (F* ≠ ∅) Th Then phân rã: Begin B1 Chọn 1 f0: X Æ Y ∈ F B1.Chọn B2.Tạo các lược đồ quan hệ con Q1 và Q2: Q1 = X ∪ Y F1 ={ f ∈ F+ / VT(f) ∪ VP(f) ⊆ Q1+ } Q2 = Q+ \ Y F2 = { f ∈ F+ / VT(f) ∪ VP(f) ⊆ Q2+ } B3.Phân rã đệ quy Q1 và Q2 End End www.tdt.edu.vn 25 Cơ Sở Dữ Liệu 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Ví dụ: Q (ABCDEG) ; F = { AE Æ C, CG Æ A, BD Æ G, GA Æ E } Nhận xét: Khóa của Q là {BDA} BD Æ G Î không đạt dạng chuẩn 2 ÎSử dụng ụ gpphương gppháp ppphân rã www.tdt.edu.vn 26 Cơ Sở Dữ Liệu
- 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Ví dụ: Q(ABCDEG) f0: BDÆ G Q1(BDG) Q2(BDACE) F1={BD Æ G} F2 = {AE Æ C} Q21(AEC) Q22(BDAE) F21={AE Æ C} F22={BDA Æ E} www.tdt.edu.vn 27 Cơ Sở Dữ Liệu 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Nhận xét: Th Thuật ậ toán á phân hâ rãã như h trên ê là bảo bả toàn à thông hô tin i (định lý Delobel) Các lược đồ ồ quan hệ con cuối ố cùng (nút lá trong cây phân rã) đều đạt ít nhất là dạng chuẩn 3 Thuật toán phân rã có thểể tạo ra các lược đồ ồ quan hệ con không có nhiều ngữ nghĩa trong thực tế www.tdt.edu.vn 28 Cơ Sở Dữ Liệu
- 6.6. CHUẨN HÓA LƯỢC ĐỒ CSDL BẰNG PHƯƠNG PHÁP PHÂN RÃ Nhận xét: Chất ấ lượng của CSDL kết ế quả có phụ thuộc vào việc chọn pth f0 ở từng bước phân rã. Thông thường pth được chọn là pth gây ra chất lượng xấu của lược đồ quan hệ. (pth không đầy đủ, pth bắc ắ cầu). ầ www.tdt.edu.vn 29 Cơ Sở Dữ Liệu 6.7. VÍ DỤ Ví dụ 1: Xét quan hệ SODA TENDA TRGDA MSNV TENNV PHG HSL TGIAN 100 TM Dien Tu 789 123 TUAN KD 65 10 990 NAM KT 45 6 234 NGA KT 35 6 542 MINH BH 30 12 110 DTao Tu Xa 820 432 HONG KD 50 5 689 LE KT 35 12 712 DUNG G BH 30 8 120 Cap Quang 980 834 HOA HT 80 4 380 HOA KT 35 11 553 THAI BH 30 12 123 TUAN KD 65 7 130 Trac Nghiem 550 340 CANH KD 65 7 ÎKhông đạt dạng chuẩn 1 www.tdt.edu.vn 30 Cơ Sở Dữ Liệu
- 6.7. VÍ DỤ Cách 1: Chuyển quan hệ về dạng SODA TENDA TRGDA MSNV TENNV PHG HSL TGIAN 100 TM Dien Tu 789 123 TUAN KD 65 10 100 TM Dien Tu 789 990 NAM KT 45 6 100 TM Dien Tu 789 234 NGA KT 35 6 100 TM Dien Tu 789 542 MINH BH 30 12 110 Dtao tu xa 820 432 HONG KD 50 5 110 Dtao tu xa 820 689 LE KT 35 12 110 Dtao tu xa 820 712 DUNG BH 30 8 120 Cap Quang 980 834 HOA HT 80 4 120 Cap Quang 980 380 HOA KT 35 11 120 Cap Quang 980 553 THAI BH 30 12 120 Cap Quang 980 123 TUAN KD 65 7 130 Trac Nghiem g 550 340 CANH KD 65 7 ÎĐạt dạng chuẩn 1 www.tdt.edu.vn 31 Cơ Sở Dữ Liệu 6.7. VÍ DỤ Cách 2: Phân rã thành 2 quan hệ ( , TENDA,, TRGDA)) DEAN(SODA, SODA TENDA TRGDA 100 TM Dien Tu 789 110 DTao Tu Xa 820 120 Cap Quang 980 130 Trac Nghiem 550 ÎĐạt dạng chuẩn 1 www.tdt.edu.vn 32 Cơ Sở Dữ Liệu
- 6.7. VÍ DỤ DEAN_NHANVIEN SODA MSNV TENNV PHG HSL TGIAN 100 123 TUAN KD 65 10 100 990 NAM KT 45 6 100 234 NGA KT 35 6 100 542 MINH BH 30 12 110 432 HONG KD 50 5 110 689 LE KT 35 12 110 712 DUNG BH 30 8 120 834 HOA HT 80 4 120 380 HOA KT 35 11 120 553 THAI BH 30 12 120 123 TUAN KD 65 7 130 340 CANH KD 65 7 ÎĐạt dạng chuẩn 1 www.tdt.edu.vn 33 Cơ Sở Dữ Liệu 6.7. VÍ DỤ Quan hệ DEAN_NHANVIEN không đạt dạng chuẩn 2 vì phụ thuộc không đầy đủ SODA TENNV MANV PHG KHÓA HSL www.tdt.edu.vn 34 Cơ Sở Dữ Liệu
- 6.7. VÍ DỤ Chuyển về dạng chuẩn 2 A* A* B* B* Ch ể vềề Chuyển C C D A* D www.tdt.edu.vn 35 Cơ Sở Dữ Liệu 6.7. VÍ DỤ PHANCONG NHANVIEN SODA MSNV TGIAN MSNV TENNV PHG HSL 100 123 10 123 TUAN KD 65 100 990 6 990 NAM KT 45 100 234 6 234 NGA KT 35 100 542 12 542 MINH BH 30 110 432 5 432 HONG KD 50 110 689 12 689 LE KT 35 110 712 8 712 DUNG BH 30 120 834 4 834 HOA HT 80 120 380 11 380 HOA KT 35 120 553 12 553 THAI BH 30 120 123 7 340 CANH KD 65 130 340 7 Î ÎĐạt dạng chuẩn ẩ 2 www.tdt.edu.vn 36 Cơ Sở Dữ Liệu
- 6.7. VÍ DỤ Giả sử có pth PHG Æ HSL ÎQuan hệ NHANVIEN không đạt dạng chuẩn 3 vì tồn tại phụ thuộc hàm bắc cầu A B C Điều kiện để xác định phụ thuộc hàm bắc cầu www.tdt.edu.vn 37 Cơ Sở Dữ Liệu 6.7. VÍ DỤ Chuyển về dạng chuẩn 3 A* A* B B Ch ể vềề Chuyển C B* C www.tdt.edu.vn 38 Cơ Sở Dữ Liệu
- 6.7. VÍ DỤ NHANVIEN PHONG MSNV TENNV PHG PHG HSL 123 TUAN KD KD 65 990 NAM KT KT 45 234 NGA KT KT 35 542 MINH BH BH 30 432 HONG KD KD 50 689 LE KT KT 35 712 DUNG BH BH 30 834 HOA HT HT 80 380 HOA KT KT 35 553 THAI BH BH 30 340 CANH KD KD 65 Î ÎĐạt dạng chuẩn ẩ 3 www.tdt.edu.vn 39 Cơ Sở Dữ Liệu 6.7. VÍ DỤ Ví dụ 2: Xét quan hệ SANXUAT MS NHAMAY MS_NHAMAY TEN NHAMAY TEN_NHAMAY MS SANPHAM MS_SANPHAM SOLUONG M101 TIEN DAT K1234 1200 M101 TIEN DAT J0055 600 M101 TIEN DAT Y3333 350 M222 SONY VN K1234 800 Mỗi ỗ nhà máy có Mã sốố và Tên duy nhất, ấ 1 nhà máy có thểể SX nhiều SP, nhiều nhà máy có thể SX cùng loại SP ÎCó 2 Khóa: ¾ (MS_NHAMAY, (MS NHAMAY MS_SANPHAM) MS SANPHAM) ¾ (TEN_NHAMAY, MS_SANPHAM) ÎĐ t dạng ÎĐạt d chuẩn h ẩ 3 www.tdt.edu.vn 40 Cơ Sở Dữ Liệu
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Cơ sở dữ liệu đất đai
49 p | 644 | 80
-
Bài giảng Cơ sở dữ liệu - Nguyễn Quỳnh Chi
189 p | 270 | 51
-
Bài giảng Cơ sở dữ liệu: Chương 1 - Tổng quan về cơ sở dữ liệu
21 p | 182 | 31
-
Bài giảng Cơ sở dữ liệu: Bài 1 - ĐH CNTT
15 p | 610 | 30
-
Bài giảng Cơ sở dữ liệu - Bài 2: Mô hình cơ sở dữ liệu quan hệ
43 p | 224 | 18
-
Bài giảng Cơ sở dữ liệu: Chương 2 - ThS. Hoàng Mạnh Hà
68 p | 152 | 12
-
Bài giảng Cơ sở dữ liệu: Chương 1 - ThS. Hoàng Mạnh Hà
26 p | 187 | 10
-
Bài giảng Cơ sở dữ liệu (Database): Chương 4 - TS. Đặng Thị Thu Hiền
82 p | 40 | 8
-
Bài giảng Cơ sở dữ liệu - Chương 4: Chuẩn hóa cơ sở dữ liệu
30 p | 135 | 8
-
Bài giảng Cơ sở dữ liệu: Chương II - Bảng dữ liệu
108 p | 102 | 8
-
Bài giảng Cơ sở dữ liệu (Database): Chương 1 - TS. Đặng Thị Thu Hiền
53 p | 51 | 7
-
Bài giảng Cơ sở dữ liệu: Mở đầu - ThS. Lương Thị Ngọc Khánh
11 p | 177 | 6
-
Bài giảng Cơ sở dữ liệu - Bài 1: Thiết kế Cơ sở dữ liệu với Management Studio
10 p | 63 | 5
-
Bài giảng Cơ sở dữ liệu: Chương 1 - GV. Đỗ Thị Kim Thành
21 p | 104 | 4
-
Bài giảng Cơ sở dữ liệu nâng cao: Bài 2 - PGS.TS. Đỗ Phúc
55 p | 68 | 4
-
Bài giảng Cơ sở dữ liệu (Database) - Chương 3: Thiết kế cơ sở dữ liệu logic
207 p | 34 | 4
-
Bài giảng Cơ sở dữ liệu: Chương 2 - Trần Thị Dung
39 p | 8 | 4
-
Bài giảng Cơ sở dữ liệu (Database) - Chương 1: Các khái niệm cơ bản về hệ cơ sở dữ liệu
34 p | 70 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn