c- Xác định dạng chuẩn và phân rã lược đồ để đạt 3NF
Ta có U = {A,B,C,D,E,G} = ABCDEG
Câu 10a:
Bước 0: Đặt K = ABCDEG
Bước 1: Lặp 1: (K\A)F+ = (BCDEG)F+ = BCDEGA = U ⇒ K = BCDEG Lặp 2: (K\B)F+ = (CDEG)F+ = CDEGBA = U ⇒ K = CDEG
Lặp 3: (K\C)F+ = (DEG)F+ = DEGA ≠ U ⇒ K = CDEG (Ko bỏ C)
Lặp 4: (K\D)F+ = (CEG)F+ = CEGBA ≠ U ⇒ K = CDEG (Ko bỏ D)
Lặp 5: (K\E)F+ = (CDG)F+ = CDGBAE = U ⇒ K = CDG Lặp 6: (K\G)F+ = (CD)F+ = CDB ≠ U ⇒ K = CDG
Bước 2: Kết luận: Một khoá của lược đồ quan hệ Q là K = CDG
Câu 10b:
Tập thuộc tính nguồn: N = {D,G} Tập thuộc tính đích: Đ = {E}
Tập thuộc tính trung gian: TG = {A,B,C} ⇒ Tập Xi có 23 = 23 = 8 ptử
Xi Xi ∪ N (Xi ∪ N)+ Siêu khóa Khóa ∅ DG DGA ≠ U - - A ADG ADG ≠ U - - B BDG BDGACE = U SK Khóa C CDG CDGBAE = U SK Khóa AB ABDG ABDGCE = U SK AC ACDG ACDGBE = U SK BC BCDG BCDGAE = U SK
ABC ABCDG ABCDGE = U SK
Vậy: BDG và CDG là khóa của quan hệ Q Câu 10c:
10c.1- Xác định dạng chuẩn cao nhất của lược đồ trên:
Xét khóa CDG: Quan hệ Q không đạt dạng chuẩn 2 (2NF) vì tồn tại phụ thuộc hàm (PTH) C → B trong đó thuộc tính B không phụ thuộc đầy đủ vào khoá CDG.
10c.2- Phân rã lược đồ để đạt dạng chuẩn 3 (3NF) và bảo mật thông tin:
* Tìm phủ tối thiểu (PTT)
Bước 2: Tách các PTH trong tập các PTH F để vế phải là 1 thuộc tính
f1 f2 f3 f4
F = { AB → C ; C → B ; ABD → E ; G → A}Bước 3: Loại bỏ các thuộc tính dư thừa vế trái: Bước 3: Loại bỏ các thuộc tính dư thừa vế trái: - Xét AB → C:
Bỏ A: (B)F+ = B không xác định được C Bỏ B: (A)F+ = A không xác định được C ⇒ Không loại bỏ PTH AB → C
Bỏ A: (BD)F+ = BD không xác định được E Bỏ B: (AD)F+ = AD không xác định được E Bỏ D: (AB)F+ = ABC không xác định được E ⇒ Không loại bỏ PTH ABD → E
⇒
f1 f2 f3 f4
F = { AB → C ; C → B ; ABD → E ; G → A}Bước 4: Loại bỏ các PTH dư thừa Bước 4: Loại bỏ các PTH dư thừa
- Với f1 = AB → C ; F1 = F \ {f1}
(AB)F1+ = AB không xác định được C ⇒ Không loại bỏ được f1 - Với f2 = C → B ; F2 = F \ {f2}
(C)F2+ = C không xác định được B ⇒ Không loại bỏ được f2 - Với f3 = ABD → E ; F3 = F \ {f3}
(ABD)F3+ = ABDC không xác định được E ⇒ Không loại bỏ được f3 - Với f4 = G → A; F4 = F \ {f4}
(G)F4+ = G không xác định được A ⇒ Không loại bỏ được f4 ⇒ f1 f2 f3 f4
PTT = F = { AB → C ; C → B ; ABD → E ; G → A} * Phân rã lược đồ:
R1(ABC) khoá AB (AB → C) R2(CB) khoá C (C → B) R3(ABDE) khóa ABD (ABD → E) R4(GA) khóa G (G → A)
* Do R2 ⊂ R1 nên ghép R1 và R2 thành R12(ABC) {AB → C; C → B}.
Tìm khóa cho R12:
Ta có U12 = ABC và F12 = {AB → C; C → B} Đặt K12 = ABC
Lặp 1: (K12 \ A)F12+ = (BC)F12+ = BC ≠ U12 ⇒ K12 = ABC Lặp 2: (K12 \ B)F12+ = (AC)F12+ = ACB = U12 ⇒ K12 = AC Lặp 1: (K12 \ C)F12+ = (A)F12+ = A ≠ U12 ⇒ K12 = AC ⇒ Lược đồ được phân rã lại như sau:
R12(ACB) khóa AC (AB → C; C → B) R3(ABDE) khóa ABD (ABD → E)
R4(GA) khóa G (G → A)
⇒ D = {R12 ; R3 ; R4}
Bài 11: Cho lược đồ quan hệ Q(A,B,C,D,E,G,H,I) và tập các PTH:
F = { AC -> B; BI -> ACD; ABC -> D; H -> I; ACE -> BCG; CG -> AE} CG -> AE}
a- Tìm một khóa của lược đồ.b- Tìm nhiều khóa của quan hệ R b- Tìm nhiều khóa của quan hệ R
c- Xác định dạng chuẩn và phân rã lược đồ để đạt 3NF
Ta có U = {A,B,C,D,E,G,H,I} = ABCDEGHI
Câu 11a:
Bước 0: Đặt K = ABCDEGHI
Bước 1: Lặp 1: (K\A)F+ = (BCDEGHI)F+ = BCDEGHIA = U ⇒ K = BCDEGHI Lặp 2: (K\B)F+ = (CDEGHI)F+ = CDEGHIAB = U ⇒ K = CDEGHI
Lặp 3: (K\C)F+ = (DEGHI)F+ = DEGHI ≠ U ⇒ K = CDEGHI (Ko bỏ C)
Lặp 4: (K\D)F+ = (CEGHI)F+ = CEGHIABD = U ⇒ K = CEGHI Lặp 5: (K\E)F+ = (CGHI)F+ = CGHIAEBD = U ⇒ K = CGHI
Lặp 6: (K\G)F+ = (CHI)F+ = CHI ≠ U ⇒ K = CGHI (Ko bỏ G)
Lặp 7: (K\H)F+ = (CGI)F+ = CGIAEBD ≠ U ⇒ K = CGHI (Ko bỏ H)
Lặp 8: (K\I)F+ = (CGH)F+ = CGHAEBDI = U ⇒ K = CGH Bước 2: Kết luận: Một khoá của lược đồ quan hệ Q là K = CGH
Câu 11b:
Tập thuộc tính nguồn: N = {H} Tập thuộc tính đích: Đ = {D}
Tập thuộc tính trung gian: TG = {A,B,C,E,G} ⇒ Tập Xi có 25 = 25 = 32 ptử
Xi Xi∪ N (Xi ∪ N)+ Siêu
khóa Khóa
A AH AHI ≠ U - -B BH BHIACD ≠ U - -