Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
120,5 KB
Nội dung
1
Chương 1: Phụ thuộc hàm
Nguồn: Nguyễn Xuân Huy, Lê Hoài Bắc, Bài tập cơ sở dữ liệu, Nhà XB Thống
kê, 2003
David Maier, The theory of relational database, Computer Science Press, 1983
Jeffrey D.Ullman, The principles of database and knowledge base system
Vol1, 2, Computer Science Press, 1989
Môn học Cơ sở dữ liệu nâng cao 2
Quan hệ
Cho tập hữu hạn U = {A
1
, A
2
, , A
n
} khác
trống (n
≥
1). Các phần tử của U được gọi là
thuộc tính, ứng với mỗi thuộc tính A
i
∈
U,i =
1,2, , n có một tập không rỗng dom(A
i
)
được gọi là miền trị của thuộc tính A
i
.
Lưu ý D là hợp của các dom(A
i
) với i=1,2,…,n
Một quan hệ R với các thuộc tính U =
{
A
1
,
A
2
, , A
n
}
, ký hiệu là R(U), là một tập
các ánh xạ t : U
→
D sao cho với mỗi A
i
∈
U
ta có t(A
i
)
∈
dom(A
i
). Mỗi ánh xạ được gọi
là một bộ của quan hệ R.
Môn học Cơ sở dữ liệu nâng cao 3
Phụ thuộc hàm
Cho tập thuộc tính U. Một phụ thuộc hàm (PTH)
trên U là công thức dạng
f: X
→
Y; X, Y
⊆
U
Cho quan hệ R(U) và một PTH f: X
→
Y trên
U. Ta nói quan hệ R thoả PTH f và viết R(f),
nếu hai bộ tuỳ ý trong R giống nhau trên X
thì chúng cũng giống nhau trên Y,
R(X
→
Y)
⇔
(
∀
u,v
∈
R): (u.X=v.X)
⇒
(u.Y=v.Y)
Cho tập PTH F trên tập thuộc tính U. Ta nói
quan hệ R(U) thoả tập PTH F, và viết R(F),
nếu R thoả mọi PTH trong F,
R(F)
⇔
(
∀
f
∈
F): R(f)
Môn học Cơ sở dữ liệu nâng cao 4
Hệ tiên đề Armstrong (1/2)
Hệ tiên đề Armstrong bao gồm:
∀
X, Y, Z
⊆
U
a1) phản xạ: Nếu Y
⊂
X thì X → Y
a2) tăng trưởng: Nếu Z
⊂
U và X → Y thì XZ → YZ
Ký hiệu XZ là X
∪
Z
a3) bắc cầu: Nếu X → Y và Y → Z thì X → Z
Cho tập PTH F trên tập thuộc tính U. Bao đóng
của F, ký hiệu F
+
là tập nhỏ nhất các PTH trên
U chứa F và thoả các tính chất a1 - a3 của hệ
tiên đề Armstrong
Môn học Cơ sở dữ liệu nâng cao 5
Hệ tiên đề Armstrong (2/2)
a4) bắc cầu giả:
Nếu X → Y và WY → Z thì XW → Z
a5) luật hợp: nếu X → Y và X → Z thì X → YZ
a6) luật phân rã: Nếu X → Y và Z
⊂
Y thì X → Z
Trong sáu luật trên thì a4, a5, a6 suy được từ
a1, a2, a3.
Môn học Cơ sở dữ liệu nâng cao 6
Suy dẫn theo tiên đề (suy dẫn logic)
Ta nói PTH f được suy dẫn theo tiên đề
(hoặc suy dẫn logic) từ tập PTH F và
ký hiệu là F ╞ f, nếu f
∈
F
+
.
F ╞ f
⇔
f
∈
F
+
Nói cách khác f được suy dẫn theo
tiên đề từ tập PTH F nếu xuất phát từ
F, áp dụng các luật a1, a2 và a3 của
hệ tiên đề Armstrong sau hữu hạn lần
ta sẽ thu được PTH f.
Ta viết F !╞ f để biểu thị tập PTH F
không dẫn logic ra được PTH f.
Môn học Cơ sở dữ liệu nâng cao 7
Bao đóng của tập thuộc tính
Cho tập PTH F trên tập thuộc tính U và
một tập con các thuộc tính X trong U.
Bao đóng của tập thuộc tính X, ký hiệu
X
+
là tập thuộc tính
X
+
= { A
∈
U | X
→
A
∈
F
+
}
Môn học Cơ sở dữ liệu nâng cao 8
Thuật toán tìm bao đóng của
một tập thuộc tính
Cho tập PTH F trên tập thuộc tính U
và một tập con các thuộc tính X trong
U.
Để xác định bao đóng của tập thuộc
tính X, X
+
ta xuất phát từ tập X và bổ
sung dần cho X các thuộc tính thuộc
vế phải R của các PTH L
→
R
∈
F
thỏa điều kiện L
⊆
X.
Thuật toán sẽ dừng khi không thể bổ
sung thêm thuộc tính nào cho X.
Môn học Cơ sở dữ liệu nâng cao 9
Bài toán thành viên
Cho tập thuộc tính U, một tập các PTH F
trên U và một PTH X
→
Y trên U. Hỏi
rằng X
→
Y
∈
F
+
hay không ?
Định lý
X
→
Y
∈
F
+
khi và chỉ khi Y
⊆
X
+
.
Môn học Cơ sở dữ liệu nâng cao 10
Bài toán thành viên
Procedure Member
Vào: tập PTH F và PTH X → Y
Ra : Đúng nếu X → Y
∈
F
+
và Sai nếu
nguợc lại
Member(F, X → Y)
Begin
If Y
⊆
Closure(X,F) Then return (True)
Else Return (False)
End