1
TRƯ NG Đ I H C SƯ PH M K THU T HƯ NG YÊN
KHOA CÔNG NGH THÔNG TIN
Đ CƯ Ơ NG BÀI GI NG
H C PH N: CƠ S D LI U
Trình đ đào t o
H đào t o
:
:
Đ i h c
Chính quy
NĂM 2010
TRƯ NG ĐẠ I HỌ C SƯ PHẠ M KỸ THUẬ T HƯ NG YÊN
KHOA CÔNG NGH THÔNG TIN
ĐỀ Ơ NG BÀI GI NG
H C PHẦ N: CƠ SỞ DỮ LIỆ U
Trình độ đào t o
H đào t o
:
:
Đạ i họ c
Chính quy
NĂM 2012
2
M C LỤ C
BÀI 1: CÁC KHÁI NI M BẢ N VỀ HỆ SỞ DỮ LI U ..............................9
1.1. sở dữ liệ u ....................................................................................................9
1.2. H quả n trị sở dữ liệ u.................................................................................10
1.2.1. Đị nh nghĩa hệ quả n trị s dữ liệ u ............................................................10
1.2.2.Các ch c năng củ a mộ t hệ quả n trị cơ s dữ liệ u ..........................................11
1.2.3.Các đặ c trư ng c a giả i pháp s dữ liệ u.....................................................12
1.2.4.Ví d về mộ t s dữ liệ u............................................................................14
1.3.Mô hình cơ sở dữ liệ u......................................................................................16
1.3.1.Các lo i mô hình cơ s dữ liệ u......................................................................16
1.3.2.Lư c đồ và tr ng thái cơ s dữ liệ u...............................................................17
1.4.Con ngư i trong hệ cơ s dữ liệ u.....................................................................18
1.4.1.Ngư i quả n trị hệ cơ s dữ liệ u (Database Administrator DBA) ................18
1.4.2.Ngư i thiế t kế cơ s dữ liệ u (Database Designer) .........................................19
1.4.3.Nh ng ngư i s dụ ng (End User) .................................................................19
1.4.4.Ngư i phân tích hệ thố ng và l p trình ng dụ ng ...........................................19
1.4.5.Ngư i thiế t kế và cài đặ t hệ quả n trị dữ liệ u..................................................19
1.4.6.Nh ng ngư i phát triể n công cụ ....................................................................20
1.4.7.Các thao tác viên và nh ng ngư i bả o trì......................................................20
1.5.Ngôn ng s dữ liệ u và giao di n................................................................20
1.5.1.Các ngôn ng h quả n trị cơ sở dữ liệ u.........................................................20
1.5.2.Các lo i giao diệ n h quả n trị s dữ liệ u...................................................21
1.6.Câu h i củ ng cố ...............................................................................................21
1. Đ nh nghĩa các thuậ t ngữ : cơ s dữ liệ u, hệ quả n trị cơ s d liệ u, hệ s dữ
li u, từ điể n cơ s dữ liệ u, mô hình cơ s dữ liệ u...................................................21
BÀI 2: MÔ HÌNH TH C TH- LIÊN K T.........................................................22
2.1.S dụ ng mô hình quan ni m bậ c cao cho việ c thiế t kế cơ s d liệ u................22
2.2.Các thành ph n bả n củ a mô hình ER...........................................................24
2.2.1.Th c thể và thu c tính ..................................................................................24
2.2.2.Ki u thự c thể , tậ p thự c thể , khóa và t p giá trị ..............................................26
2.2.3.Ki u liên kế t, tậ p liên kế t và các th hiệ n......................................................28
2.2.4.Cp liên kế t, tên vai trò và ki u liên kế t đệ quy.............................................29
2.2.5.Các ràng bu c trên các ki u liên kế t..............................................................30
2.2.6.Thu c tính củ a các kiể u liên kế t....................................................................31
2.2.7.Các ki u thự c thể yế u ...................................................................................31
2.3.Ví d về thiế t kế hình ER...........................................................................32
3
Xác đị nh các kiể u thự c th , các thuộ c tính và các ki u liên kế t..............................33
2.4.T ng kế t mô hình th c thể - liên kế t ................................................................ 35
2.4.1 Tóm t t.........................................................................................................35
2.4.2.Câu h i luyệ n tậ p.......................................................................................... 36
a)Câu h i lí thuyế t................................................................................................. 36
BÀI 3: BÀI T P VÀ TH O LUẬ N VỀ THIẾ T K CSDL E-R........................... 38
3.1. Tóm t t lý thuyế t ............................................................................................ 38
3.2. Bài t p áp dụ ng............................................................................................... 38
3.3. Th o luậ n .......................................................................................................38
BÀI 4 : MÔ HÌNH QUAN H- CHUY N HÌNH E R SANG MÔ HÌNH
QUAN H . ........................................................................................................... 38
4.1.Các khái ni m củ a mô hình quan h................................................................ 38
4.1.1.Mi n, thuộ c tính, bộ và quan h.................................................................... 38
4.1.2.Các đặ c trư ng c a các quan hệ ...................................................................... 40
a)Th tự củ a các bộ trong mộ t quan hệ ..................................................................40
4.2.Các ràng bu c quan hệ , lư c đồ s dữ liệ u quan hệ .....................................42
4.2.1.Các ràng bu c miề n......................................................................................42
4.2.2.Ràng bu c khoá và ràng bu c trên các giá tr không xác đị nh (null) .............42
4.2.3.Cơ s dữ liệ u quan h và lư c đồ s dữ liệ u quan hệ ................................ 44
4.2.4.Toàn v n thự c thể , toàn v n tham chiế u và khoá ngo i .................................46
4.3.Các phép toán trên mô hình quan h................................................................ 48
4.3.1.Các phép toán c p nhậ t................................................................................. 48
4.3.2. Các phép toán khác...................................................................................... 50
4.4.Chuy n đổ i mô hình ER thành mô hình quan h..............................................50
4.4.1.Các quy t c chuyể n đổ i................................................................................. 51
4.4.2.Các nguyên t c thiế t kế c đồ quan h ....................................................... 54
Các nguyên t c thiế t kế c đồ quan hệ ................................................................54
Ng nghĩa củ a các thuộ c tính quan hệ ................................................................... 54
Thông tin th a trong các bộ và s dị thư ng cậ p nhậ t.......................................55
Các giá tr không xác đị nh trong các bộ ................................................................. 56
Sinh ra các b giả ..................................................................................................57
Chuy n đổ i mô hình c thể ....................................................................................58
4.5.T ng kế t và câu h i ôn tậ p............................................................................... 58
4.5.1.T ng kế t .......................................................................................................58
4.5.2. Các câu h i ôn tậ p: ...................................................................................... 59
BÀI 5: BÀI T P VÀ TH O LUẬ N VỀ THIẾ T K CSDL QUAN H................ 61
4
5.1. Nh c lạ i lý thuyế t ...........................................................................................61
5.2. Bài t p............................................................................................................61
5.3. Th o luậ n .......................................................................................................61
BÀI 6: CÁC PHÉP TOÁN ĐẠ I SỐ QUAN HỆ ....................................................61
6.1.Các phép toán đạ i số quan hệ ...........................................................................62
6.1.1.Phép ch n (SELECT) ...................................................................................62
6.1.2.Phép chiế u (PROJECT) ................................................................................64
6.1.3.Phép đ t lạ i tên (RENAME) .........................................................................65
6.1.4.Các phép toán lý thuyế t tậ p hợ p....................................................................66
6.1.5.Phép n i (JOIN)............................................................................................68
6.1.6.T p hợ p đầ y đủ các phép toán quan h .........................................................70
6.1.7.Phép chia......................................................................................................70
BÀI 7: ĐẠ I SỐ QUAN H (TIế P) BÀI T P Ứ NG DỤ NG ...............................71
7.1.Các phép toán quan h bổ sung........................................................................71
7.1.1.Các hàm nhóm và các phép nhóm.................................................................71
7.1.2.Các phép toán khép kín đ quy .....................................................................72
7.2.M t số ví dụ về truy vấ n trong đạ i số quan hệ ..................................................73
7.3. Bài t p............................................................................................................74
BÀI 8: T I Ư U HÓAU H I TRUY VẤ N......................................................74
8.1 M đầ u ............................................................................................................74
8.2 T ng quan v tố i ư u hóa câu hỏ i......................................................................74
8.3. P ơ ng pháp ư c lư ng cây đạ i số quan hệ ....................................................76
8.4 Nguyên t c tố i ư u hóa......................................................................................77
8.5.K thuậ t t i ư u hoá các bi u th c đạ i số quan h . ............................................77
8.5.1. Bi u thứ c quan h........................................................................................77
8.5.2.Biế n đổ i biể u thứ c quan hệ ...........................................................................78
8.5.3.Các quy t c tư ơ ng đư ơ ng..............................................................................78
8.5.4 M t s nhậ n xét khi thự c hiệ n tố i ư u hóa câu h i..........................................81
8.6. Ví d tố i ư u hóa các câu h i ...........................................................................82
BAI 9: TH O LUẬ N BÀI T P VỀ TỐ I Ư U HÓA CÂU H I TRUY VẤ N ........85
9.1. Tóm t t về lý thuyế t........................................................................................85
9.2. Bài t p............................................................................................................85
BÀI 10: PH THUỘ C HÀM ................................................................................88
5
10.1. Khái ni m.....................................................................................................88
10.2. M t s tính chấ t củ a phụ thuộ c hàm..............................................................89
10.3. Đ nh nghĩa suy dẫ n theo quan h..................................................................91
10.4. H tiên đề Amstrong (Armstrong’s Axioms) ................................................ 92
10.5. Đ nh nghĩa suy dẫ n theo hệ tiên đề Amstrong...............................................92
10.6. Bao đóng củ a tậ p thuộ c tính (closures of attribute sets) ................................ 93
10.6.1Thu t toán tìm bao đóng củ a mộ t tậ p thuộ c tính ..........................................95
10.6.2. Thu t toán cơ bả n tìm F+............................................................................ 99
BÀI 11: PH CỦ A TẬ P PH THUỘ C HÀM .................................................... 101
11.1. Đ nh nghĩa tư ơ ng đư ơ ng............................................................................. 101
11.2. Các t p phụ thuộ c hàm tư ơ ng đư ơ ng .......................................................... 102
11.3. Ph thuộ c hàm không thừ a .................................................................... 103
11.3.1. Ph thuộ c hàm th a ............................................................................ 103
11.3.2. Ph không dư .......................................................................................... 103
11.4 Ph thu gọ n ................................................................................................. 104
11.4.1. Ph thuộ c hàm có vế trái dư thừ a:............................................................ 104
11.4.2. T p phụ thuộ c hàm có vế phả i mộ t thuộ c tính:......................................... 105
11.4.3. T p phụ thuộ c hàm không thừ a (phủ không dư ):................................. 105
11.4.4. T p phụ thuộ c hàm t i thiể u: ................................................................... 106
BÀI 12: BÀI T P VỀ PH THUỘ C HÀM VÀ CÁC V N Đ LIÊN QUAN ... 106
12.1. Nh c lạ i lý thuyế t. ...................................................................................... 106
12.2. Bài t p. .......................................................................................................106
12.3. Th o luậ n.................................................................................................... 106
BÀI 13: KHÓA C A LƯ C ĐỒ QUAN H..................................................... 106
13.1. Siêu khóa và khóa....................................................................................... 106
13.2. H Sperner và khóa .................................................................................... 108
13.3. M t s vấ n đề về khóa................................................................................ 109
13.3.1. Ki m tra mộ t tậ p cho trư c có phả i là khoá hay không?........................... 109
13.3.2.Tìm m t khoá củ a lư c đồ quan hệ ........................................................... 109
13.3.3. Giao c a tấ t cả các khoá .......................................................................... 110
13.3.4. Thu t toán kiể m tra mộ t c đồ đã cho có m t hay nhiề u khoá............... 113
13.3.5. Thu t toán tìm t t cả các khoá củ a c đồ quan hệ ................................. 113
BÀI 14: TH O LUẬ N BÀI T P V KHÓA CỦ A C ĐỒ QUAN HỆ ........115
14.1. Tóm t t về thuyế t.................................................................................... 115