1
Mô hình cơ sở dữ liệu quan hệ
(The Relational Database Model)
Chương 2
2
Giới thiệu
Mô hình Cơ sở dữ liệu Quan hệ (gọi tắt là Mô
hình Quan hệ) do E.F Codd đề xuất năm 1971
Mô hình Quan hệ thể hiện dữ liệu dưới góc độ logic
Mô hình Quan hệ bao gồm:
Các khái niệm nhằm mô tả dữ liệu dưới dạng dòng và cột
như quan hệ, bộ, thuộc tính, khóa chính, khoá ngoại,
Các phép toán thao tác với dữ liệu_ Đại số quan hệ
Ràng buộc toàn vẹn quan hệ
Các Hệ quản trị CSDL quan hệ (RDBMS) được xây
dựng dựa trên lý thuyết mô hình quan hệ.
3
Các khái niệm
Quan hệ / bảng
Thuộc tính
Bộ
99003 Phạm Hồng 0 Long An
99004 Lê Văn 1 Binh Thuan
99005 Nguyễn Nam 1 Tp HCM
Quan hệ
sinhvien
6
Quan hệ và bảng
MASV MAMH MAKHOA DIEMTHI
99001 CSDL CNTT 3.0
99002 CSDL CNTT 8.0
99001 THVP CNTT 6.0
99005 THVP AV 5.0
Quan hệ
ketquaHT
7
Thuộc tính
Một thuộc tính bao gồm :
Tên thuộc tính
Tên phân biệt
Giúp diễn giải ý nghĩa thuộc tính (thuộc tính của thực thể,
hay mối kết hợp)
Kiểu dữ liệu thuộc tính
Số nguyên, số thực, văn bản, logic,…
Miền giá trị xác định
Các thuộc tính và Mối liên hệ giữa các thuộc tính
Mỗi lược đồ quan hệ luôn kèm một tân từ để diễn tả ý nghĩa
của nó.
Vd, tân từ: Mỗi Sinh viên thuộc một khoa, học một môn học
thì có kết quả thi môn học đó.
Ký hiệu LĐQH
Ketqua( MASV, MAMH, MAKHOA, DIEMTHI)
Ký hiệu r(Ketqua) là một thể hiện của LĐQH trên.
Lược đồ CSDL
Tập hợp các lược đồ quan hệ trong cùng một CSDL
10
Khóa
(Key hay candidate key)
Gọi S là một tập các thuộc tính của lược đồ quan hệ R
S được gọi là một siêu khóa (superkey) của lược đồ quan hệ
R, nếu với hai bộ bất kỳ trong R thì giá trị của các thuộc tính
trong S là khác nhau
Siêu khoá có ít thuộc tính nhất được gọi là khóa (key) hay
khóa dự tuyển (candidate key)
Một lược đồ quan hệ có thể có nhiều khóa (khóa dự tuyển)
Ketqua( MaSV, MaMH, Makhoa, Diemthi)
rKQ
Siêu khóa: {MaSV, MaMH}, {MaSV,MaMH,MaKhoa},…
Khóa (khóa dự tuyển, khóa chính , khóa phức): {MaSV,
MaMH}
Khóa ngoại : {MaMH} , {MaKhoa}
MASV MAMH MAKHOA DIEMTHI
99001 CSDL CNTT 3.0
99002 CSDL CNTT 8.0
99001 THVP CNTT 6.0
99005 THVP AV 6.0
13
Khóa _ ví dụ 3
Sinhvien(MaSV, Hoten, Phai, soCMND)
rSV
Siêu khóa : {MaSV} , {MaSV, Hoten}, … ,
{soCMND} , {soCMND, Hoten},…
Khóa (khóa dự tuyển): {MaSV} , {soCMND}
Khóa chính : {MaSV}
MaSV Hoten Phai soCMND
99001 Nguyen van anh Nam 01245012
99002 Tran Le Tuan Nam 02209875
99003 Nguyen Thi Hong Nu 04563711
Phép chọn (selection)
Phép chiếu (projection)
Phép hợp (union)
Phép trừ (set difference)
Phép tích Descartes (Cartesian product)
3 phép toán suy dẫn*
Phép kết (Join)
Phép giao (Intersection)
Phép chia (Division)
(*Có thể được biểu diễn dưới dạng các phép toán cơ bản)
17
Ký hiệu
Quan hệ r là một thể hiện của lược đồ quan
hệ R(A1, A2, …, Am)
Điều kiện F là 1 biểu thức luận lý có giá trị
true/false. F bao gồm:
Các toán hạng là hằng hoặc tên thuộc tính
Các phép toán so sánh =, ≠, <, ≤, >, ≥
7
7
3
10
r(A=B ^ D>5)
A B C D
α
β
α
β
1
23
7
10
r(A=B)
A B C D
α
β
β
α
β
β
1
12
23
7
3
10
20
Phép chiếu (Projection)
2
A C
α
α
β
β
1
2
1
2
r[A,C]
22
Phép hợp (union)
Phép hợp (union)
Phép hợp của 2 quan hệ r và s
r + s = r ∪ s = { t | t ∈ r ∨ t ∈ s}
trong đó: r và s là hai quan hệ khả hợp
r + s
23
Phép hiệu (Set Difference)
Phép hiệu của 2 quan hệ r và s
r - s = { t | t ∈ r ∧ t ∉ s }
trong đó: r và s là hai quan hệ khả hợp
r - s
24
Phép giao (Intersection)
Phép giao của 2 quan hệ r và s