Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chương I: Khái niệm cơ bản về các hệ cơ <strong>sở</strong> <strong>dữ</strong> <strong>liệu</strong><br />
Suy ra X = ACE là khóa.<br />
b) Theo thứ tự L ∩ R = CB<br />
Xét (X - C) + = (ABE) + = ABCDEG = Ω ⇒ X = ABE<br />
(X- B) + = (AE) + = ADEG ≠ Ω.<br />
Vậy X = ABE cũng là là khóa thứ 2 của lược đồ quan hệ.<br />
Như vậy khóa của lược đồ quan hệ trên là K1 = ABE và K2= ABE.<br />
Thuật toán 3.7: Xác định một khoá trong siêu khóa cho trước<br />
Giả sử K là khóa được chứa trong siêu khóa X cho trước. Hiển nhiên K ⊆ X. Mặt khác<br />
Ω \ R ⊆ K ⊆ (Ω \ R ) ∪ (L ∩ R ) Suy ra K ⊆ ( Ω \ R ) ∪ (X ∩ (L ∩ R)).<br />
Như vậy nếu cho trước một siêu khóa X , có thể xác định một khóa được chứa trong nó.<br />
Với thuật toán này thời gian kiểm tra chỉ phụ thuộc vào số phần tử của X ∩ (L∩ R), nghĩa<br />
là thời gian để xác định một khóa trong Y := ( Ω \ R ) ∪ X ∩ (L ∩ R)) nhanh hơn rất<br />
nhiều để xác định một khóa trong X.<br />
Input: : Ω :={ A1 , A2 ,.. , An } ≠ ∅<br />
F := {Lj → Rj ⏐ Lj, Rj ⊆ Ω }<br />
L = ∪ Lj và R = ∪ Rj<br />
Lj ⊆ Ω Rj ⊆ Ω<br />
X ∩ (L ∩ R)) ={ A1 , A2... Ak}<br />
Output: : Xác định một khoá K trong siêu khóa X cho trước của lược đồ quan<br />
hệ.<br />
Phương pháp:<br />
Nếu X = (Ω \ R) suy ra (Ω \ R) là siêu khóa, đồng thời cũng là khoá duy<br />
nhất của lược đồ quan hê s = .<br />
Đặt Y := (Ω \ R) ∪ X ∩ (L ∩ R) = {A1 , A2... Ak}.<br />
X = X ∩ (L ∩ R) = {A1 , A2... Ak} .<br />
Kiểm tra (X \ Aj ) +<br />
Begin<br />
End.<br />
If X = (Ω \ R ) then<br />
Begin<br />
End<br />
X = ( Ω \ R ) ∪ X ∩ (L ∩ R)<br />
For each A ∈ X ∩ (L ∩ R ) do<br />
If ( X - A ) + = Ω then<br />
X = X - A<br />
X là khóa của lược đồ quan hệ s = < Ω , F >.<br />
64