Năm 2023
ThS. Lương Thái Hiền
CƠ SỞ DỮ LIỆU
TẬP BÀI GIẢNG
(Tài liệu lưu hành nội bộ)
Trang 1
LỜI NÓI ĐẦU
“Cơ sở dữ liệu” học phần sở ngành đối với sinh viên thuộc các chuyên
ngành Công nghệ Thông tin. Ngày nay, cơ sdữ liệu đã nhiều ứng dụng trong
mọi hoạt động của hội. Muốn thiết kế sử dụng sở dữ liệu chúng ta phải
nắm được các kthuật bản của sở dữ liệu. đó nh liên kết thực thể,
mô hình cơ sở dữ liệu quan hệ, cách sử dụng các phép toán đại số quan hệ để tạo,
cập nhật truy vấn sở dữ liệu và khái niệm phụ thuộc hàm ứng dụng trong lý
thuyết thiết kế và chuẩn hóa cơ sở dữ liệu quan hệ.
Bài giảng cần thiết cho tất cả các đối tượng muốn tìm hiểu và thiết kế các cơ
sở dữ liệu quan hệ ứng dụng trong công tác quản lý.
Với mong muốn sinh viên tài liệu học tập thể hiểu được các nội dung
trong học phần, tác giả đã biên soạn tập bài giảng này với cách thức trình bày
đọng cùng các ví dụ minh họa đim.
Tập bài giảng “Cơ sở dữ liệu” trình bày những kiến thức liên quan đến các
khái niệm về sở dữ liệu, cách thiết kế tổ chức, cài đặt các lược đồ s dữ
liệu; khai thác dữ liệu thông qua các cấu trúc lệnh SQL,…
Tập bài giảng bao gồm 7 chương:
Chương 1:
trình bày tổng quan về sở dữ liệu, các hình sở dữ liệu, hệ quản trị
sở dữ liệu.
Chương 2: trình y quy trình thiết kế sở dữ liệu, thiết kế mô nh dữ liệu
mức quan niệm.
Chương 3: trình bày các khái niệm liên quan đến hình dữ liệu quan hệ, cách
chuyển đổi hình quan niệm sang hình quan hệ.
Chương 4:
trình bày các khái niệm về đại số quan hệ, c phép nh đại số quan
hệ,
phép nh trên biến bộ,
Chương 5: trình y các cấu trúc lệnh SQL tạo sở dữ liệu, tạo bảng, khai thác
dữ liệu,…
Chương 6:
trình bày các khái niệm liên quan đến ràng buộc toàn vẹn, cài đặt ràng
buộc
toàn vẹn cho sở dữ liệu.
Chương 7:
trình bày các khái niệm liên quan đến phụ thuộc hàm, các thuật toán liên
quan đến phụ thuộc hàm; các dạng chuẩn của sở dữ liệu,
Trang 2
MC LC
Chương 1 .......................................................................................................... 8
TỔNG QUAN VỀ CƠ SỞ DỮ LIỆU ............................................................. 8
1.1. Giới thiệu ................................................................................................ 8
1.2. Quá trình phát triển ................................................................................. 8
1.3. Một số đặc tính của cơ sở dữ liệu ......................................................... 10
1.4. Người sử dụng cơ sở dữ liệu ................................................................ 12
1.5. Khái niệm và tính năng của hệ quản trị cơ sở dữ liêu .......................... 13
1.6. Kiến trúc của hệ quản trị cơ sở dữ liêu ................................................. 14
1.7. Một số ứng dụng cơ sở dữ liệu ............................................................. 16
BÀI TẬP CHƯƠNG 1................................................................................. 18
Chương 2 ........................................................................................................ 19
MÔ HÌNH THỰC THỂ KẾT HỢP ............................................................. 19
2.1. Quá trình thiết kế cơ sở dữ liệu ............................................................ 19
2.2. Mô hình thực thể kết hợp ...................................................................... 22
2.2.1. Thực thể (Entity) ......................................................................... 22
2.2.2. Thuộc tính (Attribute) ................................................................. 24
2.2.3. Mối kết hợp ................................................................................. 28
2.2.4. Lược đồ thực thể kết hợp............................................................. 31
2.2.5. Các loại lược đồ thực thể kết hợp ............................................... 34
2.3. Các vấn đề về thiết kế ở mức khái niệm ............................................... 37
BÁI TẬP CHƯƠNG 2................................................................................. 38
Chương 3 ........................................................................................................ 42
MÔ HÌNH DỮ LIỆU QUAN HỆ ................................................................. 42
3.1. Giới thiệu .............................................................................................. 42
3.2. Các khái niệm của mô hình quan hệ ..................................................... 42
3.2.1. Quan hệ (Relation) ...................................................................... 42
3.2.2. Schema ........................................................................................ 43
3.2.3. Thuộc tính ................................................................................... 44
3.2.4. Lược đồ ....................................................................................... 44
3.2.5. Bộ ................................................................................................ 44
3.2.6. Miền giá trị.................................................................................. 45
Trang 3
3.3. Các ràng buộc của mô hình quan hệ ..................................................... 45
3.4. Các đặc trưng của mô hình quan hệ ..................................................... 46
3.5. Chuyển lược đồ cơ sở dữ liệu theo mô hình thực thể kết hợp sang mô
hình quan hệ .......................................................................................... 47
3.1.1.
Qui tắc chung .............................................................................. 47
3.1.2.
Qui tắc chuyển mối quan hệ thành khóa ngoại ........................... 47
BÀI TẬP CHƯƠNG 3................................................................................. 48
Chương 4 ........................................................................................................ 49
ĐẠI SỐ QUAN HỆ VÀ PHÉP TÍNH QUAN HỆ ....................................... 49
3.1. Giới thiệu .............................................................................................. 49
3.2. Phép toán một ngôi ............................................................................... 49
4.2.1.
Phép chọn .................................................................................... 49
4.2.2.
Phép chiếu ................................................................................... 50
4.2.3.
Phép đổi tên ................................................................................ 50
3.3. Phép toán hai ngôi ................................................................................ 51
4.3.1. Phép toán tập hợp ....................................................................... 51
4.3.2. Phép kết ....................................................................................... 53
4.3.3. Phép chia ..................................................................................... 54
3.4. Phép toán khác ...................................................................................... 55
3.4.1. Hàm kết hợp ................................................................................ 55
3.4.2. Gom nhóm ................................................................................... 55
3.4.3. Kết ngoài ..................................................................................... 56
3.5. Phép tính quan hệ biến bộ ..................................................................... 56
4.5.1.
Biến bộ ........................................................................................ 57
4.5.2.
Biểu thức và phép tính quan hệ ................................................... 57
3.6. Phép tính quan hệ biến miền ................................................................. 59
BÀI TÂP CHƯƠNG 4................................................................................. 60
Chương 5 ........................................................................................................ 61
NGÔN NGỮ TRUY VẤN SQL .................................................................... 61
5.1.
Giới thiệu .............................................................................................. 61
5.2.
Schema là gì? ........................................................................................ 61
5.2.1.
Tạo Schema với lệnh Create Schema .......................................... 62
Trang 4
5.2.2.
Cách xóa Schema với lệnh DROP SCHEMA ............................. 62
5.2.3.
Phân quyền cho Schema ............................................................. 62
5.3.
Định nghĩa dữ liệu ................................................................................ 63
5.3.1.
Kiểu dữ liệu ................................................................................. 63
5.3.2.
Các lệnh định nghĩa dữ liệu ........................................................ 63
5.4.
Cập nhật dữ liệu .................................................................................... 70
5.4.1.
Thêm dữ liệu ................................................................................ 70
5.4.2.
Xóa dữ liệu .................................................................................. 75
5.4.3.
Sửa dữ liệu .................................................................................. 76
5.5.
Truy vấn dữ liệu .................................................................................... 78
5.5.1.
Truy vấn cơ bản .......................................................................... 78
5.5.2.
Tập hợp, so sánh tập hợp và truy vấn lồng ................................. 80
5.5.3.
Hàm kết hợp và gom nhóm ......................................................... 82
5.5.4.
Một số dạng truy vấn khác .......................................................... 83
BÀI TẬP CHƯƠNG 5................................................................................. 88
Chương 6 ........................................................................................................ 90
RÀNG BUỘC TOÀN VẸN ........................................................................... 90
6.2.
Các yếu tố của ràng buộc toàn vẹn ....................................................... 90
6.3.1.
Bối cảnh ...................................................................................... 90
6.3.2.
Nội dung ...................................................................................... 90
6.3.3.
Bảng tầm vực ảnh hưởng ............................................................ 91
6.3.
Phân loại ràng buộc toàn vẹn ................................................................ 91
6.3.1.
Ràng buộc toàn vẹn liên quan đến một quan h ......................... 93
6.3.2.
Ràng buộc toàn vẹn liên quan đến nhiều quan hệ ...................... 94
6.4.
Cài đặt các ràng buộc toàn vẹn ............................................................. 98
6.4.1. Assertion ...................................................................................... 98
6.4.2. Trigger ........................................................................................ 99
BÀI TẬP CHƯƠNG 6............................................................................... 102
Chương 7 ...................................................................................................... 104
PHỤ THUỘC HÀM VÀ CHUẨN HÓA CƠ SỞ DỮ LIỆU .................... 104
7.1. Sự dư thừa thông tin ........................................................................... 104
7.2. Phụ thuộc hàm .................................................................................... 105