Bài giảng môn Cơ sở dữ liệu: Chương 6 - ThS. Thái Bảo Trân
lượt xem 2
download
Bài giảng môn "Cơ sở dữ liệu - Chương 6: Phụ thuộc hàm và các dạng chuẩn" cung cấp cho người học các kiến thức: Hệ luật dẫn Amstrong, bao đóng, khóa, thuật toán tìm khóa, các dạng chuẩn. 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 môn Cơ sở dữ liệu: Chương 6 - ThS. Thái Bảo Trân
- Chương 6: Phụ thuộc hàm và các dạng chuẩn Thời lượng: 9 tiết Giảng viên: ThS. Thái Bảo Trân 1 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- Nội dung • Phụ thuộc hàm – Hệ luật dẫn Amstrong – Bao đóng – Khóa – Thuật toán tìm khóa • Các dạng chuẩn – Dạng chuẩn 1 – Dạng chuẩn 2 – Dạng chuẩn 3 – Dạng chuẩn Boyce Codd 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 1. Phụ thuộc hàm (PTH) PTH (Functional dependencies) là một loại RBTV rất quan trọng để phát hiện các thiết kế CSDL tốt. Có thể biểu diễn RBTV bằng PTH PTH biểu diễn mối liên hệ giữa các thuộc tính trong cùng một quan hệ. 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 1. Phụ thuộc hàm X, Y là hai tập thuộc tính trên quan hệ R r1, r2 là 2 bộ bất kỳ trên R Ta nói X xác định Y, ký hiệu X → Y, nếu và chỉ nếu r1[X] = r2[X] thì r1[Y] = r2[Y] X → Y là một phụ thuộc hàm, hay Y phụ thuộc X. X là vế trái của phụ thuộc hàm, Y là vế phải của phụ thuộc hàm. Ví dụ: Cho quan hệ sinh viên như sau: SINHVIEN(Tên, Mônhọc, SốĐT, ChuyênNgành, GiảngViên, Điểm) 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 1. Phụ thuộc hàm Tên Mônhọc SốĐT ChuyênNgành GiảngViên Điểm Huy CSDL 0913157875 HTTT Hưng 5 Hoàng CSDL 0913154521 HTTT Hưng 10 Huy AV 0913157875 HTTT Thủy 5 Hải Toán SXTK 0166397547 MạngMT Lan 10 Tính HQTCSDL 012145475 CNPM Trân 7 Tính LậpTrình 012145475 CNPM Việt 8 Hoàng LậpTrình 0913154521 HTTT Việt 10 Tên SốĐT ChuyênNgành? Tên Mônhọc Điểm? Mônhọc GiảngViên? 5 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 1. Phụ thuộc hàm Một số tính chất sau: Với mỗi Tên có duy nhất một SốĐT và ChuyênNgành Với mỗi Tên, Mônhọc có duy nhất một Điểm Với mỗi Mônhọc có duy nhất một GiảngViên Ký hiệu: {Tên} → {SốĐT, ChuyênNgành} {Tên, Mônhọc} → {Điểm} {Mônhọc} → {GiảngViên} 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 1. Phụ thuộc hàm Tên Mônhọc SốĐT ChuyênNgành GiảngViên Điểm Các phụ thuộc hàm kéo theo: {Tên} → {ChuyênNgành} {Mônhọc, Điểm} → {GiảngViên, Điểm} 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2. Hệ luật dẫn Amstrong Gọi F là tập các phụ thuộc hàm. Định nghĩa: X → Y được suy ra từ F, hay F suy ra X → Y, Ký hiệu: F ╞ X → Y nếu bất kỳ bộ của quan hệ thỏa F thì cũng thỏa X → Y Hệ luật dẫn Amstrong: Với X, Y, Z, W ⊆ U. Phụ thuộc hàm có các tính chất sau: F1) Tính phản xạ: Nếu Y ⊆ X thì X → Y F2) Tính tăng trưởng: {X → Y} ╞ XZ → YZ F3) Tính bắc cầu: {X → Y, Y → Z} ╞ X → Z 8 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 2. Hệ luật dẫn Amstrong Từ hệ luật dẫn Amstrong ta suy ra một số tính chất sau: F4) Tính kết hợp: {X → Y, X → Z} ╞ X → YZ F5) Tính phân rã: {X → YZ, X → Y} ╞ X → Z F6) Tính tựa bắt cầu: {X → Y, YZ → W} ╞ XZ → W Ví dụ: F = {A → B, A → C, BC → D}, chứng minh A → D? 1) A → B 2) A → C 3) A → BC (tính kết hợp F4) 4) BC → D 5) A → D (tính bắc cầu F3) 9 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Bao đóng Bao đóng của tập phụ thuộc hàm Bao đóng của tập phụ thuộc hàm F, ký hiệu F+ là tập tất cả các phụ thuộc hàm được suy ra từ F. Nếu F = F+ thì F là họ đầy đủ của các phụ thuộc hàm. Thuật toán tìm bao đóng của tập thuộc tính Bao đóng của tập thuộc tính X đối với tập phụ thuộc hàm F, ký hiệu là X+F là tập tất cả các thuộc tính Y có thể suy dẫn từ X nhờ tập bao đóng của các phụ thuộc hàm F+ X+F = { Y ∈ Q+ | X → Y ∈ F+ } 10 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Bao đóng 11 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Thuật toán tìm bao đóng của tập thuộc tính 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Thuật toán tìm bao đóng của tập thuộc tính 13 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Thuật toán tìm bao đóng của tập thuộc tính Ví dụ: Cho lược đồ quan hệ R(A, B, C, D, E, G, H) và tập phụ thuộc hàm F={ f1: B → A , f2: DA → CE, f3: D → H, f4: GH → C, f5: AC → D} Tìm AC+F ? 14 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Bao đóng Bước 1: AC+F = AC Bước 2: Từ f1 đến f4 không thoả, f5 thoả nên AC+F = AC ∪ D = ACD Lặp lại bước 2: f1 không thoả, f2 thỏa nên AC+F=ACD ∪ CE = ACDE f3 thỏa nên AC+F=ACDE ∪ H =ACDEH f4 không thỏa, f5 đã thỏa Lặp lại bước 2: f2, f3 và f5 đã thỏa, f1 và f4 không thỏa. Nên AC+F=ACDEH Vậy AC+F=ACDEH 15 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Bao đóng Bài toán thành viên Cho tập thuộc tính Q, tập phụ thuộc hàm F trên Q và một phụ thuộc hàm X → Y trên Q. Câu hỏi đặt ra rằng X → Y ∈ F+ hay không? X → Y ∈ F + ⇔ Y ⊆ X+ Ví dụ: Từ ví dụ tìm bao đóng của tập thuộc tính AC. Cho biết AC → E có thuộc F+ ? Ta có AC+F=ACDEH Vì E ∈ AC+F nên AC → E ∈ F+ 16 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Thuật toán tìm bao đóng của tập thuộc tính 17 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 3. Thuật toán tìm bao đóng của tập thuộc tính 18 CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 4. KHÓA CỦA LƯỢC ĐỒ QUAN HỆ (Key) Định Nghĩa: Cho lược đồ quan hệ Q(A1, A2, …, An) • Q+ là tập thuộc tính của Q. • F là tập phụ thuộc hàm trên Q. • K là tập con của Q+ K là một khóa của Q nếu: • K+ = Q+ • Không tồn tại K' K sao cho K’+= Q+ CuuDuongThanCong.com https://fb.com/tailieudientucntt
- 4. KHÓA CỦA LƯỢC ĐỒ QUAN HỆ (Key) Tập thuộc tính S được gọi là siêu khóa nếu S K Thuộc tính A được gọi là thuộc tính khóa nếu AK với K là khóa bất kỳ của Q. Ngược lại A được gọi là thuộc tính không khóa. Một lược đồ quan hệ có thể có nhiều khóa và tập thuộc tính không khóa cũng có thể bằng rỗng. CuuDuongThanCong.com https://fb.com/tailieudientucntt
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Đề Cương Bài Giảng Môn Cơ Sở Dữ Liệu
161 p | 402 | 67
-
Bài giảng môn Cơ sở dữ liệu: Chương 5 - ĐH KHTN
0 p | 225 | 50
-
Bài giảng môn Cơ sở dữ liệu: Chương 1 - ĐH KHTN
0 p | 237 | 42
-
Bài giảng môn Cơ sở dữ liệu: Chương 3 - ĐH KHTN
0 p | 178 | 37
-
Bài giảng môn Cơ sở dữ liệu: Chương 2 - ĐH KHTN
0 p | 167 | 35
-
Bài giảng môn Cơ sở dữ liệu: Chương 4 - ĐH KHTN
0 p | 185 | 35
-
Bài giảng môn Cơ sở dữ liệu: Chương 6 - ĐH KHTN
0 p | 177 | 35
-
Bài giảng môn Cơ sở dữ liệu: Chương 7 - ĐH KHTN
0 p | 255 | 35
-
Bài giảng Cơ sở dữ liệu: Chương 1 - Tổng quan cơ sở dữ liệu
0 p | 227 | 17
-
Bài giảng môn Cơ sở dữ liệu: Chương 8 - Thiết kế cơ sở dữ liệu quan hệ
33 p | 141 | 12
-
Bài giảng môn Cơ sở dữ liệu: Chương 6 - Ngôn ngữ SQL
115 p | 125 | 11
-
Bài giảng môn Cơ sở dữ liệu: Chương 2 - Mô hình thực thể - kết hợp
0 p | 144 | 8
-
Bài giảng môn Cơ sở dữ liệu: Chương 5 - ThS. Thái Bảo Trân
20 p | 76 | 5
-
Bài giảng môn Cơ sở dữ liệu: Chương 3 - Mô hình quan hệ
0 p | 101 | 4
-
Bài giảng môn Cơ sở dữ liệu: Chương 9 - Thiết kế cơ sở dữ liệu quan hệ
0 p | 124 | 4
-
Bài giảng môn Cơ sở dữ liệu: Chương 4 - ThS. Thái Bảo Trân
35 p | 48 | 4
-
Bài giảng môn Cơ sở dữ liệu: Chương 3 - ThS. Thái Bảo Trân
13 p | 56 | 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