- 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→A∈F+ (A∉X) 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→A∈F là phụ thuộc hàm không tầm
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 \ (EBI∪AD)=C => Iα ≠Q N={∪ ( Ri -Li ) sao cho Li ⊆Iα } = φ
N’=(Iα N)+ \ Iα = φ (N’⊆ Nα )
N’’=∪ Ri - ∪ Li =ABDEI \ ACDE=BI Nα=N∪N’∪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→A∈F+ với A∉X đề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 đồ