Your SlideShare is downloading. ×
0
Lý thuyết chuẩn hoá Huế, 09 2006. Đại Học Huế Trường Đại học Khoa học
Các dạng chuẩn của một lược đồ quan hệ <ul><li>Dạng chuẩn 1NF </li></ul><ul><li>Dạng chuẩn 2NF </li></ul><ul><li>Dạng chuẩ...
Dạng chuẩn 1NF <ul><li>Định nghĩa: </li></ul><ul><li>Một lược đồ quan hệ R được gọi  là thuộc dạng chuẩn 1NF (ký hiệu:  R ...
Dạng chuẩn 2NF <ul><li>Định nghĩa:  R    2NF </li></ul><ul><li>Lược đồ quan hệ R được gọi là 2NF nếu    X  A trên R (A ...
Dạng chuẩn 2NF <ul><li>Nhận xét: </li></ul><ul><li>1) Nếu  mọi khoá của lược đồ quan hệ R chỉ có 1 thuộc tính thì R    2N...
Dạng chuẩn 3NF <ul><li>Định nghĩa:  R    3NF </li></ul><ul><li>Một lược đồ quan hệ R được gọi là ở dạng chuẩn 3NF nếu:  ...
Dạng chuẩn 3NF <ul><li>Nhận xét: </li></ul><ul><li>1) Nếu R   3NF thì R    2NF </li></ul><ul><li>2) R   3NF    không...
Dạng chuẩn Boyce-Codd (BCNF) <ul><li>Định nghĩa:   R    BCNF </li></ul><ul><li>Lược đồ quan hệ R được gọi là BCNF nếu   ...
Phân tách bảo toàn thông tin thành BCNF <ul><li>Cho lược đồ quan hệ R = <U, F>,    = (R 1 , R 2 , …, R k ) là phép tách b...
Phân tách bảo toàn thông tin thành BCNF <ul><li>Nhận xét: </li></ul><ul><li>- Nếu   A, B    U (A    U) sao cho  UAB   ...
Phân tách bảo toàn thông tin thành BCNF <ul><li>Thuật toán: </li></ul><ul><li>Input : R = <U, F> </li></ul><ul><li>Output:...
Phân tách bảo toàn thông tin thành BCNF <ul><li>Ví dụ:  Cho R = <U, F>, U = {A, B, C, D, E, H, G} </li></ul><ul><li>F = {A...
A B C D E H G A B D E H G A B D H G A B D G A B D D C D E D H D G A B D A B C E H G A B C E G A B C E B C E B E E H E G B ...
Phân tách bảo toàn thông tin thành 3NF <ul><li>Thuật toán: </li></ul><ul><li>Input : R = <U, F> </li></ul><ul><li>Output: ...
Phân tách bảo toàn thông tin thành 3NF <ul><li>Ví dụ:   Cho NKBH = <U, F>, </li></ul><ul><li>U = {STT, NGAY, MH, TH, ĐG, S...
Phân tách bảo toàn TT & PTH thành 3NF <ul><li>Thuật toán: </li></ul><ul><li>Input : R = <U, F> </li></ul><ul><li>Output:  ...
Phân tách bảo toàn TT & PTH thành 3NF <ul><li>Nhận xét: </li></ul><ul><li>- Thuật toán trên là không duy nhất do cách xác ...
Nhóm thực hiện <ul><li>Lê Quang Chiến </li></ul><ul><li>Trần Tấn Từ </li></ul><ul><li>Võ Hoài Trung </li></ul><ul><li>Trươ...
Upcoming SlideShare
Loading in...5
×

Seminar Ly Thuyet Chuan Hoa V1.2

4,835

Published on

Published in: Education, Technology
3 Comments
2 Likes
Statistics
Notes
No Downloads
Views
Total Views
4,835
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
301
Comments
3
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Seminar Ly Thuyet Chuan Hoa V1.2"

  1. 1. Lý thuyết chuẩn hoá Huế, 09 2006. Đại Học Huế Trường Đại học Khoa học
  2. 2. Các dạng chuẩn của một lược đồ quan hệ <ul><li>Dạng chuẩn 1NF </li></ul><ul><li>Dạng chuẩn 2NF </li></ul><ul><li>Dạng chuẩn 3NF </li></ul><ul><li>Dạng chuẩn BCNF </li></ul>
  3. 3. Dạng chuẩn 1NF <ul><li>Định nghĩa: </li></ul><ul><li>Một lược đồ quan hệ R được gọi là thuộc dạng chuẩn 1NF (ký hiệu: R  1NF) nếu mọi thuộc tính của lược đồ là nguyên tố. </li></ul><ul><li>Ví dụ: </li></ul><ul><li>Quy ước: Tất cả các lược đồ quan hệ được xét đều thuộc 1NF. </li></ul>z y x A z v u B Tinh Huyen Xa DIACHI Hoten
  4. 4. Dạng chuẩn 2NF <ul><li>Định nghĩa: R  2NF </li></ul><ul><li>Lược đồ quan hệ R được gọi là 2NF nếu  X  A trên R (A  X) thì: </li></ul><ul><li>- Hoặc: A là thuộc tính khóa </li></ul><ul><li>- Hoặc: X không là tập con thực sự của khóa </li></ul><ul><li>Ví dụ: </li></ul><ul><li>Cho R = <U, F>, U = {A, B, C, D} </li></ul><ul><li>F = {AB  C, C  D}  R là 2NF </li></ul><ul><li>F = {AB  C, C  A}  R là 2NF </li></ul><ul><li>F = {AB  C, A  D}  R không là 2NF </li></ul>
  5. 5. Dạng chuẩn 2NF <ul><li>Nhận xét: </li></ul><ul><li>1) Nếu mọi khoá của lược đồ quan hệ R chỉ có 1 thuộc tính thì R  2NF. </li></ul><ul><li>2) R  2NF   X  A  F + , với X  K (K là khóa của R) thì: </li></ul><ul><li>- hoặc A là thuộc tính khoá. </li></ul><ul><li>- hoặc A  X (X  A là phụ thuộc hàm tầm thường). </li></ul>
  6. 6. Dạng chuẩn 3NF <ul><li>Định nghĩa: R  3NF </li></ul><ul><li>Một lược đồ quan hệ R được gọi là ở dạng chuẩn 3NF nếu:  X  A trên R (A  X) thì: </li></ul><ul><li>- Hoặc: A là thuộc tính khoá. </li></ul><ul><li>- Hoặc: X là siêu khoá. </li></ul><ul><li>Ví dụ: Cho R = <U, F>, với U = {A, B, C, D}, </li></ul><ul><li>F = {AB  C, C  D}  R không là 3NF. </li></ul><ul><li>F = {AB  C, C  A}  R là 3NF. </li></ul>
  7. 7. Dạng chuẩn 3NF <ul><li>Nhận xét: </li></ul><ul><li>1) Nếu R  3NF thì R  2NF </li></ul><ul><li>2) R  3NF  không  phụ thuộc bắc cầu: </li></ul><ul><li>X  Y  F + và Y  A  F + với: </li></ul><ul><li>+ X là khoá </li></ul><ul><li>+ Y không là siêu khoá </li></ul><ul><li>+ A là thuộc tính không khoá và A  XY. </li></ul><ul><li>Hay: R  3NF   X_khoá  Y, Y  -  X, mà Y  A_không khoá  </li></ul>
  8. 8. Dạng chuẩn Boyce-Codd (BCNF) <ul><li>Định nghĩa: R  BCNF </li></ul><ul><li>Lược đồ quan hệ R được gọi là BCNF nếu  X  A trên R (A  X) thì: </li></ul><ul><li>- X là siêu khoá. </li></ul><ul><li>Ví dụ: Cho R = <U,F>, với U = {A, B, C, D}, </li></ul><ul><li>F = {AB  C, AB  D}  R là BCNF </li></ul><ul><li>Nhận xét: R  BCNF  R  3NF </li></ul>1NF 2NF 3NF BCNF
  9. 9. Phân tách bảo toàn thông tin thành BCNF <ul><li>Cho lược đồ quan hệ R = <U, F>,  = (R 1 , R 2 , …, R k ) là phép tách bảo toàn thông tin của R theo F. </li></ul><ul><li> ’ = (R 11 , R 12 ) là phép tách bảo toàn thông tin của R 1 theo  R 1 (F). </li></ul><ul><li>  ’’ = (R 11 , R 12 , R 2 , …, R k ) là phép tách bảo toàn thông tin của R theo F. </li></ul><ul><li>Định lý: </li></ul><ul><li>a./ Mọi lược đồ quan hệ chỉ có hai thuộc tính luôn là BCNF. </li></ul><ul><li>b./ Nếu R không là BCNF thì  A, B  U (A  U) sao cho: </li></ul><ul><li>U{AB}  A. </li></ul>
  10. 10. Phân tách bảo toàn thông tin thành BCNF <ul><li>Nhận xét: </li></ul><ul><li>- Nếu  A, B  U (A  U) sao cho UAB  A thì R vẫn có thể là BCNF. </li></ul><ul><li>Ví dụ: Cho R = <U, F>, U = {A, B, C, D} </li></ul><ul><li>F = {AB  C, AB  D}  R là BCNF </li></ul><ul><li>Vẫn tồn tại U{CD}  C </li></ul><ul><li>- Nếu không tìm được cặp A, B  U: U{AB}  A thì R là BCNF. </li></ul>
  11. 11. Phân tách bảo toàn thông tin thành BCNF <ul><li>Thuật toán: </li></ul><ul><li>Input : R = <U, F> </li></ul><ul><li>Output:  = (R 1 , R 2 , …, R k ) sao cho R i là BCNF,  là BTTT </li></ul><ul><li>Method: </li></ul><ul><li> :=  ; </li></ul><ul><li>While  A,B  U | A  (U{AB}) + do </li></ul><ul><li>begin </li></ul><ul><li>Chọn 1 cặp A, B | A  (U{AB}) + ; </li></ul><ul><li>Y:=U B; </li></ul><ul><li>While  A,B  Y | A  (Y{AB}) + do </li></ul><ul><li>Y:=Y B; </li></ul><ul><li>  :=   Y; </li></ul><ul><li>U:= U A; </li></ul><ul><li>end ; </li></ul><ul><li>  :=   U; </li></ul><ul><li>Return  ; </li></ul>
  12. 12. Phân tách bảo toàn thông tin thành BCNF <ul><li>Ví dụ: Cho R = <U, F>, U = {A, B, C, D, E, H, G} </li></ul><ul><li>F = {AB  D, CD  E, E  B, EH  G}, bảo đảm F là cực tiểu. </li></ul>
  13. 13. A B C D E H G A B D E H G A B D H G A B D G A B D D C D E D H D G A B D A B C E H G A B C E G A B C E B C E B E E H E G B A B C B E A C E H G C E H G E H G G A G C E H G A C E H  = { ABD, BE, EHG, ACEH } F = {AB  D, CD  E, E  B, EH  G} Ví dụ:
  14. 14. Phân tách bảo toàn thông tin thành 3NF <ul><li>Thuật toán: </li></ul><ul><li>Input : R = <U, F> </li></ul><ul><li>Output:  = (R 1 , R 2 , …, R k ) sao cho R i là 3NF,  là bảo toàn thông tin. </li></ul><ul><li>Method: </li></ul><ul><li>B1: Kiểm tra R  3NF? (không  X  Y  A?) </li></ul><ul><li>- Nếu R  3NF thì dừng </li></ul><ul><li>- Nếu R  3NF (  X  Y  A) thì phân tách R thành 2 lược đồ con: </li></ul><ul><li>  := (YA, UA) </li></ul><ul><li>B2: Kiểm tra lần lượt các lược đồ con có thuộc 3NF không? </li></ul><ul><li>- Nếu lược đồ con nào không thuộc 3NF thì ta phân tách tiếp (theo quy tắc được chỉ ra trong B1) </li></ul><ul><li>Cuối cùng chúng ta sẽ có một cây phân tách (cây nhị phân) mà các nút lá là các lược đồ con thuộc 3NF. </li></ul><ul><li>------------------------------------------- </li></ul><ul><li>Nhận xét: Phân tách thu được dựa vào thuật toán trên là bảo toàn thông tin và các lược đồ là thuộc 3NF. </li></ul>
  15. 15. Phân tách bảo toàn thông tin thành 3NF <ul><li>Ví dụ: Cho NKBH = <U, F>, </li></ul><ul><li>U = {STT, NGAY, MH, TH, ĐG, SL}, </li></ul><ul><li>F = {STT  U, MH  TH, MH  ĐG} </li></ul><ul><li>Ta có: STT là khóa duy nhất của lược đồ NKBH </li></ul><ul><li>Ta thấy  {STT}  {MH, TH}  ĐG </li></ul><ul><li>= ({MH, TH, ĐG}, {STT, NGAY, MH, TH, SL}) </li></ul><ul><li> 3NF  3NF </li></ul><ul><li> {MH, TH} {STT, NGAY, MH, SL} </li></ul><ul><li> = ({MH, TH, ĐG}, {STT, NGAY, MH, SL}) </li></ul>
  16. 16. Phân tách bảo toàn TT & PTH thành 3NF <ul><li>Thuật toán: </li></ul><ul><li>Input : R = <U, F> </li></ul><ul><li>Output:  = (R 1 , R 2 , …, R k ) sao cho R i là 3NF,  là bảo toàn PTH. </li></ul><ul><li>Method: </li></ul><ul><li>B1: - Tìm phủ cực tiểu G của F </li></ul><ul><li>-  :=  ; </li></ul><ul><li>B2: -Tìm một khoá K bất kỳ của R,  :=   {<K,  K (F)>} </li></ul><ul><li>B3: - Với mỗi các phụ thuộc hàm có dạng X  A 1 , X  A 2 , …, X  A k , thì tạo thành một lược đồ R’ có U’ = XA 1 A 2 …A k : </li></ul><ul><li> :=   {R’} </li></ul><ul><li>B4: - Nếu  R i , R j   mà U i  U j thì loại R i ra khỏi  . </li></ul>
  17. 17. Phân tách bảo toàn TT & PTH thành 3NF <ul><li>Nhận xét: </li></ul><ul><li>- Thuật toán trên là không duy nhất do cách xác định phủ cực tiểu là không duy nhất. </li></ul><ul><li>Ví dụ: Cho R = <U, F>, U = {A, B, C, D, E, G, H} </li></ul><ul><li>F = {AB  C, AB  D, C  B, CD  E} là cực tiểu. </li></ul><ul><li>- ABGH là một khoá của R. </li></ul><ul><li> = (ABGH) </li></ul><ul><li>- Bổ sung các lược đồ thông qua các phụ thuộc hàm: </li></ul><ul><li> = (ABCD, CB, CDE, ABGH) </li></ul><ul><li>- Loại CB ra khỏi  . </li></ul><ul><li> = (ABCD, CDE, ABGH) </li></ul>
  18. 18. Nhóm thực hiện <ul><li>Lê Quang Chiến </li></ul><ul><li>Trần Tấn Từ </li></ul><ul><li>Võ Hoài Trung </li></ul><ul><li>Trương Khắc Tùng </li></ul><ul><li>Quách Xuân Hưng </li></ul><ul><li>Chân thành cảm ơn cả lớp! </li></ul><ul><li>Hẹn gặp lại lần sau! </li></ul><ul><li>^_^ V </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×