1. Định nghĩa các thuật ngữ: cơ sở dữ liệu, hệ quản trị cơ sở dữ liệu, hệ cơ sở dữ
15.2.4. Dạng chuẩn Boyce Codd ( BCNF Boyce Codd normal form)
Định nghĩa 1: Cho lược đồ quan hệ α =(U, F), lược đồ α đượcgọ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 XA∈F+ ( A∉X ) thì X phải là siêu khoá của lược đồ.
Định nghĩa 2: Cho lược đồ quan hệ α =(U, F), lược đồ α đượcgọ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 XY∈F là phụ thuộc hàm không tầm thường (Y⊄X) thì X phải là siêu khoá của lược đồ.
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).
Output: Khẳng định αđạt chuẩn BCNF hay không. Thuật toán 1:
Thuật toán kiểm tra dạng chuẩn BC
Vào:lược đồ quan hệ Q, tập phụ thuộc hàm F
Ra: Khẳng định Q đạt chuẩn BC hay không đạt chuẩn BC. Bước 1:Tìm tất cả khóa của Q
Bước 2:Từ F tạo phụ thuộc hàm tương đương có vế phải 1 thuộc tính. Bước 3:Nếu mọi phụ thuộc hàm X→A với A∉X đều có X là siêu khóa thì Qđạt chuẩn BC ngược lại Q không đạt chuẩn BC.
Ví dụ:
Q(A,B,C,D,E,I) F={ACD→EBI, CE→AD}. Hỏi Q có đạt chuẩn BC không? Giải:
TN={C} TG={ADE}
X1 (TN∪ ) Siêu khóa Khóa
Ø C C
A AC AC
AD ACD ABCDEI ACD ACD
E CE ABCDEI CE CE
AE ACE ABCDEI ACE
DE CDE ABCDEI CDE
ADE ACDE ABCDEI ACDE
F ={ ACD→E, ACD→B, ACD→I, CE→A, CE→D}
Mọi phụ thuộc hàm của đều có vế trái là siêu khóa => Q đạt chuẩn BC
Thuật toán 2:
b1) 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.
b2) Nếu mọi phụ thuộc hàm XA∈ F’ với A∉ X đều có X là siêu khóa thì
αđạt chuẩn BCNF ngược lại αkhông đạt chuẩn BCNF.