THIẾT KẾ CƠ SỞ DỮ LIỆU
QUAN HỆ (Relational Database Designing)
Phần IV – PHỤ THUỘC HÀM
(Functional Dependency)
Phụ thuộc hàm – Khái niệm
•
Phụ thuộc hàm là công cụ để biểu diễn hình thức
các RBTV phụ thuộc.
•
Các lý thuyết về Phụ thuộc hàm ứng dụng nhiều
trong bài toán Chuẩn Hóa CSDL.
•
Ký hiệu :
X Y : Y phụ thuộc hàm vào X hay X xác
định Y.
với X, Y là các tập thuộc tính (trong 1 lược đồ
quan hệ).
Khái niệm về Phụ thuộc hàm
Phụ thuộc hàm – Định nghĩa
Cho Q(A
1
,A
2
,…,A
n
); X, Y là 2 tập con của Q
+
; q là 1 quan
hệ trên Q; t
1
, t
2
là 2 bộ bất kỳ của q.
Ta có X xác định Y , ký hiệu X Y , nghĩa là
(t
1
.X=t
2
.X => t
1
.Y=t
2
.Y)
Nếu 2 bộ bất kỳ trong q giống nhau trên X thì phải giống
nhau trên Y.
X Y là PTH của Q, khi X Y đúng với mọi q là quan
hệ trên Q
Hệ quả : ∀Q, ∀X ⊂ Q
+
, X ∅
Định nghĩa về Phụ thuộc hàm
Phụ thuộc hàm hiển nhiên (Trivial Dependencies)
Nếu X ⊇ Y thì XY luôn đúng
Trong trường hợp này (X ⊇ Y), XY được
gọi là Phụ thuộc hàm hiển nhiên.
Ví dụ : XX
Khi chuẩn hóa CSDL, ta thường không quan
tâm đến các PTH hiển nhiên.
Phụ thuộc hàm hiển nhiên
Thuật toán kiểm tra PTH : Satifies
Input : _ Quan hệ q,
_ Tập thuộc tính X, Y
Output :
_ True nếu XY, ngược lại, False
Thuật toán kiểm tra Phụ thuộc hàm (p.1)
Thuật toán kiểm tra PTH (t.t)
Bước 1 :
Sắp lại các bộ trong q sao cho các bộ giống
nhau trên X nằm kề nhau.
Bước 2 :
Kiểm tra nếu tất cả các bộ giống nhau trên
X cũng giống nhau trên Y thì trả về True,
ngược lại, trả về False.
Thuật toán kiểm tra Phụ thuộc hàm (p.2)