1. Trang chủ
  2. » Thể loại khác

CHƯƠNG V: PHỤ THUỘC HÀM

20 7 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Chương V: Phụ Thuộc Hàm
Trường học Trường Đại học Công Nghệ Thông Tin - Đại học Quốc gia Hà Nội
Chuyên ngành Cơ sở dữ liệu và Hệ quản trị cơ sở dữ liệu
Thể loại Giáo trình
Năm xuất bản 2012
Thành phố Hà Nội
Định dạng
Số trang 20
Dung lượng 1,11 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Hệ tiên đề Amstrong 3.. Bao đóng phụ thuộc hàm, tập thuộc tính 4.. Phụ thuộc hàm  Định nghĩa: Cho RU, với R là quan hệ và U là tập thuộc tính...  Trong quan hệ SVMaSV,Ten,Diachi,Nga

Trang 1

CHƯƠNG V:

PHỤ THUỘC HÀM

Trang 2

Nội dung chi tiết

1 Phụ thuộc hàm

2 Hệ tiên đề Amstrong

3 Bao đóng phụ thuộc hàm, tập thuộc tính

4 Bài toán thành viên

5 Tập PTH tương đương

6 Tập PTH tối thiểu – Phủ tối thiểu

7 Khóa của quan hệ

Trang 3

I Phụ thuộc hàm

Định nghĩa:

Cho R(U), với R là quan hệ và U là tập thuộc tính

Cho X,Y ⊆U, phụ thuộc hàm X → Y (đọc là X xác định

Y) được định nghĩa là:

∀ t, t’ ∈ R nếu t.X = t’.X thì t.Y = t’.Y

(Có nghĩa là: Nếu hai bộ có cùng trị X thì có cùng trị Y

 Cách đọc: X xác định Y hay Y phụ thuộc hàm vào X

- X gọi là vế trái của PTH, Y là vế phải của PTH

 Phụ thuộc hàm thường được ký hiệu là FD hay F (Functional Dependencies)

Trang 4

 Trong quan hệ SV(MaSV,Ten,Diachi,Ngaysinh), mỗi thuộc tính Ten, Diachi, Ngaysinh đều phụ thuộc hàm (pth) vào thuộc tính MaSV

 Mỗi giá trị MaSV xác định duy nhất một giá trị tương ứng đối với từng thuộc tính đó Khi đó, có thể viết :

- MaSV DIACHI

- MaSV TEN

- MaSV NGAYSINH

Trang 5

Ví dụ 2: Cho quan hệ R(A,B,C,D) như sau:

 Cho biết các phụ thuộc hàm nào liệt kê dưới đây được thoả trong quan hệ R ở trên?

- f1: A A

- f2: A B

- f3: A C

- f4: AC C

- f5: A D

- f6: D A

R (A B C D)

a 1 x 2

a 1 y 2

b 2 x 1

b 2 y 1

Trang 6

 Nhận xét:

ràng buộc

tối thiểu và chuẩn hoá các quan hệ trong cơ sở dữ liệu

- Nếu X Y thì không thể nói gì về Y X

- Ví dụ:

Có MSV Tên thì không thể khắng định Tên MSV vì có thể có

nhiều sinh viên cùng tên

Có MSV Ngaysinh thì không thể khắng định Ngaysinh MSV vì có

thể có nhiều sinh viên sinh cùng ngày

Trang 7

Biểu diễn phụ thuộc hàm:

- Dùng đường nối mũi tên từ các thuộc tính vế trái đến các

thuộc tính vế phải của tất cả các phụ thuộc hàm

 Ví dụ:

MƯỢN(Sốthẻ, Mãsốsách, Tênngườimượn, Tênsách, Ngàymượn)

- Với các phụ thuộc hàm:

FD1: Sốthẻ Tênngườimượn

FD2: Mãsốsách Tênsách

FD3: Sốthẻ, Mãsốsách Ngàymượn

 Có sơ đồ phụ thuộc hàm như sau: MƯỢN

Sốthẻ Mã số

sách

Tên người mượn

Tên sách Ngàymượn

FD3

FD1

FD2

Trang 8

II Hệ tiên đề Amstrong

Năm 1974, Amstrong đưa ra hệ luật dẫn hay các tính chất

của phụ thuộc hàm, gọi là hệ tiên đề Amstrong  các

nguyên tắc biến đổi của pth

Định nghĩa:

- F là tập pth trên quan hệ R(U) và A B là một pth với A,

B U Nói rằng, pth A B được suy diễn logic từ F nếu với

mỗi quan hệ r xác định trên R thỏa các phụ thuộc hàm trong

F thì cũng thỏa phụ thuộc hàm A B

 Ví dụ:

- Tập phụ thuộc hàm F = { A B, B C}

- Ta có phụ thuộc hàm A C là phụ thuộc hàm được suy dẫn

từ tập F

Trang 9

* Hệ tiên đề Amstrong:

 Cho X, Y, Z, W U Ký hiệu: XY = X Y Ta có các luật sau :

1 Luật phản xạ: Nếu Y X thì X Y

2 Luật bổ sung - tăng trưởng: Nếu X Y thì XZ YZ

VD: Nếu C D thì ABC ABD

3 Luật bắc cầu: Nếu X Y và Y Z thì X Z

VD: Nếu có AB C, C EG thì AB EG

4 Luật hợp: Nếu X Y và X Z thì X YZ

VD: Nếu AB CD và AB EF thì AB CDEF

5 Luật tách: Nếu X Y và Z Y thì X Z

VD: Nếu AB CDEF thì AB CD và AB EF

6 Luật tựa bắc cầu:

Nếu X Y và WY Z thì XW Z

VD: Nếu AB EF và DEF G thì ABD G

Trang 10

Ví dụ 1: Cho R = ABC và

tập F = { AB C , C A }

Áp dụng hệ tiên đề Amstrong CMR: BC ABC

Trang 11

Ví dụ 2: Cho lược đồ quan hệ R (A, B, C, D, E, G, H) và tập phụ

thuộc hàm F = {BD, ABC, CDE, ECGH, GA} Áp dụng

hệ tiên đề Amstrong để tìm chuỗi suy diễn cho: AB  E và AB G

Thực hiện:

1 AB C (gt)

2 AB  BC (tăng cường thêm B)

3 B  D (gt)

4 BC  DC (t/c thêm C)

5 CD  E (gt)

6 BC  E ( bắc cầu 4 và 5)

7 AB  E (bắc cầu 2 và 6)

8 AB  EC (hợp 1 và 7)

9 EC  GH (gt)

10 AB  GH ( bắc cầu 8 và 9)

11 AB  G (tách)

Trang 12

Ví dụ 3: Cho R= {A, B, C, E, F }

Và F= { AB C, C B , ABC  E, F A} Áp dụng hệ tiên đề

Amstrong CMR: FB  E

Thực hiện:

1 F  A ( gt)

2 FB  AB ( tăng cường)

3 AB  C (gt)

4 ABC  C (tc)

5 ABC  E (gt)

6 ABC  EC ( hợp 4 và 5)

7 AB  E ( tách 6)

Trang 13

Ví dụ 4:

 Chứng Minh:

1 Từ X Y ( gt)

3 Từ U V (gt)

5 Có XU YV ( bắc cầu (2) và (4) )

Trang 14

III Bao đóng

 Gọi F là tập các pth trên tập thuộc tính U, X U

Bao đóng của phụ thuộc hàm: là tập tất cả các

PTH được suy diễn logic từ tập pth F, kí hiệu là F+

Nhận xét: Nếu F+ = F thì F là họ đầy đủ của các pth

Trang 15

Bao đóng của tập thuộc tính X: là tất cả các thuộc tính

A mà phụ thuộc hàm X A có thể được suy diễn logic

từ F nhờ hệ tiên đề Amstrong Kí hiệu: X+

X+ = { A U | X A F+ }

Nhận xét:

- X X+

- X Y F+  Y X+ => Có nghĩa là: X Y được suy

diễn từ hệ tiên đề Amstrong khi và chỉ khi Y X+

Trang 16

2 Thuật toán tìm bao đóng của tập thuộc tính

 Cho X U là tập thuộc tính => Tìm X+

Thuật toán CLOSURE(X,F)

-Input: Tập thuộc tính X và tập phụ thuộc hàm F

-Output: Tìm bao đóng X+ của F

-Thực hiện: Lần lượt tính các X0, X1, X2, …, theo các bước sau:

Bước 1: Đặt X0 = X

Bước 2: Lần lượt xét các phụ thuộc hàm của F nếu tồn

tại pth Y Z F mà Y Xi thì X i+1 = X i {Z}, ngược lại, đặt

X i+1 = X i

Bước 3: Nếu ở bước 2 mà không tính được Xi+1 thì Xi

chính là bao đóng của tập thuộc tính X, ngược lại lặp lại

Trang 17

Ví dụ 1:

 Cho R = (A, B, C, D, E, G) và

pth F = {AB C, C A, BC D, ACD B, D EG, BE C,

CG BD, CE AG} Tính: (BD) +

Trang 18

Ví dụ 2:

 Cho R = (A,B,C,D,E,H) và

 F = { AB → C, BC → AD, D → E, CE → B}

Tính (AB)+?

Trang 19

Ví dụ 3: U = (ABCDEGH) và tập pth F ={A  D, AB 

DE, CE G, EH}

- Tính bao đóng X + với X= (AB )

Và F = {A  C, B C, CD, DE  C, CE A}

- Tính bao đóng X + với X = ( AE)

Trang 20

Bài tập áp dụng:

- (AB)+

- (BD)+ - (D)+

- Kiểm tra xem CE->A; DE->A có là thành viên của F

Ngày đăng: 07/12/2022, 02:29

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN