You are on page 1of 42

Phụ Thuộc Hàm

XYZ
1. HỆ LUẬT DẪN AMSTRONG
Với X, Y, Z, W ⊆ U. Phụ thuộc hàm có các tính chất sau:
F1) Tính phản xạ: Nếu Y ⊆ X thì X → Y
F2) Tính tăng trưởng: {X→Y} thì XZ → YZ
F3) Tính bắc cầu: {X→Y, Y→Z} thì X→Z
F4) Tính kết hợp: {X→Y,X→Z} thì X→YZ
F5) Tính phân rã: {X→YZ} thì {X→Y,X→Z}
F6) Tính tựa bắt cầu: {X→Y, YZ→W} thì XZ→W
2.BAO ĐÓNG

 Bước 1: X0 = X
 Bước 2: Xi+1 = Xi lần lượt xét các phụ thuộc hàm của F
Nếu Y → Z có Y ⊆ Xi+1 thì Xi+1 = Xi+1 U Z
Loại phụ thuộc hàm Y → Z khỏi F
 Bước 3:
Dừng khi Xi+1 = Xi hoặc khi Xi+1 =Q+
 Bước 4: Kết luận X+F = Xi
Ngược lại lặp lại bước 2
 Ví dụ:
Cho lược đồ quan hệ R(A, B, C, D, E, G, H) và tập phụ thuộc hàm
F={ f1: B → A , f2: DA → CE, f3: D → H, f4: GH→ C, f5: AC → D}
Tìm AC có phụ thuộc F+? Giải :
X0 = AC
X1 = AC∪ D = ACD (dof5)
X2=ACD ∪ CE = ACDE ( do f2)
X3=ACDE ∪ H =ACDEH (do f3)
X4=X3=ACDEH
Vậy ACF+=ACDEH
Bài toán thành viên
Cho tập thuộc tính Q, tập phụ thuộc
hàm F trên Q và một phụ thuộc hàm
X → Y trên Q. Câu hỏi đặt ra rằng X
→ Y ∈ F+ hay không?
X → Y ∈ F+ ⇔ Y ⊆ X+
 Bài toán thành viên
Ví dụ:
Cho lược đồ quan hệ R(A, B, C, D, E, G, H) và tập phụ thuộc hàm
F={ f1: B → A , f2: DA → CE, f3: D → H, f4: GH
→ C, f5: AC → D}
Tìm AC có phụ thuộc F+? (hoặc Cho f: AC → , f có phải là phụ thuộc hàm hệ quả
(là thành viên) của F không? Giải thích)
Giải :
X0 = AC
X1 = AC∪ D = ACD (dof5)
X2=ACD ∪ CE = ACDE ( do f2)
X3=ACDE ∪ H =ACDEH (do f3)
X4=X3=ACDEH
do ACF+ =ACDEH
Vì E ACF+ nên AC → E +
3:KHÓA

 Cho lược đồ quan hệ Q(A1, A2, …, An), Q+ là tập thuộc tính của quan hệ Q, F là tập phụ thuộc hàm trên Q,
K là tập con của Q+. Khi đó K gọi là một khóa của Q nếu:
 (i) K+F= Q+
 (ii) Không tồn tại K’ ⊂ K sao cho K’+F = Q+
 Thuộc tính A được gọi là thuộc tính khóa nếu A ∈ K, trong đó K là khóa của Q.
3.Khóa

 Tập thuộc tính nguồn, ký hiệu là N, là tập chứa những thuộc tính chỉ xuất hiện
ở vế trái của mọi phụ thuộc hàm.

 Tập thuộc tính trung gian, ký hiệu là TG, là tập chứa những thuộc tính
vừa xuất hiện ở vế trái, vừa xuất hiện ở vế phải trong các phụ thuộc
hàm.
3.Khóa

 Bước 1:
Tìm tập nguồn N.
Nếu N+F = Q+ thì chỉ có 1 khoá là N, ngược lại qua bước 2.
 Bước 2:
Tính tập trung gian TG.
Tính tập tất cả các tập con Xi của tập TG.
 Bước 3: Tìm tập S chứa mọi siêu khóa Si:
Với mỗi Xi , nếu (N ∪ Xi)+F= Q+ thì Si=(N∪ Xi)
 Bước 4: Loại các siêu khóa không tối thiểu:
∀Si, Sj, nếu Si ⊂ Sj thì S = S - Sj
 
Ví dụ: Cho R(ABCDEG) với tập PTH
F = { AE → C, CG → A, BD → G,
GA → E }
Xác định tất cả các khóa của R.

N = {B, D}
D=
L = {A, C, E, G}

N+ = BD+ = BDG ≠ R+
→ BD không phải là khóa của R
Li Xi = N Li Xi+
BD BDG
A BDA BDCGAE = R+
C BDC BDCGAE = R+
E BDE BDEG
G BDG BDG
AC BDAC
AE BDAE
AG BDAG
CE BDCE
CG BDCG
EG BDEG BDEG
ACE BDACE
ACG BDACG
AEG BDAEG
CEG BDCEG
ACEG BDACEG
3.CÁC DẠNG CHUẨN

 Dạng chuẩn 1 (1NF): First Normal Form (1NF)


 Dạng chuẩn 2 (2NF): Second Normal Form
(2NF)
 Dạng chuẩn 3 (3NF): Third Normal Form (3NF)
 Dạng chuẩn Boyce Codd (BCNF)
3.1 DẠNG CHUẨN 2 (2NF)

 Lược đồ Q ở dạng chuẩn 2 nếu thoả:

 (1) Q đạt dạng chuẩn 1

 (2) Mọi thuộc tính không khóa của Q đều phụ thuộc đầy đủ vào khóa.
3.1 DẠNG CHUẨN 2 (2NF)

Kiểm tra dạng chuẩn 2:


 Bước 1: Tìm mọi khóa của Q.
 Bước 2: Với mỗi khóa K, tìm bao đóng của tập tất cả các tập con thực sự S i của
K.
 Bước 3: Nếu tồn tại bao đóng S+i chứa thuộc tính không khóa thì Q không đạt dạng
chuẩn 2, ngược lại Q đạt dạng chuẩn 2.
 Ví dụ : Q(BDCZ); F = {B → C; BD → Z}
 

 Lược đồ có khóa là BD
 Có PTH B → C mà B BD,
C là thuộc tính không khóa
C không phụ thuộc đầy đủ vào khóa
Q không đạt DC2.
• Ví dụ: Q1(A, B, C, D); F1 = {AB, B CD}
 

Lược đồ chỉ có một khóa là A, nên mọi thuộc tính


đều phụ thuộc đầy đủ vào khóa.
Do vậy Q1 đạt DC 2
3.2 DẠNG CHUẨN 3 (3NF)
 

• Tập PTH có vế phải chứa 1 thuộc tính XA


• Lược đồ Q ở dạng chuẩn 3 nếu mọi phụ thuộc
hàm
X → A ∈ F+, với A ∉ X đều có:
 X chứa 1 khóa của Q (vế trái chứa khóa) hoặc
 A là thuộc tính khóa của Q (vế phải là tập con của
khóa)
 Ví dụ: Cho Q (A, B, C, D), F = {AB → D,
C → D}
 Q có một khóa là ABC
 Mọi phụ thuộc hàm trong F đều đã có vế phải
một thuộc tính.
 Với AB → D, có
Vế trái (AB) không chứa khóa.
Vế phải (D) không là thuộc tính khóa
 Vậy Q không đạt dạng chuẩn 3.
3.3 DẠNG CHUẨN BOYCE CODD (BCNF)

Lược đồ Q ở dạng chuẩn BC nếu mọi phụ thuộc hàm X → A ∈ F +, với


A ∉ X đều có X là siêu khóa.
Kiểm tra dạng chuẩn BCNF:
• Bước 1: Tìm mọi khóa của Q
• Bước 2: Phân rã vế phải của mọi phụ thuộc hàm trong F để tập F
trở thành tập phụ thuộc hàm có vế phải một thuộc tính.
• Bước 3: Nếu mọi phụ thuộc hàm X → A ∈ F, mà A ∉ X đều thỏa X
là siêu khóa (vế trái chứa một khóa), thì Q đạt dạng chuẩn BC,
ngược lại Q không đạt dạng chuẩn BC.
3.4 DẠNG
Kiểm tra dạng CHUẨN
chuẩn caoCAO NHẤT
nhất của lược đồ quan
hệ Q:
• Bước 1: Tìm mọi khóa của Q.
• Bước 2: Kiểm tra dạng chuẩn BC, nếu đúng
thì Q đạt dạng chuẩn BC, ngược lại qua bước
3.
• Bước 3: Kiểm tra dạng chuẩn 3, nếu đúng thì
Q đạt dạng chuẩn 3, ngược lại qua bước 4.
• Bước 4: Kiểm tra dạng chuẩn 2, nếu đúng thì
Q đạt dạng chuẩn 2, ngược lại Q đạt dạng
chuẩn 1.
Câu 2: (2.5 đ) Cho lược đồ quan hệ Q(ABCDEGH) có tập phụ thuộc
hàm:
F = {f1: A®H; f2: DG®B; f3: C®A; f4: E®D; f5: AE®C; f6: DG®H}

1. Cho f: EG ® C, f có phải là phụ thuộc hàm hệ quả (là thành


viên) của F không? Giải thích. (0.75 đ)
2. Tìm tất cả các khóa của lược đồ quan hệ (Q, F). (1 đ)
3. Lược đồ quan hệ (Q, F) có đạt dạng chuẩn 2 không? Giải
thích. (0.75 đ)
Câu 2: (2.5 đ) Cho lược đồ quan hệ Q(ABCDEGH) có tập phụ thuộc hàm:
F = {f1: A®H; f2: DG®B; f3: C®A; f4: E®D; f5: AE®C; f6: DG®H}

1. Cho f: EG ® C, f có phải là phụ thuộc hàm hệ quả (là thành


viên) của F không? Giải thích. (0.75 đ)

 Giải :
X0=EG;
X1=EG =EGD (do f4)
X2=EGD H =EGDH (do f6)
X3=EGDH B =EGDHB (do f2)
X4=X3=EDGBH (điều kiện dừng )
=> EGF+=EGDBH
Do C F+
Nên EG ® C F+
Câu 2: (2.5 đ) Cho lược đồ quan hệ Q(ABCDEGH) có tập phụ thuộc hàm:
F = {f1: A®H; f2: DG®B; f3: C®A; f4: E®D; f5: AE®C; f6: DG®H}
2 : Tìm tất cả các khóa của lược đồ quan hệ (Q, F). (1 đ)

 N = {E, G}
D = H, B }
L = {A, C, D}
N+=EG+= EGBDHR+
EG không phải khóa của R
Câu 2: (2.5 đ) Cho lược đồ quan hệ Q(ABCDEGH) có tập phụ thuộc hàm:
F = {f1: A®H; f2: DG®B; f3: C®A; f4: E®D; f5: AE®C; f6: DG®H}
2 : Tìm tất cả các khóa của lược đồ quan hệ (Q, F). (1 đ)

Li Xi = N Li Xi+
EG
A EGA EGAHDCB=R+
C EGC EGCADHB=R+
D EGD EGDB R+
AC EGAC
AD EGAD
CD EGCD
ACD EGACD

Tất cả các khóa của lược đồ quan hệ (Q, F): EGA ,EGC
Câu 2: (2.5 đ) Cho lược đồ quan hệ Q(ABCDEGH) có tập phụ thuộc hàm:
F = {f1: A®H; f2: DG®B; f3: C®A; f4: E®D; f5: AE®C; f6: DG®H}

  3. Lược đồ quan hệ (Q, F) có đạt dạng chuẩn 2 không? Giải thích.


(0.75 đ)
Giải :
Ta thấy lược đồ trên có quan hệ(Q,F) có 2 khóa EGA , EGC
Có PTH : E®D mà E EGA , D thuộc tính không khóa
D không phụ thuộc đầy đủ vào khóa
Lược đồ quan hệ (Q, F) có không đạt dạng chuẩn 2
Fonts & colors

#f9e9d9 #5b72b7
Use our editable graphic resources...
You can easily resize these resources, keeping the quality. To change the color, just
ungroup the resource and click on the object you want to change. Then, click on the
paint bucket and select the color you want. Don’t forget to group the resource again
when you’re done.
...and our set of editable icons
You can resize these icons, keeping the quality.
You can change the stroke and fill color; just select the icon and click on the paint-
bucket/pen.
Business Icons
Avatar Icons
Creative Process Icons
Educational Process Icons
Help & Support Icons
Medical Icons
Nature Icons
Performing Arts Icons
SEO & Marketing Icons
Teamwork Icons

You might also like