Hình III.9 –Một bảng hai hàng tổng quá t–

Một phần của tài liệu giáo trình thiết kế cơ sở dữ liệu phần 2 của trịnh minh tuấn (Trang 33)

Chứng minh:

Bảng khởi đầu, được sử dụng trong Thuật toán III.1, được trình bày trong Hình III.9, chúng ta đã lược bỏ những chỉ số trên a và b vì không quan trọng.

Bằng phép qui nạp trên số lượng ký hiệu được xác định bằng thuật toán III.1 chúng ta có thể chứng minh rằng nếu ký hiệu b trên cột của thuộc tính A bị đổi thành a, thì A thuộc (R1R2)+.Đồng thời cũngbằng phép qui nạp trên số các bước cần để chứng minh biểu thức (R1 R2) Y nhờ các tiên đề Armstrong, chúng ta cũng có thể chứng minh rằng mọi ký hiệu b trong các cột của Y được đổi thành a. Vì vậy toàn bộ hàng cho R1 trở thành a nếu và chỉ nếu

R2-R1(R1R2)+nghĩa là (R1R2)(R2-R1) , và tương tự, toàn bộ hàng cho R trở thành a nếu và chỉ nếu (R  R )

Thí dụ III.13:

Giả sử R = ABC và F = {AB}. Thế thì phân rã thành R1= AB và R2= AC có nối không mất bởi vì:

R1R2= ABAC = A

R1 – R2 = AB – AC = B, và A  Bđúng nghĩa là phụ thuộc hàm (R1R2)(R1– R2) thuộc F+

.

Tuy nhiên nếu chúng ta phân rã R thành R1= AB và R2 = BC không phải là có nối không mất bởi vì:

R1R2= ABBC = B

R1– R2= AB – AC = A, và BA khôngđúng nghĩa là phụ thuộc hàm (R1R2)(R1– R2) không thuộc F+

.

R2– R1= AC – AB = C, và BC khôngđúng nghĩa là phụ thuộc hàm (R1R2)(R2– R1) cũng không thuộc F+

. Chúng ta có thể thấy được bằng cách xét quan hệ r = {a1b1c1, a2b1c2} của R. Thế thì AB (r) * BC (r) = {a1b1c1, a1b1c2, a2b1c1, a2b1c2}

II.3. Phân rã bảo toàn phụ thuộc

Chúng ta đã hiểu được rằng một phân rã cần phải có đặc tính nối không mất vì nó cho phép khôi phục lại một quan hệ ban đầu từ các hình chiếu của nó. Một đặc tính quan trọng khác của phân rã = (R1, …, Rk) của lược đồ quan hệ R là có thể suy ra được tập phụ thuộc F của R từ các hình chỉếu của F trên các Ri.

Cho lược đồ quan hệ R và F là tập các phụ thuộc hàm. Cho phân rã= (R1,… Rk). Ta có cácđịnh nghĩa sau.

Định nghĩa:

Hình chiếu của F trên một tập các thuộc tính Z ký hiệu Z(F) là tập các phụ thuộc X Y thuộc F+

sao cho XYZ ( chú ý rằng X Y không nhất thiết thuộc F; chỉ cần thuộc F+).

Định nghĩa:

Ta nói phân rãcó bảo toàn tập phụ thuộc hàm F nếu hợp của tất cả các phụ thuộc trong các hình chiếu của F trên các lược đồ con tươngđương với F.

Gọi Fi=Ri(F), với i = 1, 2, …, k Đặt G = F1F2…Fk =1k Fk

Theođịnh nghĩa thì:có bảo toàn phụ thuộcG≡F Nhắc lại G ≡ F (G tươngđương F) nghĩa là G+

= F+.

Lý do cần bảo toàn tập F đó là vì các phụ thuộc trong F có thể được xem là các ràng buộc toàn vẹn (intergrity constraint) cho lược đồ quan hệ R.

Nếu các phụ thuộc hình chiếu không suy ra được F thì khi biểu diễn R bằng  ) chúng ta có thể thấy rằng

Khi đó mỗi thao tác cập nhật trên một Ri, sẽ cần phải thực hiện một phép nối để kiểm tra lại rằng các ràng buộc không bị vi phạm.

Thí dụ III.14:

Chúng ta hãy xét Thí dụ “Sắp thời khóa biểu” trong đó chúng ta có các thuộc tính Phòng học (P), Giờ học (G), và

Môn học (M). Theo quiđịnh thì mỗi môn học chỉ được bố trí học vào 1 phòng học duy nhất, do đó có phụ thuộc hàm M P. Lưu ý mỗi môn học có thể học ở những giờ khác nhau. Đương nhiên với 1 phòng và 1 giờ cụ thể ta chỉ có thể sắp cho 1 môn học duy nhất, do đó có phụ thuộc hàm PGM.

Phân rã của lược đồ quan hệ PGM thành GM và PM có nối không mất, bởi vì

(GMPM )(PM – GM ) nghĩa là MP.

Tuy nhiên, chiếu của F = {PG M , M P} trên GM chỉ cho những phụ thuộc tầm thường (suy ra từ tính phản xạ), còn chiếu trên PM cho ra M  P và những phụ thuộc tầm thường khác. Chúng ta có thể thấy rằng M  P và các phụ thuộc tầm thường không suy ra PG Mđược, vì thế phân rã này không bảo toàn các phụ thuộc.

Chẳng hạn nối hai quan hệ trong Hình III.10(a) và (b) là quan hệ của Hình III.10 (c). Hình III.10(a) thỏa các phụ thuộc tầm thường như mọi quan hệ khác. Hình III.10(b) thỏa các phụ thuộc tầm thường và phụ thuộc M P.Tuy nhiên nối của chúng trong Hình III.10(c) vi phạm PG M.

G M P M

T.hai.7.00-9.30 CSDL P.101 CSDL

T.hai.7.00-9.30 TKCSDL P.101 TKCSDL

P G M P.101 T.hai.7.00-9.30 CSDL P.101 T.hai.7.00-9.30 TKCSDL

(c)

Một phần của tài liệu giáo trình thiết kế cơ sở dữ liệu phần 2 của trịnh minh tuấn (Trang 33)

Tải bản đầy đủ (PDF)

(92 trang)