26. CÁC DẠNG CHUẨN CƠ BẢN CỦA LƢỢCĐỒ QUAN HỆ
26.2.3. Dạng chuẩn 3 (3NF Third normal form)
Định nghĩa1: Cho lƣợc đồ quan hệ =(U, F), lƣợc đồ đƣợc gọi là ở dạng chuẩn 3, ký hiệu là 3NF, nếu nhƣ lƣợc đồ ở dạng chuẩn 2NF và các thuộc tính không khoá của là không phụ thuộc hàm bắc cầu vào khoá chính.
Định nghĩa 2:Cho lƣợc đồ quan hệ =(U, F), lƣợc đồ đƣợc gọi là ở dạng chuẩn 3, ký hiệu là 3NF, nếu nhƣ mọi phụ thuộc hàm X A F+ với A X thì:
- Hoặc X là siêu khóa - Hoặc A là thuộc tính khóa.
Nhận xét: Lƣợc đồ quan hệ =(U, F), với F là tập các phụ thuộc hàm có vế phải chỉ gồm một thuộc tính. Khi đó lƣợc đồ ở dạng chuẩn 3NF khi và chỉ khi mọi phụ thuộc hàm X A F với A X đều có
- Hoặc X là siêu khóa - Hoặc A là thuộc tính khóa
Thuật toán kiểm tra lƣợc đồ ở dạng chuẩn 3NF hay không?
Từ nhận xét trên ta có thuật toán kiểm tra xem một lƣợc đồ có ở dạng chuẩn 3NF hay không nhƣ sau:
Input: lƣợc đồ quan hệ =(U, F).
Output: khẳng định đạt chuẩn 3NF hay không.
Thuật toán
Vào: Lƣợc đồ quan hệ Q,tập phụ thuộc hàm F.
Ra: Khẳng định Q đạt chuẩn 3 hay không đạt chuẩn 3. 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 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 hoặc A là thuộc tính khóa thì Q đạt chuẩn 3 ngƣợc lại Q không đạt chuẩn 3.
Ví dụ:
Cho lƣợc đồ quan hệ Q(A,B,C,D) F={AB→C; D→B; C→ABD} Hỏi lƣợc đồ có ở dạng 3NF?
={AB}; ={AD}; ={C} là các khóa => mọi phụ thuộc hàm X→A F đều có A là thuộc tính khóa. Vậy Q đạt chuẩn 3