1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài giảng hệ cơ sở dữ liệu chương 5 1 ts lê thị tú kiên

69 6 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 đề Thiết Kế CSDL Quan Hệ Mức Khái Niệm
Tác giả Lê Thị Tú Kiên
Định dạng
Số trang 69
Dung lượng 1,12 MB

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

Nội dung

 Xác định khóa của lược đồ quan hệ  Chuẩn hóa lược đồ quan hệ  Các phép tách lược đồ quan hệ  Chuyển đổi mô hình thực thể liên kết sang mô hình quan hệ 4... Vế phải của mỗi phụ th

Trang 1

CHƯƠNG 5 Thiết kế CSDL quan hệ mức khái niệm

Tiến sĩ: Lê Thị Tú Kiên

Trang 2

Giới thiệu

 Các bước thiết kế CSDL

 Tập hợp các yêu cầu và phân tích

 Thiết kế khái niệm

 Thiết kế logic

 Thiết kế vật lí

2

Trang 4

 Xác định khóa của lược đồ quan hệ

 Chuẩn hóa lược đồ quan hệ

 Các phép tách lược đồ quan hệ

 Chuyển đổi mô hình thực thể liên kết sang mô hình quan hệ

4

Trang 5

Dư thừa và dị thường dữ liệu

5

Trang 6

Dƣ thừa dữ liệu

NHAN_VIEN_PHONG(MSNV,HO_TEN,NG_SINH,

GIOI_TINH,LUONG,MA_DV,TEN_PHONG,MA_TP)

6

Trang 7

Dị thường dữ liệu

 Dị thường khi thêm bộ

7

Trang 8

Dị thường dữ liệu

 Dị thường khi xóa bộ

8

Trang 9

Dị thường dữ liệu

 Dị thường khi sửa bộ

9

Trang 10

Cách giải quyết dị thường dữ liệu

 Tách lược đồ NHAN_VIEN_PHONG thành hai lược đồ:

NHAN_VIEN(MSNV,HO_TEN,NG_SINH,GIOI_TINH,LUONG,MA_DV)

PHONG(MA_DV,TEN_PHONG,MA_TP)

10

Trang 11

Cách giải quyết dị thường dữ liệu

11

Trang 12

Phụ thuộc hàm

12

Trang 14

Phụ thuộc hàm suy diễn

 F: tập các phụ thuộc hàm trên R(U)

 X  Y được suy diễn logic từ F nếu  r  R(U), r thỏa F kéo theo r thỏa X  Y

 Kí hiệu: F ╞ (X  Y)

 Ví dụ: F={A  B, B  C} thì F ╞ (A  C)

14

Trang 15

Bao đóng của tập phụ thuộc hàm

F+={(X  Y) | F ╞ (X  Y)}

Nếu F+=F, thì F được gọi là họ phụ thuộc hàm đầy đủ

Ví dụ: Cho F={AC  B, D  E}, vì F=F+ nên F là tập PTH đầy đủ

15

Trang 16

Hệ tiên đề Armstrong

16

Trang 17

Hệ tiên đề Armstrong

 Cho U, R(U), F, và X, Y, Z  U Kí hiệu XY=X  Y A1 Phản xạ (Reflexivity):

Nếu Y  X thì F ╞ (X  Y ) A2 Tăng trưởng (Augmentation)

Nếu F ╞ (X  Y ) thì  Z  U, F╞ (XZ  YZ) A3 Bắc cầu (Transitivity)

Nếu F ╞ (X  Y ) và F ╞ (Y  Z ) thì F ╞ (X  Z)

17

Trang 18

A3 Bắc cầu

Nếu F ╞ (XY ) và

F ╞ (YZ ) thì F ╞ (XZ)

Trang 20

Ví dụ

 Cho F={AB  C, B  D, CD  E, CE  GH, G  A}

Chứng minh F╞ (AB  EG)

20

Trang 21

Ví dụ

 Chứng minh {AB  C, B  D, CD  E, CE  GH, G  A}╞ (AB  EG)

 Giải:

 Do CEGH nên theo luật tách ta có: CEG (1)

 Áp dụng luật tăng trưởng với (1) ta được CEEG (2)

 Do CDE nên theo luật tăng trưởng ta có: CDCE (3)

 Từ (2) và (3), áp dụng luật bắc cầu ta được: CDEG(4)

 Do BD nên theo luật tăng trưởng ta có: BCCD (5)

 Từ (4) và (5), áp dụng luật bắc cầu ta được: BCEG(6)

 Do ABC nên theo luật tăng trưởng ta có: ABBC (7)

 Từ (6) và (7), áp dụng luật bắc cầu ta được: ABEG Suy ra đpcm

21

Trang 22

Bao đóng của tập thuộc tính

22

Trang 23

Định nghĩa bao đóng của tập thuộc tính

X+ F ={AU| XA F+}

23

Trang 25

 B1: X1 = X0 EG = BDEG vì PTH D  EG có vế trái D  X0 và vế phải EG  X0

 B2: X2 = X1 C = BDEGC vì PTH BE  C có vế trái BE  X1 và vế phải C  X1

 B3: X3 = X2 A = BDEGCA vì PTH C  A có vế trái C  X2 và vế phải A  X2

 B4: X4 = X3 = ABCDEG = U

 Kết luận: (BD) +

F = U= ABCDEG

25

Trang 27

Bổ đề về bao đóng của tập thuộc tính

F╞Arm(XY) Y X+ F

27

Trang 29

Phủ của tập các phụ thuộc hàm

29

Trang 30

Sự tương đương của các tập PTH

 F, G: các phụ thuộc hàm

F phủ G nếu G  F+

F tương đương G nếu F+=G+

30

Trang 31

Tập phụ thuộc hàm tối tiểu

 F tối tiểu nếu:

i. Vế phải của mỗi phụ thuộc hàm trong F gồm đúng một thuộc tính

ii. Không thể bỏ đi bất kỳ một thuộc tính nào ở vế trái của một phụ thuộc nào trong F mà vẫn thu được một tập phụ thuộc tương đương với nó

iii. Không thể bỏ đi một phụ thuộc hàm nào trong F mà vẫn thu được một tập phụ thuộc tương đương với nó (F không dư thừa)

31

Trang 32

Thuật toán tìm tập PTH tối tiểu

Trang 33

Thuật toán tìm tập PTH tối tiểu

Vào: F

Ra: Tập PTH tối tiểu G của F

Phương pháp (tiếp)

 Bước 2: Loại bỏ thuộc tính dư thừa ở vế trái các PTH

Với mỗi PTH X→A trong G Với mỗi thuộc tính BX

Nếu {(X\B)→A} G+ thì thay thế X→A bằng (X\B)→A

33

Trang 34

Thuật toán tìm tập PTH tối tiểu

Vào: F

Ra: Tập PTH tối tiểu G của F

Phương pháp (tiếp)

 Bước 3: Loại bỏ các PTH dư thừa

Với mỗi PTH X→A còn lại trong G Nếu X→A  {G\{X→A}}+ thì loại bỏ X→A khỏi G

 Bước 4: Kết luận G là tập PTH tối tiểu của F

Chú ý: Có thể tráo hai bước 2 và bước 3 cho nhau

34

Trang 35

nên điều kiện thứ nhất thỏa mãn

Bước 2: Loại bỏ các thuộc tính dư thừa ở vế trái các PTH trong F

 Do các PTH B→A và D→A có vế trái chỉ gồm 1 thuộc tính nên không có thuộc tính dư thừa vế trái

 Xét PTH AB→D: do B→A nên ta có BB→AB hay B→AB, mà AB→D nên theo luật suy diễn bắc cầu suy ra B→D Vì vậy, AB→D dư thừa thuộc tính A nên

ta thay AB→D bằng B→D

35

Trang 36

 Xét B→A: Do B→D và D→A nên theo luật suy diễn bắc cầu ta có B→A Vì vậy, {B→A}  {G\{B→A}} + nên ta loại B→A khỏi G Suy ra G={D→A,B→D}

 Do D→A không thể suy diễn ra từ PTH B→D và ngược lại nên ta không thể loại chúng khỏi G

36

Trang 37

Khoá của lƣợc đồ quan hệ

37

Trang 40

Thuật toán xác định một khoá của LĐQH

Vào: Cho R=<U, F> F ={TiPi| Ti,Pi  U, Ti ∩Pi= , i=1,2,…,p}

Ra: Một khoá X của R

Phương pháp:

Đặt P = Pi Bước 1: X:=U\P Bước 2: Nếu X+=U thì chuyển sang bước 5 Bước 3: X:=(U\P)(T∩P);

Bước 4: Với mỗi Ai(T∩P) thực hiện:

X:=X\{Ai} Nếu X+  U thì X:=X{Ai};

Bước 5: Kết luận X là khoá

40

Trang 41

 Cho R=<U, F> F ={Ti Pi| Ti,Pi U, Ti∩Pi=  , i=1,2,…,p}

 P =  Pi: Tập các thuộc tính vế bên phải các PTH trong F

 T=  Ti : Tập các thuộc tính vế bên trái các PTH trong F

U\P: tập các thuộc tính chỉ xuất hiện vế bên trái các PTH và là một phần

của khóa

U\T: tập các thuộc tính chỉ xuất hiện vế bên phải các PTH và không

thuộc khóa

T∩P: tập các thuộc tính có thể thuộc vào khóa hoặc không

 Gọi K là khóa của lược đồ, khi đó K phải thỏa mãn điều kiện:

U\P  K  (U\P)  (T∩P)

Các dấu hiệu nhận biết khóa

41

Trang 42

Thuật toán xác định một khoá của LĐQH

Bước 4: Với mỗi Ai  (T∩P) thực hiện:

X=X\{Ai} nếu X +  U thì X=X  {Ai};

Bước 5: Kết luận X là khoá

Bước 2: X + =   U nên chuyển sang bước 3

42

Trang 43

Thuật toán xác định một khoá của LĐQH

Bước 4: Với mỗi Ai  (T∩P) thực hiện:

X=X\{Ai} nếu X +  U thì X=X  {Ai};

Bước 5: Kết luận X là khoá

Xét A  X, vì X=X\{A} = BCDEG có

X + =ABCDEG=U nên X= BCDEG

43

Trang 44

Thuật toán xác định một khoá của LĐQH

Bước 4: Với mỗi Ai  (T∩P) thực hiện:

X=X\{Ai} nếu X +  U thì X=X  {Ai};

Bước 5: Kết luận X là khoá

Trang 45

Thuật toán xác định một khoá của LĐQH

Bước 4: Với mỗi Ai  (T∩P) thực hiện:

X=X\{Ai} nếu X +  U thì X=X  {Ai};

Bước 5: Kết luận X là khoá

Trang 46

Thuật toán xác định một khoá của LĐQH

Bước 4: Với mỗi Ai  (T∩P) thực hiện:

X=X\{Ai} nếu X +  U thì X=X  {Ai};

Bước 5: Kết luận X là khoá

- Xét G  X, vì X=X\{G} = C có X + =CA  U nên X= X  {G} =CG;

Bước 5: Như vậy, CG là một khoá của lược đồ

46

Trang 47

Vào: Cho R=<U, F> F ={Ti Pi| Ti,Pi U,

Bước 4: Kết luận và kết thúc thuật

toán

Trang 48

Hãy tìm tất cả các khóa của lược

đồ R?

Giải

 Đặt P= Pi = {AHBDC} = {ABCDH}

T=  Ti ={CDEGHB}={BCDEGH}

 Bước 1: X=U\P = {EFG}

 Bước 2: EFG+ = EFGA ≠ U nên EFG không là khóa mà chỉ là một phần

của các khóa

 Bước 3: Ta có T∩P = {BCDH}, các tập con của T∩P bao gồm: {B, C, D,

H, BC, BD, BH, CD, CH, DH, BCD, BCH, BDH, CDH, BCDH}

Trang 49

 Bước 1: X=U\P = {EFG}

 Bước 3: EFG+ = EFGA ≠ U nên

EFG không là khóa mà chỉ là một

BEFG là một khóa của R

 Vì CEFG+ = ABCDEFGH = U (từ EG→A, EC→H, H→B, BE→CD) nên CEFG là một khóa

 Vì DEFG+ = ADEFG ≠ U (từ EG→A) nên DEFG không là khóa

 Vì HEFG+ = ABCDEFGH = U (từ EG→A, H→B, BE→CD) nên

EFGH là một khóa

Trang 50

EFG không là khóa mà chỉ là một

khóa BEFG, CEFG và HEFG nên chúng chỉ là siêu khóa, không là khóa

BEFG, CEFG và HEFG

Trang 51

Chuẩn hóa lƣợc đồ quan hệ

51

Trang 52

Chuẩn hoá dữ liệu

52

 Quá trình đánh giá và chỉnh sửa cấu trúc của các quan hệ

nhằm

 tối thiểu hoá dư thừa dữ liệu

 loại trừ dị thường dữ liệu

 Thực hiện qua một dãy các bước được gọi là các dạng chuẩn:

Trang 53

Dạng chuẩn 1 (1NF)

53

 Miền giá trị của mỗi thuộc tính trong R:

 phải là kiểu nguyên tố

 không phải là một kiểu cấu trúc phức hợp, đa giá trị hay quan hệ

con

Trang 55

StudentID Activity Fee

Trang 56

Dạng chuẩn 2 (2NF)

 Lược đồ quan hệ R  2NF khi và chỉ khi:

 R1NF

Mọi thuộc tính không khóa của R đều phụ thuộc hàm đầy đủ vào khóa

Chú ý: Thuộc tính không khóa là những thuộc tính không thuộc vào

khóa nào (Khóa chính /Khóa tuyển) của lược đồ

56

Trang 57

Dạng chuẩn 2: Phụ thuộc hàm đầy đủ

 Cho lược đồ quan hệ R=<U, F>; X, Y  U

 Y phụ thuộc hàm đầy đủ vào X

nếu F╞ (X  Y) và ∄Z, Z  X, Z  X thỏa mãn F╞ (Z  Y)

57

Trang 58

StudentID Activity Fee

Trang 59

Tách lược đồ ACTIVITY thành các lược đồ ở dạng chuẩn 2NF

Dạng chuẩn 2: Ví dụ 1

Trang 60

Dạng chuẩn 2: Ví dụ 2

Chuần hóa 2NF

NHAVIEN_DUAN

Trang 61

Dạng chuẩn 2: Lƣợc đồ thuộc 2NF chƣa?

NHAVIEN_PHONG

Trang 63

Dạng chuẩn 3:Phụ thuộc hàm bắc cầu

 Cho lược đồ quan hệ R(U,F), X  U, A  U

 A phụ thuộc hàm bắc cầu vào X trên R

nếu tồn tại tập Y, Y  U, sao cho:

X  Y, Y  A, nhưng Y↛X với A  XY

63

Trang 65

Dạng chuẩn Boyce Codd (BCNF)

Trang 66

Dạng chuẩn Boyce Codd: Ví dụ

Trang 67

Các dạng chuẩn khác

 Phụ thuộc đa trị  Dạng chuẩn 4

 Phụ thuộc kết nối  Dạng chuẩn 5

67

Trang 68

Bài toán xác định dạng chuẩn cho lƣợc đồ

Bước 2: Kiểm tra R 2NF?

 Xác định tất cả các khóa của R: Áp dụng thuật toán tìm tất cả khóa của lược đồ  R có 2 khóa

AB và BE

Trang 69

Bài toán xác định dạng chuẩn cho lƣợc đồ

69

 Bước 2: Kiểm tra R2NF?

 Các thuộc tính không khóa bao gồm C và D

 Do AB  DE và D  C nên dựa theo luật suy diễn Armstrong ta có AB  C Như vậy, C và

D đều PTH đầy đủ vào khóa AB

 Tuy nhiên, do E  AD và D  C nên ta có

E  C Như vậy, D và C đều không PTH đầy

đủ vào khóa BE Do đó R  2NF

 Kết luận: R1NF

Ngày đăng: 25/11/2023, 14:03

🧩 Sản phẩm bạn có thể quan tâm