Trong mục này chúng ta đưa ra khái niệm quan trọng để mô tả dạng chuẩn 3NF.
Định Nghĩa 1.
Một phụ thuộc hàm A → C được gọi là trực tiếp nếu không có B
( B ≠ A và B ≠ C ) sao cho A → B và B → C nhưng B không phụ thuộc
hàm vào A hoặc C không phụ thuộc hàm vào B. Trong trường hợp nếu có
f r
B như vậy thì B được gọi là tập thuộc tính bắc cầu và A → C là phụ thuộc bắc cầu.
Định lý 2.
Giả sử r = { h1, h2,.., hm} là một quan hệ trên R = {a1, a2,..., an}. Khi ấy r ở dạng chuẩn 3NF nếu và chỉ nếu:
- Quan hệ r đã ở dạng chuẩn 2NF.
- Không có thuộc tính thứ cấp nào của r phụ thuộc bắc cầu vào một khoá tối tiểu.
Mệnh đề 3.
Giả sử s là một sơ đồ quan hệ trên R. Khi đó s là 3 NF nếu và chỉ nếu
- s là 2NF
- Mọi thuộc tính thứ cấp của s phụ thuộc trực tiếp vào mỗi khoá tối
tiểu.
Trong dạng chuẩn 3NF chúng ta loại bỏ các phụ thuộc bộ phận, phụ thuộc bắc cầu giữa các thuộc tính thứ cấp với các khoá tối tiểu.
Một số đặc trưng của các sơ đồ quan hệ dạng 3NF
Cho s = < R, F > là một sơ đồ quan hệ trên R. Từ s chúng ta xây dựng Z(s) = {X+ : X ⊆ R}, và tính hệ sinh Ns của Z(s). Chúng ta đặt
Ts = {A ∈ Ns: ∃ B ∈ Ns : A ⊂ B}
Biết rằng [1] đối với một sơ đồ quan hệ s cho trước thì tồn tại một quan hệ
r là quan hệ Armstrong của s.
Mệnh đề 4.
S là một sơ đồ quan hệ. Khi đó Ks-1 = Ts
Cho s = < R, F > là một sơ đồ quan hệ. Đặt Fn là tập tất cả các thuộc tính thứ cấp của s.
Khi đó s là 3NF nếu và chỉ nếu ∀B ∈ Ks-1, a ∈ Fn : (B - a)+ = B - a.
Chứng minh:
Giả sử Fn ≠∅ . Có thể thấy rằng s là 3NF thì đối với mỗi B ∈ Ks-1, a
∈ Fn: B - a = (B - a)+.
Ngược lại, nếu s không là 3NF thì tồn tại một tập A và a ∈ Fn : a ∉
A sao cho A →{a}∈ F+ và A+ ≠ R. Phù hợp với Mệnh đề 4 có B ∈ K-1 r
sao cho A+ ⊆ B. Từ a ∈ A+ chúng ta có a ∈ B. Do a ∉ A ta có A ⊆ B - a. Do đó ta thu được B - a ⊂ (B - a)+.
Định lý 6.
Giả sử r là một quan hệ trên R. Khi đó r là 3NF nếu và chỉ nếu với mọi A ∈ Er, a ∈A và a là thuộc tính thứ cấp thì {A - a}r+ = A - a, ở đây Er
là hệ bằng nhau cực đại của r. Từ định lý 5 ta có hệ quả sau
Hệ quả 7.
Giả sử s là một quan hệ trên R. Khi đó s là 3NF nếu và chỉ nếu với mọi A : A+ = A, a ∈ A và a là thuộc tính thứ cấp thì {A - a}+ = A - a.