45
BÀI 16: CHUẨN HOÁ LƯỢC ĐỒ QUAN HỆ 1/ 45

chuan hoa luoc do quan he

Embed Size (px)

DESCRIPTION

chuan hoa luoc do quan he

Citation preview

Page 1: chuan hoa luoc do quan he

BÀI 16:CHUẨN HOÁ LƯỢC ĐỒ QUAN HỆ

1/45

Page 2: chuan hoa luoc do quan he

NỘI DUNG :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

2/45

Page 3: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

3/45

Page 4: chuan hoa luoc do quan he

16.1. MỘT SỐ KHÁI NIỆM LIÊN QUAN

Chuẩn hóa:

Là quá trình tách một lược đồ quan hệ thành một tập các lược đồ con, sao cho quá trình tách là không mất thông tin và các lược đồ con là tối ưu hơn lược đồ ban đầu theo nghĩa: hạn chế dư thừa dữ liệu, thuận lợi cho các quá trình tạo lập, cập nhật và các thao tác tìm kiếm khác.

Định nghĩa về thuộc tính khóa:

Cho lược đồ quan hệ α=(U, F), thuộc tính AU được gọi là thuộc tính khóa nếu như A thuộc một trong các khóa nào đó, ngược lại A được gọi là thuộc tính không khóa.

4/45

Page 5: chuan hoa luoc do quan he

16.1. MỘT SỐ KHÁI NIỆM LIÊN QUAN

Định nghĩa phụ thuộc hàm đầy đủ:

Cho lược đồ quan hệ α=(U, F), X, Y, YU tập thuộc tính Y được gọi là phụ thuộc hàm đầy đủ vào tập thuộc tính X nếu như Y phụ thuộc hàm vào X nhưng không phụ thuộc hàm vào bất kỳ một tập con thực sự nào của x tức là:

- X→ Y ( Y phụ thuộc hàm vào X)

- X’ X thì X’→ Y (mọi tập con thực sự của X đều

không thể xác định hàm Y)

5/45

Page 6: chuan hoa luoc do quan he

16.1. MỘT SỐ KHÁI NIỆM LIÊN QUAN

Định nghĩa phụ thuộc hàm bắc cầu:

Cho lược đồ quan hệ α=(U, F), XU, AU, thuộc tính A được gọi là phụ thuộc hàm bắc cầu vào tập thuộc tính X nếu như Y X để:

- X → Y

- Y → A

- Y → X

- A XY

Nêú X → Y và Y không phụ thuộc bắc cầu vào X thì Y phụ thuộc hàm trực tiếp vào X

6/45

Page 7: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

7/45

Page 8: chuan hoa luoc do quan he

16.2. CÁC DẠNG CHUẨN

Sự cần thiết chuẩn hóa dữ liệu: • Mục tiêu: là triệt tiêu mức cao nhất khả năng xuất hiện các dị thường thông tin khi thực hiện các phép lưu trữ.• Chẩn hóa: khảo sát danh sách các thuộc tính và áp dụng các tập quy tắc phân tích vào danh sách đó, biến đổi thành nhiều tập nhỏ hơn sao cho:

Tối thiểu việc lặp lại.

Tránh dị thường thông tin.

Xác định và giải quyết được sự không rõ ràng, nhập nhằng trong suy diễn.

8/45

Page 9: chuan hoa luoc do quan he

16.2. CÁC DẠNG CHUẨN

Quá trình chuẩn hóa:

Là quá trình tách lược đồ quan hệ về một nhóm tương đương các lược đồ quan hệ chiếu sao cho khi kết nối tự nhiên không làm tổn thất thông tin và bảo toàn được các phụ thuộc hàm.

Cơ sở chuẩn hóa:

Dựa trên các khái niệm về phụ thuộc hàm, phụ thuộc hàm đầy đủ, khóa, các thuộc tính không khóa…

9/45

Page 10: chuan hoa luoc do quan he

16.2. CÁC DẠNG CHUẨN

Ví dụ:

Lược đồ quan hệ QLCAP( TC#, GTR, MC#, N#, NXS)

Trong đó: TC# : Mã tuyến cáp GTR : Giá trị của cáp

NSX : Nước sản xuất MC# : Mã cáp

N# : Mã nước sản xuất

Ngữ nghĩa dữ liệu như sau:

Trong một tuyến cáp, giá trị của một loại cáp được xác định duy nhất.

Mỗi mã cáp xác định mã nước sản xuất cáp.

Mã nước xác định tên nước sản xuất.

10/45

Page 11: chuan hoa luoc do quan he

16.2. CÁC DẠNG CHUẨN

Hình 16.1: Sơ đồ các phụ thuộc hàm trong lược đồ quan hệ QLCAP

GTR

MC#

TC#

NSX

N#

Ví dụ:

11/45

Page 12: chuan hoa luoc do quan he

16.2. CÁC DẠNG CHUẨN

TC# GTR MC# N# NSX

T01 200 C01 HAQ Hàn Quốc

T01 250 C02 HAQ Hàn Quốc

T01 220 C03 VTC Việt Nam

T02 500 C01 HAQ Hàn Quốc

T02 400 C04 JAN Nhật Bản

T03 100 C05 RUS Nga

T04 400 C06 CHN Trung Quốc

T04 450 C03 VTN Việt Nam

Bảng 16.1: Một thể hiện của lược đồ quan hệ QLCAP

12/45

Page 13: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

13/45

Page 14: chuan hoa luoc do quan he

16.2.1. DẠNG CHUẨN 1 (1NF-FIST NORMAL FORM)

Định nghĩa:Một lược đồ quan hệ α=(U, F) được gọi là ở dạng chuẩn một ( 1NF) nếu và chỉ nếu tất cả miền giá trị của các thuộc tính của R đều nguyên tố (không thể phân chia được)

Ví dụ:Xét quan hệ S(S#, PRO), thấy rằng thuộc tính PRO chứa các giá trị không nguyên tố. Vì vậy quan hệ này không phải là quan hệ dạng chuẩn 1NF.

14/45

Page 15: chuan hoa luoc do quan he

16.2.1. DẠNG CHUẨN 1 (1NF-FIST NORMAL FORM)

Ví dụ:

Bảng 16.2: Một ví dụ quan hệ không 1NF.

S# PROP# QTY

S1 100 1200 1300 2

S2 100 2200 2

S3 300 3100 1

15/45

Page 16: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

16/45

Page 17: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Trước khi nghiên cứu dạng chuẩn thứ 2, ta xét ví dụ sau đây:

Xét CSDL gồm 2 lược đồ quan hệ THI (MONTHI, GIAOVIEN) và SINHVIEN ( MONTHI, MSSV, TEN, TUOI, DCHI, DIEM) phản ánh thông tin về kết quả thi của một đơn vị nào đó. Trong quan hệ THI thì MONTHI là khóa và trong quan hệ SINHVIEN thì MONTHI và MSSV là khóa. Ở quan hệ thứ hai dễ nhận thấy rằng MONTHI, MSSV, DIEM xác định kết quả thi của sinh viên còn MSSV, TEN, TUOI, DCHI xác định đối tượng dự thi.

17/45

Page 18: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Xét các hiện hành của 2 lược đồ quan hệ THI và SINHVIEN như sau:

THI

MONTHI GIAOVIEN

Toán T.Trợ

Lý T.Công

Hóa T.Giao

18/45

Page 19: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

SINHVIEN

MONTHI MSSV TEN TUOI DCHI DIEM

Toán 11 Lan 20 HN 8.0

Toán 12 Hue 21 HY 7.5

Hóa 11 Lan 20 HN 7.0

Hóa 12 Hue 21 HY 6.0

Lý 11 Lan 20 HN 5.0

Lý 13 An 21 BN 4.0

19/45

Page 20: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Trong quá trình cập nhật, truy suất dữ liệu xuất hiện các vấn đề sau:

Dư thừa dữ liệu Phép thay đổi Phép chèn Phép loại bỏ

20/45

Page 21: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Định nghĩa:

Cho lược đồ quan hệ α=(U, F), lược đồ α được gọi là ở dạng chuẩn 2( ký hiệu là 2 NF) nếu như lược đồ ở dạng chuẩn 1 NF và các thuộc tình không khóa của α là phụ thuộc đầy đủ vào khóa chính.

Thuật toán kiểm tra lược đồ có ở dạng chuẩn 2NF hay không?Input: Lược đồ quan hệ α =( U, F)

Output: Khẳng định α có đạt dạng chuẩn 2NF hay không

21/45

Page 22: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Thuật toán 1:

Thuật toán kiểm tra dạng chuẩn 2NF

Vào: Lược đồ quan hệ Q, tập phụ thuộc hàm F

Ra: Khẳng định Q cóa đạt dạng chuẩn 2NF hay không

Bước 1: Tìm tất cả các khóa của Q

Bước 2: Với tất cả các khóa K, tìm bao đóng của tất cả các tập con thật sự S của K.

Bước 3: Nếu có bao đóng S+ chứa thuộc tính không khóa thì Q không đạt chẩn 2NF ngược lại Q đạt được dạng chuẩn 2NF.

22/45

Page 23: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Ví dụ:

Cho lược đồ quan hệ Q(A, B, C, D) và tập phụ thuộc hàm: F={AB→C, B→D, BC→A } . Hỏi Q có đạt chuẩn 2NF hay không?

Giải:

I =Q \ ( Ri -Li )=ABCD \ (CDA)=B. I Q

N={ ( Ri -Li ) sao cho Li I }=D

N’=(I N)+ \ I =(BD)+ \ B = D (N’ N )

N’’= Ri - Li =ACD \ ABC=D

N=NN’N’’=D

B=Q \ N \ I=ABCD \ D \ B=AC

Vì B=2 => có hai khóa BA và BC

23/45

Page 24: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

I ={ B}, B={AC}

Khóa là K =AB và K =BC. Ta thấy B K , B→D, D là thuộc tính không khóa => thuộc tính không khóa không phụ thuộc đầy đủ vào khóa .

=> Q không đạt chuẩn 2NF.

X (I X ) (I X ) + Siêu khóa Khóa

B BD

A AB ABCD AB AB

C BC ABCD ABCD BC

AC ABC ABCD ABC

24/45

Page 25: chuan hoa luoc do quan he

16.2.2. DẠNG CHUẨN 2 (2NF-SECOND NORMAL FORM)

Thuật Toán 2:

Bước 1: Tìm tất cả các khóa của lược đồ α, từ tất cả các khóa này ta suy ra các thuộc tính không khóa của lược đồ α. Ký hiệu tập thuộc tính không khóa này là NK.

Bước 2: Với mỗi khóa Ki, ký hiệu họ của các tập con thực sự của Ki là { S1, S2, …, Ski }, ký hiệu Q={ Q1, Q2, …, Qn } là họ tất cả các tập con thực sự của khóa Ki.

Bước 3: Tìm bao đóng Q+ ={ Q1+, Q2+, …, Qn+ }

Bước 4: Nếu Q+ NK= với mọi i=1…n thì lược đồ α ở dạng chuẩn 2NF ngược lại tồn tại Q+ NK thì lược đồ α không ở dạng chuẩn 2NF.

25/45

Page 26: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

26/45

Page 27: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

Định nghĩa 1:

Cho lược đồ quan hệ α= ( U, F), lược đồ α được gọi là ở dạng chuẩn 3 ( ký hiệu là 3 NF), nếu như lược đồ ở dạng chuản 2NF và các thuộc tính không khóa của α là không phụ thuộc hàm bắc cầu vào khóa chính.

Định nghĩa 2:

Cho lược đồ quan hệ α =( U, F), lược đồ α được gọi là ở dạng chuẩn 3, ký hiệu là 3NF, nếu như mọi phụ thuộc hàm X→ A F+ với A X thì:

- Hoặc X là siêu khóa.

- Hoặc A là thuộc tính khóa.

27/45

Page 28: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

Nhận xét:

Lược đồ quan hệ α =( U, F), với F là tập các phụ thuộc hàm có vế phải chỉ gồm một thuộc tính. Khi đó lược đồ α ở dạng chuẩn 3NF khi và chỉ khi mọi phụ thuộc hàm X→A F với A X đều có :

- Hoặc X là siêu khóa.

- Hoặc A là thuộc tính khóa.

28/45

Page 29: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

Thuật toán kiểm tra lược đồ có ở dạng chuẩn 3NF hay không?

Từ định nghĩa về dạng chuẩn 3NF trên ta có thuật toán kiểm tra xem một lược đồ có ở dạng chuẩn 3NF hay không như sau:

Input: Lược đồ quan hệ α =( U, F)

Output: Khẳng định α có đạt dạng chuẩn 3NF hay không

29/45

Page 30: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

Thuật toán 1:

Thuật toán kiểm tra dạng chuẩn BCNF

Vào: Lược đồ quan hệ Q, tập phụ thuộc hàm F

Ra: Khẳng định Q có đạt dạng chuẩn 3NF hay không

Bước 1: Tìm tất cả khóa của Q.

Bước 2: Từ F tạo tập phụ thuộc hàm tương đương FItt có vế phải một thuộc tính.

Bước 3: Nếu mọi phụ thuộc hàm X→ A FItt với A X đều có X là siêu khóa hoặc A là một thuộc tính khóa thì Q đạt chẩn 3 ngược lại Q không đạt chuẩn 3.

30/45

Page 31: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

Ví dụ:

Cho lược đồ quan hệ Q(A, B, C, D) F={ AB→C; D→B; C→ABD } Hỏi lược đồ có ở dạng chuẩn 3NF?

Giải:

I =Q \ ( Ri -Li )=ABCD \ ABCD= , I Q

N={ ( Ri -Li ) sao cho Li I }=

N’=(I N)+ \ I = (N’ N )

N’’= Ri - Li =ABCD \ ABCD=

N=NN’N’’=

B=Q \ N \ I=ABCD \ \ =ABCD

Vì B=4>2

=> I ={}, B={ABCD}31/45

Page 32: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

K1= { AB };K2= { AD }; K3= { C } là khóa

=> mọi phụ thuộc hàm X→AF đều có A là thuộc tính khóa.

Vậy Q đạt chuẩn 3NF.

X (I X ) (I X ) + Siêu khóa Khóa

A A A

B B B

C C ABCD C C

D D BD

AB AB ABCD AB AB

AC AC ABCD AC

AD AD ABCD AD AD

BC BC ABCD BC

BD BD BD

CD CD ABCD CD

ABC ABC ABCD ABC

ABD ABD ABCD ABD

ACD ACD ABCD ACD

BCD BCD ABCD BCD32/45

Page 33: chuan hoa luoc do quan he

16.2.3. DẠNG CHUẨN 3 (3NF-THIRD NORMAL FORM)

Thuật toán 2:

Bước 1: Tìm tất cả khóa của lược đồ α.

Bước 2: Từ F tìm tập phụ thuộc hàm tương đương F’, mà vế phải của các phụ thuộc hàm trong F’ chỉ có một thuộc tính.

Bước 3: Nếu mọi phụ thuộc hàm X→AF’ với AX đều có X là siêu khóa hoặc A là thuộc tính khóa thì α đạt chuẩn 3NF ngược lại α không đạt chuẩn 3NF.

33/45

Page 34: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

34/45

Page 35: chuan hoa luoc do quan he

16.2.4. DẠNG CHUẨN BCNF (BOYCE CODD NORMAL FORM)

Định nghĩa 1:

Cho lược đồ quan hệ α= ( U, F), lược đồ α được gọi là ở dạng chuẩn Boyce Codd, ký hiệu là BCNF, nếu như lược đồ ở dạng chuẩn 1NF và nếu X→AF+ (AX) thì X phải là siêu khóa của lược đồ.

Định ngĩa 2:

Cho lược đồ quan hệ α= ( U, F), lược đồ α được gọi là ở dạng chuẩn Boyce Codd, ký hiệu là BCNF, nếu như lược đồ ở dạng chuẩn 1NF và nếu X→AF là phụ thuộc hàm không tầm thường (Y X) thì X phải là siêu khóa của lược đồ.

35/45

Page 36: chuan hoa luoc do quan he

16.2.4. DẠNG CHUẨN BCNF (BOYCE CODD NORMAL FORM)

Thuật toán kiểm tra lược đồ ở dạng chuẩn BCNF hay không?

Từ định nghĩa về dạng chuẩn BCNF trên ta có thuật toán kiểm tra xem một lược đồ có ở dạng chuẩn BCNF hay không như sau:

Input: Lược đồ quan hệ α =( U, F)

Output: Khẳng định α có đạt dạng chuẩn BCNF hay không

36/45

Page 37: chuan hoa luoc do quan he

16.2.4. DẠNG CHUẨN BCNF (BOYCE CODD NORMAL FORM)

Thuật toán 1:

Thuật toán kiểm tra dạng chuẩn BCNF

Vào: Lược đồ quan hệ Q, tập phụ thuộc hàm F

Ra: Khẳng định Q có đạt dạng chuẩn 3NF hay không

Bước 1: Tìm tất cả khóa của Q.

Bước 2: Từ F tạo tập phụ thuộc hàm tương đương FItt có vế phải một thuộc tính.

Bước 3: Nếu mọi phụ thuộc hàm X→ A FItt với A X đều có X là siêu khóa thì Q đạt chẩn BCNF ngược lại Q không đạt chuẩn BCNF.

37/45

Page 38: chuan hoa luoc do quan he

16.2.4. DẠNG CHUẨN BCNF (BOYCE CODD NORMAL FORM)

Ví dụ:

Q (A, B, C, D, E, I) F={ACD→EBI; CE→AD }. Hỏi Q có đạt chuẩn BCNF hay không?

Giải:

I =Q \ ( Ri -Li )=ABCDEI \ (EBIAD)=C => I Q

N={ ( Ri -Li ) sao cho Li I } =

N’=(I N)+ \ I = (N’ N )

N’’= Ri - Li =ABDEI \ ACDE=BI

N=NN’N’’=BI

B=Q \ N’ \ I=ABCDEI \ BI \ C=ADE

Vì B=3>2 => I ={ C}, B={ADE}38/45

Page 39: chuan hoa luoc do quan he

16.2.4. DẠNG CHUẨN BCNF (BOYCE CODD NORMAL FORM)

F =FItt={ ACD→E, ACD→B, ACD→I, CE→A, CE→D} Mọi phụ thuộc hàm của FItt đều có vế trái là siêu khóa

=> Q đạt dạng chuẩn BCNF.

X (I X ) (I X ) + Siêu khóa Khóa

C C

A AC AC

D CD CD

E CE ABCDEI CE CE

AD ACD ABCDEI ACD ACD

AE ACE ABCDEI ACE

DE CDE ABCDEI CDE

ADE ACDE ABCDEI ADE

39/45

Page 40: chuan hoa luoc do quan he

16.2.4. DẠNG CHUẨN BCNF (BOYCE CODD NORMAL FORM)

Thuật tán 2:

Bước 1: Từ F tìm tập phụ thuộc hàm tương đương F’, mà vế phải của các phụ thuộc hàm trong F’ chỉ có một thuộc tính.

Bước 2: Nếu mọi phụ thuộc hàm X→AF+ với AX đều có X là siêu khóa thì α đạt chẩn BCNF ngược lại α không đạt chuẩn BCNF.

40/45

Page 41: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

41/45

Page 42: chuan hoa luoc do quan he

16.2. THUẬT TOÁN TÌM DẠNG CHUẨN CAO NHẤT CỦA LƯỢC ĐỒ

Cho lược đồ quan hệ α =( U, F), hãy tìm dạng chuẩn cao nhất của lược đồ α.

Input: Lược đồ quan hệ α =( U, F) ( ở đây ta giả thiết rằng lược đồ α đã được chuẩn hóa, tức là đã ở dạng chuẩn 1).

Output: Dạng chuẩn cao nhất của lược đồ α.

Thuật toán:

Bước 1: Tìm tất cả các khóa của lược đồ α.

Bước 2: Sử dụng thuật toán kiểm tra lược đồ ở dạng chuẩn BCNF, nếu lược đồ ở dạng BCNF thì dừng thuật toán và kết luận dạng chuẩn cao nhất của lược đồ là BCNF, ngược lại thì chuyển qua bước tiếp theo.

42/45

Page 43: chuan hoa luoc do quan he

16.2. THUẬT TOÁN TÌM DẠNG CHUẨN CAO NHẤT CỦA LƯỢC ĐỒ

Thuật toán:

Bước 3: Sử dụng thuật toán kiểm tra lược đồ ở dạng chuẩn 3NF, nếu lược đồ ở dạng 3NF thì dừng thuật toán và kết luận dạng chuẩn cao nhất của lược đồ là 3NF, ngược lại thì chuyển qua bước tiếp theo.

Bước 4: Sử dụng thuật toán kiểm tra lược đồ ở dạng chuẩn 2NF, nếu lược đồ ở dạng 2NF thì dừng thuật toán và kết luận dạng chuẩn cao nhất của lược đồ là 3NF, ngược lại thì lược đồ ở dạng chuẩn 1NF.

43/45

Page 44: chuan hoa luoc do quan he

NỘI DUNG CHI TIẾT :

Một số khái niệm liên quan

Các dạng chuẩn

Dạng chuẩn 1 (1NF- Fist normal form)

Dạng chuẩn 2 (2NF- Second normal form)

Dạng chuẩn 3 (3NF- Third normal form)

Dạng chuẩn BCNF (Boyce Codd normal form)

Thuật toán tìm dạng chuẩn cao nhất của lược đồ

Mối quan hệ giữa các dạng chuẩn

44/45

Page 45: chuan hoa luoc do quan he

16.4. MỐI QUAN HỆ GIỮA CÁC DẠNG CHUẨN

Định lý: Một lược đò ở dạng chuẩn cao khi thì cũng ở dạng chuẩn thấp, tuy nhiên điều ngược lại có thể đúng, điều này được môt tả trong hình sau:

1NF

2NF

3NF

BCNF

45/45