Bài tập áp dụng: Bài tập 1: Cho lược đồ quan hệ R = (U, F) U= {A,B,C,D,E,G,H} F= {ABC, DEG, ACDB, CA, BEC, CEAG, BCD, CGBD, G H} a) Tính (D)+ b) Tính (DE)+ c) Tính (BE)+ d) Tính (CG)+ Giải: a) Tính (D)+ X0 = D 1) X1 = DEG (áp dụng DEG) 2) X2 = DEGH (áp dụng GH) (= Constant) Vậy (D)+ = DEGH b) Tính (DE) + X0 = DE 1) X1 = DEG (áp dụng DEG) 2) X2 = DEGH (áp dụng GH) (= Constant) Vậy (DE)+ = DEGH c) Tính (BE)+ X0 = BE 1) X1 = BEC (áp dụng BEC) 2) X2 = BECAG (áp dụng CEAG) 3) X3 = BECAGD (áp dụng BCD) 4) X4 = BECAGDH (áp dụng GH) (= Constant) Vậy (BE)+ = ABCDEGH
KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM BÀI TẬP LÝ THUYẾT CƠ SỞ DỮ LIỆU Biên soạn : - Nguyễn Minh Quý Tài liệu lưu hành nội bộ [...].. .Bài tập Lý thuyết CSDL quan hệ Biên soạn: Bộ môn Công nghệ phần mềm E→G dư thừa Vì nếu xoá khỏi F, ta vẫn có (E)+ = {DEG} Chứa G Phủ tối thiểu của F là : A→B BC→H A→E BC→G H→J J→H J→I E→D E→G Version 1.0 – 10/2005 UTE Hưng Yên 11 Bài tập Lý thuyết CSDL quan hệ Biên soạn: Bộ môn Công nghệ phần mềm CHƯƠNG III TÌM... thì ta gọi tắt khoá tối thiểu là Khoá) *** Chi tiết cài đặt xin xem trong phần phụ lục Bài tập áp dụng Ví dụ 1: Cho lược đồ R = : U = {ABCDE} F = {A→B, B→C, B→DE, A→E, A→D} Hãy tìm một khoá tối thiểu K của lược đồ R ? Hướng dẫn: Bước 1: Đặt T = {AB} (T là tập các thuộc tính xuất hiện phía trái) P = {BCDE} (P là tập các thuộc tính xuất hiện phía phải) K = U\P = {A} Bước 2: Tính thử K+ Ta có K+ =... , Trong đó : U = {ABCDE} F = {AB→DE, E→AD, D→C} Hãy tìm một khoá tối thiểu K của lưược đồ R Hướng dẫn : Bước 1: Đặt T = {ABED} P = {DEAC} K = U\P = {B} Version 1.0 – 10/2005 UTE Hưng Yên 12 Bài tập Lý thuyết CSDL quan hệ Biên soạn: Bộ môn Công nghệ phần mềm Bước 2: Tính thử K+ Ta có K+ = {B} ≠ U, nên tiếp tục bước 3 Bước 3 : Tính K = K ∪ (T ∩ P) Ta có K = K ∪ (T ∩ P) = {ABDE} Bước 4 : Thử xoá... Ta có: K = {BCDEG} và K+ = {BCDEGA} vẫn bằng U, nên ta loại được A Thử loại bỏ {B} khỏi K, Ta có: K = {CDEG} và K+ = {CDEGAB} vẫn bằng U, nên ta loại được B Version 1.0 – 10/2005 UTE Hưng Yên 13 Bài tập Lý thuyết CSDL quan hệ Biên soạn: Bộ môn Công nghệ phần mềm Thử loại bỏ {C} khỏi K, Ta có: K = {DEG} và K+ = {DEG} Do K+ ≠ U nên không loại được {C} K vẫn là {DEGC} Thử loại bỏ {D} khỏi K, Ta có: K... U nên không loại được {B} K vẫn là {HCDEAB} Thử loại bỏ {C} khỏi K, Ta có: K = {HDEAB} và K+ = {HDEABCG} Do K+ ≠ U nên không loại được {C} K vẫn là {HDEABC} Version 1.0 – 10/2005 UTE Hưng Yên 14 Bài tập Lý thuyết CSDL quan hệ Biên soạn: Bộ môn Công nghệ phần mềm Thử loại bỏ {D} khỏi K, Ta có: K = {HEABC} và K+ = {HEABCDG} Do K+ ≠ U nên không loại được {D} K vẫn là {HEABCD} Thử loại bỏ {E} khỏi K, Ta... phần mềm CHƯƠNG III TÌM KHOÁ TỐI THIỂU CỦA LƯỢC ĐỒ QUAN HỆ 1 Định nghĩa khoá tối thiểu: Cho lược đồ R = , trong đó U là tập thuộc tính, F là tập phụ thuộc hàm K được gọi là khoá tối thiểu của R nếu như số thuộc tính trong K là ít nhất nhưng vẫn thoả mãn K+ =U 2 Phát biểu bài toán tìm khoá tối thiểu: Cho lược đồ quan hệ R = Hãy tìm một khoá (tối thiểu) của quan hệ R 3 Thuật toán tìm khoá... quan hệ R = , Trong đó : U = {ABCDEG} F = {AB→C, C→A, BC→D, ACD→B, D→EG, BE→C, CG→BD, CE→AG} Hãy tìm một khoá tối thiểu K của lược đồ R Hướng dẫn : Bước 1: Đặt T = {ABCDEG} P = {ABCDEG} (P là tập các thuộc tính xuất hiện phía phải) K = U\P = {} Bước 2: Tính thử K+ Ta có K+ = { } ≠ U, nên tiếp tục bước 3 Bước 3 : Tính K = K ∪ (T ∩ P) Ta có K = K ∪ (T ∩ P) = {ABCDEG} Bước 4 : Thử xoá từng thuộc . CÔNG NGHỆ THÔNG TIN BỘ MÔN CÔNG NGHỆ PHẦN MỀM BÀI TẬP LÝ THUYẾT CƠ SỞ DỮ LIỆU Biên soạn : - Nguyễn Minh Quý Tài liệu lưu hành nội bộ