a. Khái niệm
Trước khi đi vào thuật toán cải tiến, ta cần quan tâm một số khái niệm sau
Tập thuộc tính nguồn (TN) chứa tất cả các thuộc tính có xuất hiện ở vế trái và không xuất hiện ở vế phải của các phụ thuộc hàm và các thuộc tính không xuất hiện ở cả vế trái lẫn vế phải của các phụ thuộc hàm.
+ Tập thuộc tính đích (TD) chứa tất cả các thuộc tính có xuất hiện ở vế phải và không xuất hiện ở vế trái của các phụ thuộc hàm.
+ Tập thuộc tính trung gian (TG) chứa tất cả các thuộc tính xuất hiện ở cả vế trái lẫn vế phải của các phụ thuộc hàm.
Hệ quả: Nếu K là khóa của Qthì TN K và TD K = Ø
b. Trình tự thực hiện tìm tất cả các khóa
Dữ liệu vào: Lược đồ quan hệ Q và tập phụ thuộc hàm F Dữ liệu ra: Tất cả các khóa của quan hệ
Thuật toán tìm tất cả khóa của một lược đồ quan hệ
Bước 1: tạo tập thuộc tính nguồn TN, tập thuộc tính trung gian TG Bước 2: if TG=Ø then lược đồ quan hệ chỉ có một khóa K
K =TN
kết thúc Ngược lại
Qua bước 3
Bước 3: tìm tất cả các tập con Xicủa tập trung gian TG Bước 4: tìm các siêu khóa Sibằng cách Xi
if (TN Xi)+= Q+ then Si= TN Xi
Bước 5: tìm khóa bằng cách loại bỏ các siêu khóa không tối tiểu
Si,SjS
if SiSjthen Loại Sjra khỏi Tập siêu khóa S S còn lại chính là tập khóa cần tìm.
c. Thực hành
Tìm tất cả các khóa của lược đồ quan hệ và tập phụ thuộc hàm như sau: Q(C,S,Z); F = {f1:CS Z; f2:Z C}
Giải
Ap dụng thuật toán cải tiến ta có lời giải như sau: TN = {S}; TG = {C,Z}
BÀI TẬP CHƯƠNG 5
1/ Chứng minh các tính chất sau:
a) Tính cộng đầy đủ X Yvà Z W XZ YW b) Tính tích lũy X Y và Y ZW X YZW
2/ Cho G={ABC,AB,BC,AC}. F={ABC,AB,BC}có tương đương với G không? 3/ Cho lược đồ CSDL Kehoach(NGAY,GIO,PHONG,MONHOC,GIAOVIEN) F= {NGAY,GIO,PHONG MONHOC MONHOC,NGAY GIAOVIEN NGAY,GIO,PHONG GIAOVIEN MONHOC GIAOVIEN} a) Tính {NGAY,GIO,PHONG}+; {MONHOC}+
b) Tìm phủ tối thiểu của F
c) Tìm tất cả các khóa của Kehoach 4/ Cho lược đồ CSDL
Q(TENTAU,LOAITAU,MACHUYEN,LUONGHANG,BENCANG,NGAY) F= {TENTAU LOAITAU
MACHUYEN TENTAU, LUONGHANG TENTAU,NGAY BENCANG, MACHUYEN} a) Hãy tìm tập phủ tối thiểu của F
b) Tìm tất cả các khóa của Q 5/ Q(A,B,C,D,E,G)
Cho F={ABC;CA;BCD;ACDB;DEG;BEC;CGBD;CE AG} X={B,D}, X+=? Y={C,G}, Y+=?
6/ cho lược đồ quan hệ Q và tập phụ thuộc hàm F
a) F={ABE;AGI;BEI;EG;GIH}chứng minh rằng AB GH.
b) F={ABC;BD;CDE;CEGH;GA}chứng minh rằng AB E; AB G 7/ Cho quan hệ r
Trong các phụ thuộc hàm sau đây, PTH nào không thỏa A B; A C; B A; C D; D C; D A
8/ Hãy tìm tất cả các khóa cho lược đồ quan hệ sau:
Q(BROKER,OFFICE,STOCK,QUANTITY,INVESTOR,DIVIDENT) F= {STOCK DIVIDENT
INVESTOR BROKER
INVESTOR,STOCK QUANTITY BROKER OFFICE }
9/ Xét lược đồ quan hệ và tập phụ thuộc dữ liệu: Q(C,T,H,R,S,G)
f= {f1: CT; f2: HRC; f3: HTR; f4: CSG; f5: HSR}
10/ Q(A,B,C,D,E,H)
F={A E; C D; E DH}
Chứng minh K={A,B,C}là khóa duy nhất của Q 11/ Q(A,B,C,D)
F={ABC; DB; CABD} Hãy tìm tất cả các khóa của Q 12/ Q(A,B,C,D,E,G)
F={ABC;CA;BCD;ACDB;DEG;BEC;CGBD;CEG} Hãy tìm tất cả các khóa của Q.
13/ Xác định phủ tối thiểu của tập phụ thuộc hàm sau: a) Q(A,B,C,D,E,G),
F={ABC;CA;BCD;ACDB;DEG;BEC;CGBD;CEAG} b) Q(A,B,C)
F={AB,AC,BA,CA,BC}
14/ Xác định phủ tối thiểu của các tập phụ thuộc hàm sau: a) Q1(ABCDEGH) F1={AH,ABC,BCD;GB} b) Q2(ABCSXYZ) F2={SA;AXB;SB;BYC;CZX} c) Q3(ABCDEGHIJ) F3={BGD;GJ;AIC;CEH;BDG;JHA; DI } d) Q4(ABCDEGHIJ)
CHƯƠNG 6: CHUẨN HÓA CƠ SỞ DỮ LIỆU MỤC TIÊU BÀI HỌC
-Trình bày được các khái niệm về các dạng chuẩn củalược đồ quan hệ, các phép tách, kết nối bảo toàn dữ liệu;
-Trình bày được cách thiết kế cơ sở dữ liệu bằng cách phân rã; -Thiết kế, chuẩn hóa một số lược đồ quan hệ cụ thể;
-Nghiêm túc, tỉ mỉ trong việc học và làm bài tập.
NỘI DUNG BÀI HỌC