TRƯỜNG ĐẠI HỌC BẠC LIÊU
KHOA CÔNG NGHỆ THÔNG TIN
Bài giảng
CƠ SỞ DỮ LIỆU
Biên soạn:
DƯƠNG VIỆT HẰNG
HÀ THỊ PHƯƠNG ANH
Bạc Liêu, 2020
Bài giảng Cơ sở dữ liệu
Dương Việt Hằng - Hà Thị Phương Anh - 2 -
MC LC
PHẦN LÝ THUYẾT
CHƯƠNG 1: TỔNG QUAN V CƠ SỞ D LIU
1.1. Một số khái niệm cơ bản ................................................................................. 4
1.2. Hệ quản trị cơ sở dữ liệu ................................................................................. 8
1.3. Các đối tượng sử dụng cơ sở dữ liệu ............................................................... 9
1.4. Các mô hình dữ liệu ........................................................................................ 10
CHƯƠNG 2: MÔ HÌNH D LIU QUAN H
2.1. Các khái niệm cơ bản ...................................................................................... 13
2.2. Giới thiệu về đại số quan hệ ............................................................................ 16
CHƯƠNG 3: NGÔN NGỮ THAO TÁC D LIU
3.1 Ngôn ngữ con dữ liệu DSL – ALPHA ............................................................ 27
3.2 Ngôn ngữ con dữ liệu SQL ............................................................................. 32
CHƯƠNG 4: PHỤ THUC HÀM
4.1. Phụ thuộc hàm ................................................................................................. 42
4.2. Bao đóng.......................................................................................................... 45
4.3. Hệ tiên đề Amstrong ....................................................................................... 46
4.4. Thuật toán tìm bao đóng .................................................................................. 49
4.2. Thuật toán tìm F+ ............................................................................................. 50
CHƯƠNG 5: PHỦ CA TP PH THUC HÀM
5.1 Sự tương đương của các tập phụ thuộc hàm Phủ của tập phụ thuộc hàm ... 53
5.2 Phủ tối thiểu của một tập phụ thuộc hàm ........................................................ 55
5.3 Khóa của lược đồ quan hệ ............................................................................... 57
CHƯƠNG 6: CHUẨN HÓA CƠ SỞ D LIU
6.1. Đặt vấn đề ........................................................................................................ 62
6.2. Mục đích của chuẩn hóa .................................................................................. 63
6.3. Các vấn đề nảy sinh đối với một CSDL không tốt .......................................... 63
6.4. Các dạng chuẩn ............................................................................................... 63
6.5. Phép tách các lược đồ quan hệ ........................................................................ 69
6.6. Thiết kế CSDL bằng cách phân rã .................................................................. 73
Bài giảng Cơ sở dữ liệu
Dương Việt Hằng - Hà Thị Phương Anh - 3 -
PHẦN THỰC HÀNH
BUỔI 1 - GIỚI THIỆU VỀ SQL SERVER
1 Tổng quan về SQL Server ................................................................................... 82
2 Khởi động dịch vụ SQL Server ........................................................................... 83
3 Các thao tác cơ bản trong SQL Server ................................................................ 83
4 Bài tập thực hành ................................................................................................ 85
BUỔI 2 – GIỚI THIỆU NHÓM NGÔN NGỮ SQL
1. Công cụ QUERY ANALYZER (QA) ................................................................ 88
2. Một số kiểu dữ liệu trong SQL SERVER ........................................................... 89
3. Các hàm cơ bản trong SQL SERVER ................................................................ 89
4. Hướng dẫn thực hành .......................................................................................... 91
5. Bài tập thực hành ................................................................................................ 92
BUỔI 3 – NHÓM NGÔN NGỮ THAO TÁC DỮ LIỆU DML
1. Các phép toán so sánh và các phép toán số học ................................................ 93
2. Sắp xếp dữ liệu (ORDER BY), loại bỏ dòng trùng lắp (DISTINCT) ............... 93
3. Lọc dữ liệu bằng WHERE kết hợp với các toán tử AND, OR, IN, NOT IN ... 93
4. Bài tập thực hành .............................................................................................. 93
BUỔI 4 – NHÓM NGÔN NGỮ THAO TÁC DỮ LIỆU DML
1. Ký tự đại diện và toán tử LIKE ......................................................................... 96
2. Mệnh đề INTO để tạo bảng mới ....................................................................... 96
3. Các kiểu kết nối dữ liệu .................................................................................... 96
4. Bài tập thực hành .............................................................................................. 98
BUỔI 5 – CÁC HÀM TRONG SQL
1. Danh sách các hàm cơ bản trong SQL ................................................................ 99
2. Mệnh đề GROUP BY trong SQL ....................................................................... 99
3. Mệnh đề HAVING trong SQL ............................................................................ 99
4. Truy vấn con ....................................................................................................... 100
5. Bài tập thực hành ................................................................................................ 100
BUỔI 6 - BÀI TẬP TỔNG HỢP .................................................................. 101
BUỔI 7 - BÀI TẬP TỔNG HỢP .................................................................. 105
PHẦN PHỤ LỤC
TÀI LIỆU THAM KHẢO
Bài giảng Cơ sở dữ liệu
Dương Việt Hằng - Hà Thị Phương Anh - 4 -
PHN LÝ THUYT
CHƯƠNG 1
TNG QUAN V CƠ SỞ D LIU
Mục đích
Chương này trình bày tổng quan về cơ sở dữ liệu, một số khái niệm cơ bản về cơ sở
dữ liệu và hệ quản trị cơ sở dữ liệu. Nêu lên c mô hình dữ liệu cũng như các đối tượng
sử dụng cơ sở dữ liệu.
Tóm tắt nội dung
Một số khái niệm cơ bản
Hệ quản trị cơ sở dữ liệu
Các đối tượng sử dụng cơ sở dữ liệu
Các mô hình dữ liệu
Yêu cầu
Nắm vững các khái niệm bản về cơ sở dữ liệu và hệ quản trị cơ sở dữ liệu. Hiểu
và phân biệt được các đối tượng sử dụng cơ sở dữ liệu và các mô hình dữ liệu.
1.1. Một số khái niệm cơ bản
1.1.1. Định nghĩa cơ sở dữ liệu
sở dữ liệu kthuật sở dữ liệu đã ảnh hưởng rất lớn đến việc sử dụng
máy tính. thể nói rằng sở dữ liệu đóng vai trò quan trọng trong mọi lĩnh vực
sử dụng máy tính như giáo dục, thương mại, kỹ nghệ, khoa học, thư viện,…. Thuật ngữ
cơ sở dữ liệu trở thành một thuật ngữ phổ dụng.
Một cơ sở dữ liệu là một tập hợp các dữ liệu có liên quan với nhau, được lưu trữ trên
máy tính, có nhiều người sử dụng và được tổ chức theo một mô hình. Dữ liệu là những
sự kiện có thể ghi lại được và có ý nghĩa.
dụ, để quản lý việc học tập trong một môi trường đại học, các dữ liệu là các thông
tin về sinh viên, về các môn học, điểm thi….Chúng ta tổ chức các dữ liệu đó thành các
bảng lưu giữ chúng vào sổ sách hoặc sử dụng một phần mềm máy tính để lưu giữ
chúng trên máy tính. Ta một tập các dữ liệu có liên quan đến nhau và mang nhiều ý
nghĩa, đó là một cơ sở dữ liệu.
1.1.2. Ưu điểm của cơ sở dữ liệu
- Có thể giảm bớt sự dư thừa dữ liệu lưu trữ. Khi có hai hệ ứng dụng khác nhau thực
chất cùng đòi hỏi những tập dữ liệu như nhau, người quản trị (Database Manager) sẽ
hợp nhất hai tập này lại, chỉ lưu trữ một lần và dùng chung cho cả hai hệ nói trên.
- Có thể tránh được sự không nhất quán trong dữ liệu lưu trữ HQT CSDL sẽ có cách
bảo vệ chống lại tính không nhất quán như vừa nói.
Bài giảng Cơ sở dữ liệu
Dương Việt Hằng - Hà Thị Phương Anh - 5 -
- Dữ liệu lưu trữ thể được sử dụng chung. Trong CSDL, các tập tin dữ liệu được
gom lại để có thể được dùng chng cho tất cả các ứng dụng, cho cả các chương trình ng
dụng mới.
- thể đảm bảo được sự tuân thủ các tiêu chuẩn thống nhất. CSDL giúp bảo đảm
tuân thủ các nguyên tắc về biểu diễn dữ liệu của hệ thống ban ngành của nghiệp,
quan (các báo biểu trong ngành tài chính, ngân hàng) hay của các trung m tính toán.
Như vậy việc bảo trì và trao đổi dữ liệu giữa các nơi liên quan sẽ dễ dàng.
- thể áp dụng các biện pháp an toàn dữ liệu: Người quản trị CSDL có thể:
o Chỉ cho phép một số người nào đó được quyền truy xuất đến một số tập tin nào
đó bằng một mật mã đã được người quản trị định trước.
o Kiểm tra các ý đồ truy xuất đến dữ liệu mật.
- Có thể giữ được sự toàn vẹn dữ liệu: CSDL chỉ được chứa các dữ liệu đúng. Nhờ sự
quản lý tập trung, cho phép người quản trị định ra các thủ tục kiểm tra cần thiết khi
thực hiện các thao tác cập nhật. Dễ kiểm tra nhất các tính chất vgiá trị (Ví dụ số
lượng hàng bán không được vượt quá số lượng hàng tồn kho). Khó kiểm tra hơn khi đề
cập đến các yêu cầu mang tính cấu trúc, chẳng hạn không thể gán cùng một lúc hai chiếc
máy bay cho cùng một chuyến bay.
- thể cân bằng được các yêu cầu đối lập nhau. Nhờ biết được tất cả các yêu cầu của
toàn bộ xí nghiệp, cơ quan, người quản trị có thể thiết kế CSDL theo cách thức làm cho
mọi người cảm thấy thỏa mãn.
- Ý nghĩa của từng liên hệ giữa các loại dữ liệu được nổi bật.
- Có thể đảm bảo tính độc lập dữ liệu cao. Đây là hệ quả của các ưu điểm trên, nhưng
lại là ưu điểm quan trọng nhất.
1.1.3. Kiến trúc 3 mức của cơ sở dữ liệu
Theo ANSI-PARC (American National Standards Institute Standards Planning
and Requirements Committee) có 3 mức biểu diễn một CSDL:
- Mức trong: Mô tả dữ liệu được thực sự lưu trữ như thế nào trong CSDL. Đây là mức
trừu xuất thấp nhất, thể hiện các cài đặt có tính chất vật lý của CSDL để đạt được tối ưu
trong những lần thực hiện các thao tác tìm kiếm lưu trữ, để tận dụng được các vùng
nhớ còn trống. Mức trong cũng mức phản ánh các cấu trúc dữ liệu, các tổ chức tệp
được dùng cho lưu trữ dữ liệu trên các thiết bị nhớ thứ cấp. Nghĩa mức y tiếp xúc
với các phương thức truy nhập của hệ điều hành để đặt dữ liệu vào các thiết bị nhớ, xây
dựng các tập chỉ số, truy xuất dữ liệu… liên quan đến các vấn đề như sự cấp phát vùng
nhớ cho dữ liệu và các chỉ số, các mô tả bản ghi để lưu trữ, các thuật nén và giải
dữ liệu.
- Mức khái niệm: tả những dữ liệu o được lưu trữ trong CSDL và có những mối
quan hệ nào giữa chúng. Nói một cách cụ thể hơn, mức khái niệm biểu diễn các thực thể
(trong thế giới nhỏ), các thuộc tính các mối quan hệ của các thực thể đó, mức khái
niệm cũng cho thấy các ràng buộc trên dữ liệu, các thông tin về ngữ nghĩa của dữ liệu,