Dạng chUẩn BCNF (Boyce Codd normal form)

Một phần của tài liệu Bai_16_Chuan_Hoa_Luoc_Do_Quan_He docx (Trang 35 - 42)

- Hoặ cA là thuộc tính khóa.

16.2.4. dạng chUẩn BCNF (Boyce Codd normal form)

(Boyce Codd normal form) Định nghĩa 1:

Cho lược đồ quan hệ α= ( U, F), lược đồ α được gọi là ở dạng chuẩn Boyce Codd, ký hiệu là BCNF, nếu như lược đồ ở dạng chuẩn 1NF và nếu X→AF+ (AX) thì X phải là siêu khóa của lược đồ.

Định ngĩa 2:

Cho lược đồ quan hệ α= ( U, F), lược đồ α được gọi là ở dạng chuẩn Boyce Codd, ký hiệu là BCNF, nếu như lược đồ ở dạng chuẩn 1NF và nếu X→AF là phụ thuộc hàm không tầm thường (Y X) thì X phải là siêu khóa của lược đồ.

16.2.4. dạng chUẩn BCNF (Boyce Codd normal form) (Boyce Codd normal form)

Thuật toán kiểm tra lược đồ ở dạng chuẩn BCNF hay không?

Từ định nghĩa về dạng chuẩn BCNF trên ta có thuật toán

kiểm tra xem một lược đồ có ở dạng chuẩn BCNF hay không như sau:

Input: Lược đồ quan hệ α =( U, F)

16.2.4. dạng chUẩn BCNF (Boyce Codd normal form) (Boyce Codd normal form) Thuật toán 1:

Thuật toán kiểm tra dạng chuẩn BCNF

Vào: Lược đồ quan hệ Q, tập phụ thuộc hàm F

Ra: Khẳng định Q có đạt dạng chuẩn 3NF hay không Bước 1: Tìm tất cả khóa của Q.

Bước 2: Từ F tạo tập phụ thuộc hàm tương đương FItt có vế phải một thuộc tính.

Bước 3: Nếu mọi phụ thuộc hàm X→ A FItt với A X đều có X là siêu khóa thì Q đạt chẩn BCNF ngược lại Q không đạt chuẩn BCNF.

16.2.4. dạng chUẩn BCNF (Boyce Codd normal form) (Boyce Codd normal form) Ví dụ:

Q (A, B, C, D, E, I) F={ACD→EBI; CE→AD }. Hỏi Q có đạt chuẩn BCNF hay không? Hỏi Q có đạt chuẩn BCNF hay không?

Giải:

Iα =Q \ ( Ri -Li )=ABCDEI \ (EBIAD)=C => Iα ≠Q N={ ( Ri -Li ) sao cho Li Iα } = φ

N’=(Iα N)+ \ Iα = φ (N’ Nα )

N’’= Ri - Li =ABDEI \ ACDE=BI Nα=NN’N’’=BI

B=Q \ N’ \ Iα=ABCDEI \ BI \ C=ADE Vì B=3>2 => Iα ={ C}, B={ADE}

16.2.4. dạng chUẩn BCNF (Boyce Codd normal form) (Boyce Codd normal form)

F =FItt={ ACD→E, ACD→B, ACD→I, CE→A, CE→D} Mọi phụ thuộc hàm của FItt đều có vế trái là siêu khóa Mọi phụ thuộc hàm của FItt đều có vế trái là siêu khóa

=> Q đạt dạng chuẩn BCNF.

X (Iα ∪ X) (Iα ∪ X)+ Siêu khóa Khóa

C C

A AC AC

D CD CD

E CE ABCDEI CE CE

AD ACD ABCDEI ACD ACD

AE ACE ABCDEI ACE

DE CDE ABCDEI CDE

16.2.4. dạng chUẩn BCNF (Boyce Codd normal form) (Boyce Codd normal form) Thuật tán 2:

Bước 1: Từ F tìm tập phụ thuộc hàm tương đương F’, mà vế phải của các phụ thuộc hàm trong F’ chỉ có một thuộc tính. Bước 2: Nếu mọi phụ thuộc hàm X→AF+ với AX đều có X là siêu khóa thì α đạt chẩn BCNF ngược lại α không đạt chuẩn BCNF.

NỘI DUNG Chi tiết :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form) Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form) Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Một phần của tài liệu Bai_16_Chuan_Hoa_Luoc_Do_Quan_He docx (Trang 35 - 42)