1. Trang chủ
  2. » Công Nghệ Thông Tin

ÔN THI CƠ SỞ DỮ LIỆU doc

14 906 9
Tài liệu đã được kiểm tra trùng lặp

Đ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 đề Ôn Thi Cơ Sở Dữ Liệu
Người hướng dẫn Giáo Viên: Tạ Thục Như
Trường học Đại Học Lạc Hồng
Chuyên ngành Công Nghệ Thông Tin
Thể loại Tài Liệu Ôn Thi
Thành phố Đồng Nai
Định dạng
Số trang 14
Dung lượng 284,47 KB

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

Nội dung

Mỗi lớp có tên lớp phân biệt và thuộc một khóa học KhoaHoc.. Mỗi môn học có một mã sốphân biệt MaMH, có tên môn học TenMH cũng phân biệt.. Mỗi sinh viên học nhiều môn, mỗi môn có ñiểm th

Trang 1

CHU Ẩ N HÓA CSDL

Giáo viên: T ạ Thúc Nhu Khoa CNTT tr ườ ng Đ H L ạ c H ồ ng

ÔN THI

C Ơ S Ở D Ữ Li Ệ U

I- Ph ụ thu ộ c hàm:

I- Ph ụ thu ộ c hàm:

Trang 2

CSDL@Khoa CNTT 3

1 Khái ni ệ m ph ụ thu ộ c hàm:

1 Khái ni ệ m ph ụ thu ộ c hàm:

• Cho một lượcñồquan hệQ

• X ⊆Q+, Y ⊆Q+, X ≠ ∅, Y ≠ ∅

Y phụthuộc hàm vào X, ký hiệu X Y, nếu

∀u, v ∈Q: u.X = v.X thì u.Y = v.Y

Quy ước ký hiệu:

• Nếu Y không phụthuộc hàm vào X ta ký hiệu: X Y

• f : phụthuộc hàm

• F : tập các phụthuộc hàm

Ví d ụ : Tìm các ph ụ thu ộ c hàm trên quan h ệ

Xét l ượ c ñồ quan h ệ qu ả n lý k ế t qu ả h ọ c t ậ p c ủ a sinh viên

KQHT(MaSV, Ten, NS, TenLop, KhoaHoc, MaMH,TenMH,Diem)

Tân t ừ : Mỗi sinh viên có một mã sốphân biệt với các sinh viên

khác (MaSV); có tên (Ten), ngày sinh (NS) và học một lớp

(TenLop) Mỗi lớp có tên lớp phân biệt và thuộc một khóa học

(KhoaHoc) Mỗi môn học có một mã sốphân biệt (MaMH), có

tên môn học (TenMH) cũng phân biệt Mỗi sinh viên học nhiều

môn, mỗi môn có ñiểm thi (Diem) của môn học ñó

Trang 3

CSDL@Khoa CNTT 5

2- Các Ph ụ thu ộ c hàm ñặ c bi ệ t:

1 Ph ụ thu ộ c hàm hi ể n nhiên: X X

2 Ph ụ thu ộ c hàmñ y ñ (fully functional dependence):

X −−> Y là ph ụ thu ộ c hàm ñầ y ñủ

Khi và ch ỉ khi ∀ X' X, X' −/−> Y

Ví d ụ : Ph ụ thu ộ c hàm MaSV, MaMH−−>DiemMH là ph ụ thu ộ c

hàm ñầ y ñủ vì :

MaSV −/−> DiemMH và MsMH −/−> DiemMH

3- Bao ñ óng c ủ a t ậ p thu ộ c tính:

3- Bao ñ óng c ủ a t ậ p thu ộ c tính:

Cho LĐQH <Q, F Q > và X ⊆ Q +

Bao ñ óng c ủ a t ậ p thu ộ c tính X d ự a trên F Q , ký hi ệ u X +

FQ , là t ậ p các thu ộ c tính ph ụ thu ộ c hàm vào X d ự a trên F Q

Ký hi ệ u: X +

FQ = { Y ∈ Q + : X −−> Y ∈ F +

Q }

Nh ậ n xét:

1 X ∈ X +

FQ

2 W −−> Z và W ⊆ X +

FQ thì Z ⊆ X +

FQ

Trang 4

CSDL@Khoa CNTT 7

Ví d ụ : Tìm bao ñ óng c ủ a t ậ p thu ộ c tính

Ví d ụ : Tìm bao ñ óng c ủ a t ậ p thu ộ c tính

cho Q(ABCDEGH) và t ậ p ph ụ thu ộ c hàm

F Q ={f 1 :B −−>A; f 2 :DA−−>CE; f 3 :D −−>H; f 4 :GH−−>C; f 5 :AC−−>D}

1 Tìm bao ñ óng c ủ a t ậ p thu ộ c tính X1 = {BD}

2 Tìm bao ñ óng c ủ a t ậ p thu ộ c tính X2 = {BCG}

4- Khóa c ủ a quan h ệ :

Đị nh nghiã:

Cho l ượ c ñồ quan h ệ < Q, F Q >

1 S ⊆ Q + , S là siêu khóa c ủ a Q n ế u S −−> Q +F Q

2 K ⊆ Q + , K là khóa ch ỉ ñị nh n ế u

a) K là siêu khóa

b) K−−>Q+là ph ụ thu ộ c hàm ñầ y ñủ

Trang 5

CSDL@Khoa CNTT 9

II- D ạ ng Chu ẩ n Trên Quan H ệ :

II- D ạ ng Chu ẩ n Trên Quan H ệ :

• Dạng chuẩn 1

• Dạng chuẩn 2

• Dạng chuẩn 3

• Dạng chuẩn BCK

1- D ạ ng chu ẩ n 1:

1- D ạ ng chu ẩ n 1:

1.1 Định nghĩa DC1:

Một lược ñồ quan hệ Q ñạt dạng chuẩn 1 nếu mọi thuộc tính của

Q ñều là thuộc tính ñơn.

1.2 Khái niệm Thuộc tính ñơn:

Một thuộc tínhñược gọi là thuộc tínhñơn nếu giá trịthuộc tính

hoặc chỉmang một thông tin duy nhất; nếuñược ghép bởi

nhiều thông tin thì hệ thống thường truy xuất trên toàn bộgiá trị

của nó

Ví dụ:

– Thuộc tínhĐịa_Chỉ

– Thuộc tính Ngày_Sinh

Trang 6

CSDL@Khoa CNTT 11

2- D ạ ng chu ẩ n 2:

2- D ạ ng chu ẩ n 2:

M ộ t l ượ c ñồ quan h ệ Q ñạ t d ạ ng chu ẩ n 2 n ế u:

a Q có DC1

b M ọ i thu ộ c tính không là thu ộ c tính khóa ñề u ph ụ thu ộ c hàm

ñầ y ñủ vào các khóa c ủ a Q.

Nh ận xét: N  u m  i khóa c  a quan h  Q ch  có 1 thu  c tính thì

Q ñ t d ng chu n 2.

DC1

DC2

Ví d ụ ki ể m tra d ạ ng chu ẩ n 2 c ủ a quan h ệ :

Ví d ụ ki ể m tra d ạ ng chu ẩ n 2 c ủ a quan h ệ :

1- QLSV(MaSV, Ten, NS, DC, TenLop, KhoaHoc, MaMH, TenMH, Diem)

F = {f1:MaSV  Ten, NS, DC, TenLop

f2: TenLop  KhoaHoc;

f3: MaMH  TenMH; f4 : TenMH  MaMH;

f5: MaSV, MaMH  Diem }

2- KQHT(MaSV, MaMH, TenMH, Diem)

FKQHT={ f1: MaMH  TenMH; f2 : TenMH  MaMH;

f3: MaSV, MaMH  Diem}

3- SV(MaSV, Ten, NS, DC, TenLop, KhoaHoc)

FSV = { f1:MaSV  Ten, NS, DC, TenLop;

f2: TenLop  KhoaHoc}

Trang 7

CSDL@Khoa CNTT 13

3- D ạ ng chu ẩ n 3:

3- D ạ ng chu ẩ n 3:

3.1 Khái niệm Phụ thuộc bắc cầu:

Cho l ượ c ñồ quan h ệ <Q, F Q >;

A ⊂ Q + , X ⊂ Q + và t ồ n t ạ i X A

X A là ph ụ thu ộ c hàm b ắ c c ầ u nếu tồn tại nhóm thuộc tính

Y ⊂Q+thỏa mản 4 ñiều kiện sau:

1 X Y ∈F+

Q

2 Y A ∈F+

Q

3 Y −/−>X

4 A ⊄{X ∪Y}

Ví d ụ :

SV(MaSV, Ten, NS, DC, TenLop, KhoaHoc)

FSV = { f1:MaSV Ten, NS, DC, TenLop;

f2: TenLop KhoaHoc}

a) Ki ể m tra t ồ n t ạ i : MaSVKhoaHoc

b) Ch ứ ng minh {KhoaHoc} ph ụ thu ộ c b ắ c c ầ u vào {MaSV}

Trang 8

CSDL@Khoa CNTT 15

3.2 Định nghiã DC3:

L ượ c ñồ quan h ệ Q ñạ t d ạ ng chu ẩ n 3 n ế u:

1 Q ñạ t d ạ ng chu ẩ n 2

2 M ọ i thu ộ c tính không là thu ộ c tính khóa ñề u không ph ụ

thu ộ c b ắ c c ầ u vào m ộ t khóa nào c ủ a Q.

DC1

DC2 DC3

Ví d ụ ki ể m tra d ạ ng chu ẩ n 3 c ủ a quan h ệ :

Ví d ụ ki ể m tra d ạ ng chu ẩ n 3 c ủ a quan h ệ :

1- KQMH(MaSV, MaMH, TenMH, Diem)

FKQHT={ f1: MaMH TenMH; f2 : TenMH MaMH;

f3: MaSV, MaMH Diem}

2- SV(MaSV, Ten, NS, DC, TenLop, KhoaHoc)

FSV = { f1:MaSV Ten, NS, DC, TenLop;

f2: TenLop KhoaHoc}

Trang 9

CSDL@Khoa CNTT 17

4 D ạ ng chu ẩ n BCK (Boyee-Codd-Kent):

4 D ạ ng chu ẩ n BCK (Boyee-Codd-Kent):

L ượ c ñồ quan h ệ Q ở d ạ ng chu ẩ n BCK n ế u

1 Q ñạ t d ạ ng chu ẩ n 3

2 M ọ i ph ụ thu ộ c hàm không hi ể n nhiên ñề u ch ứ a 1 khóa c ủ a

Q ở v ế trái.

X A ∈ F +

Q : A ∉ X và X ch ứ a 1 khóa c ủ a Q

DC1

DC2 DC3

DC BCK

Ví d ụ ki ể m tra d ạ ng chu ẩ n BCK c ủ a quan h ệ :

1- KQMH(MaSV, MaMH, TenMH, Diem)

FKQHT ={ f1: MaMH TenMH; f2 : TenMH MaMH;

f3: MaSV, MaMH Diem}

2- SV(MaSV, Ten, NS, DC, TenLop)

FSV = { f: MaSV Ten, NS, DC, TenLop}

3- LOP(TenLop, KhoaHoc)

FLOP = { f: TenLop KhoaHoc}

Trang 10

CSDL@Khoa CNTT 19

III- D ạ ng chu ẩ n c ủ a CSDL:

III- D ạ ng chu ẩ n c ủ a CSDL:

Là d ạ ng chu ẩ n th ấ p nh ấ t trong các l ượ c ñồ quan h ệ có trên

CSDL.

Ví d ụ : Xét d ạ ng chu ẩ n c ủ a CSDL g ồ m 2 quan h ệ sau:

1- KQMH(MaSV, MaMH, TenMH, Diem)

FKQHT ={ f1: MaMH TenMH; f2 : TenMH MaMH;

f3: MaSV, MaMH Diem}

2- SV(MaSV, Ten, NS, DC, TenLop, KhoaHoc)

FSV = { f1:MaSV Ten, NS, DC, TenLop;

f2: TenLop KhoaHoc}

Ví d ụ :

Ví d ụ :

Xét d ạ ng chu ẩ n c ủ a CSDL g ồ m 3 quan h ệ sau:

1- SV(MaSV, Ten, NS, DC, TenLop)

FSV = { f: MaSV Ten, NS, DC, TenLop}

2- LOP(TenLop, KhoaHoc)

FLOP = { f: TenLop KhoaHoc}

3- KQMH(MaSV, MaMH, TenMH, Diem)

FKQHT={ f1: MaMH TenMH; f2 : TenMH MaMH;

f3: MaSV, MaMH Diem}

Trang 11

CSDL@Khoa CNTT 21

Ví d ụ :

Ví d ụ :

Xét d ạ ng chu ẩ n c ủ a CSDL g ồ m 4 quan h ệ sau:

1- SV(MaSV, Ten, NS, DC, TenLop)

FSV = { f: MaSV Ten, NS, DC, TenLop}

2- LOP(TenLop, KhoaHoc)

FLOP = { f: TenLop KhoaHoc}

3- MONHOC(MaMH, TenMH)

FKQHT={ f1: MaMH TenMH; f2 : TenMH MaMH}

4- KQHT(MaSV, MaMH, Diem)

FKQHT={ f1: MaSV, MaMH Diem}

IV- Chu ẩ n hóa L ượ c Đồ Quan H ệ :

IV- Chu ẩ n hóa L ượ c Đồ Quan H ệ :

Trang 12

CSDL@Khoa CNTT 23

1- M ụ c tiêu chu ẩ n hóa:

• Biến ñổi lược ñồquan hệ có dạng chuẩn thấp trong CSDL

thành các lược ñồquan hệ ñạt dạng chuẩn cao nhất

Ví d ụ : Xét CSDL g ồ m 2 quan h ệ sau:

1- KQMH(MaSV, MaMH, TenMH, Diem)

FKQHT={ f1: MaMH TenMH; f2 : TenMH MaMH;

f3: MaSV, MaMH Diem}

2- SV(MaSV, Ten, NS, DC, TenLop, KhoaHoc)

FSV = { f1:MaSV Ten, NS, DC, TenLop;

f2: TenLop KhoaHoc}

2- Đị nh lý Delobel: (1973)

Xét quan h ệ Q(X, Y, Z) có t ậ p ph ụ thu ộ c hàm F Q

X, Y, Z là các t ậ p con thu ộ c tính khác r ỗ ng.

N ế u t ồ n t ạ i XY thì phép phân rã Q thành 2 quan h ệ con

Q1(X, Y) và Q2(X, Z) là b ả o toàn thông tin.

Ngh ĩ a là: - Q + = Q1 +Q2 +

- Q = Q1 Q2

Ý tưởng: Chuẩn hóa quan hệ Q

1 Phân rã Q thành 2 quan h ệ Q1 và Q2 b ằ ng 1 m ộ t ph ụ thu ộ c hàm f có

VT(f) ∪ VP(f) ⊂ Q +

2 L ặ p l ạ i ph ươ ng pháp phân rã cho Q1 và Q2 cho ñế n khi không còn ph ụ

thu ộ c hàm nh ư v ậ y n ữ a.

Trang 13

CSDL@Khoa CNTT 25

3- Thu ậ t toán phân rã:

Thu ậ t toán: Phân rã <Q, F Q >

Input: <Q, F Q >

Output: C = { Q I } n I=1 {t ậ p các l ñ qh ñượ c phân rã}

Begin

b1 F* = FQ\ { f ∈ FQ: [VT(f)] + = Q + }

b2 N ế u F* = ∅ thì C = {QI} là nghi ệ m c ủ a bài toán (k ế t thuc)

Ng ượ c l ạ i thì chuy ể n sang b ướ c b3

b3 Ch ọ n ph ụ thu ộ c hàm f: X  Y ∈ F*

b4 Phân rã l ượ c ñồ quan h ệ Q thành 2 l ượ c ñồ quan h ệ con:

< Q1(X, Y), F1={f ∈ FQ: VT(f) ∪ VP(f) ⊂ Q1} >

< Q2(Q + \ Y), F2={ f ∈ FQ: VT(f) ∪ VP(f) ⊂ Q2 } >

b5 N ế u F1 ∪ F2 <> FQ thì quay l ạ i b3 ch ọ n m ộ t ph ụ thu ộ c hàm khác.

ng ượ c l ạ i thì sang b6

b6 Phân rã(Q1, F1);

b7 Phân rã (Q2, F2);

end;

Ví d ụ :

Ví d ụ :

1- KQMH(MaSV, MaMH, TenMH, Diem)

FKQHT={ f1: MaMH TenMH; f2 : TenMH MaMH;

f3: MaSV, MaMH Diem}

2- SV(MaSV, Ten, NS, DC, TenLop, KhoaHoc)

FSV = { f1:MaSV Ten, NS, DC, TenLop;

f2: TenLop KhoaHoc}

Trang 14

CSDL@Khoa CNTT 27

Ví d ụ :

Ví d ụ :

VanChuyen(MsKH, TP, CTyVC, MsHH, SL)

F = { f1: MsKHTP; f2: TP CtyVC;

f3: MsKH, MsHH SL }

– MsKH: Mã sốKhách hàng

– TP: Thành phốkháchở

– CtyVC: công ty vận chuyển hàng

– MsHH: mã hàng hóa

– SL: sốlượng

1 Xét d ạ ng chu ẩ n

2 Phân rã thành các quan h ệ có d ạ ng chu ẩ n cao nh ấ t

Nh ậ n xét:

1 T ấ t c ả các quan h ệ k ế t qu ả ñề u ñạ t d ạ ng chu ẩ n BCK

2 B ả o toàn thông tin

3 Tùy theo th ứ t ự các pth ñượ c xét mà kết quả và số lượng

quan hệ con có thể khác nhau

4 Nên ư u tiên ch ọ n ph ụ thu ộ c hàm gây ch ấ t l ượ ng x ấ u cho

quan h ệ

Ngày đăng: 29/06/2014, 15:20

TỪ KHÓA LIÊN QUAN

w