Bài giảng Cơ sở dữ liệu - Chương 3: Mô hình dữ liệu quan hệ

Nội dung trình bày

ƒCác khái niệm của mô hình.

ƒCác ràng buộc của mô hình.

ƒThiết kếmô hình quan hệtừmô hình ER và

ER mởrộng.

pdf16 trang | Chuyên mục: Hệ Quản Trị Cơ Sở Dữ Liệu | Chia sẻ: dkS00TYs | Lượt xem: 5068 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Cơ sở dữ liệu - Chương 3: Mô hình dữ liệu quan hệ, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
cơ sở lý thuyết vững chắc dựa trên lý thuyết tập hợp.
• Sử dụng trong các HQT CSDL thương mại.
ƒ Nội dung chi tiết
• Quan hệ (Relation).
• Thuộc tính (Attribute).
• Miền giá trị (Domain).
• Bộ dữ liệu (Tuple).
• Lược đồ quan hệ (Relation Schema).
• Định nghĩa hình thức.
• Các đặc trưng của quan hệ.
• Các ký hiệu của mô hình.
Quan hệ (1)
ƒ Dữ liệu lưu trong CSDL được tổ chức thành các bảng 2 
chiều (table).
ƒ Mỗi bảng được gọi là một quan hệ.
Nam31/12/1973CuongLe Quang3
Nam1/1/1970BinhNguyen Van2
Nam15/4/1971AnTran Van1
4
MaNV
4/10/1972
Ngaysinh
Yen
Ten
NuNguyen Thi
GioitinhHoNHANVIEN
Tên bảng là
tên quan hệ
Cột ứng với một thuộc tính của nhân viên
Dòng ứng với
một nhân viên
Giá trị khóa
Mô hình dữ liệu quan hệ 3
Quan hệ (2)
ƒ Quan hệ
• Chứa dữ liệu của một tập thực thể hoặc một tập 
liên kết.
• Tên quan hệ.
• Tập hợp các dòng
- Mỗi dòng chứa các giá trị tương ứng với dữ liệu của 
một thực thể hoặc một liên kết.
- Mỗi dòng có 1 hoặc nhiều giá trị dùng để phân biệt 
giữa các dòng.
• Tập hợp các cột.
- Các giá trị trong cùng một cột có cùng một kiểu dữ
liệu.
Thuộc tính
ƒ Tên các cột của quan hệ.
ƒ Mỗi thuộc tính có một kiểu dữ liệu cơ sở
• Chuỗi ký tự (string), số nguyên (integer), số thực (real), ...
ƒ Các kiểu dữ liệu phức không được áp dụng
• Tập hợp (set), danh sách (list), mảng (array), ...
Nam31/12/1973CuongLe Quang3
Nam1/1/1970BinhNguyen Van2
Nam15/4/1971AnTran Van1
4
MaNV
4/10/1972
Ngaysinh
Yen
Ten
NuNguyen Thi
GioitinhHoNHANVIEN
Các thuộc tính
Mô hình dữ liệu quan hệ 4
Miền giá trị
ƒ Tập hợp các giá trị nguyên tử gắn với thuộc 
tính.
ƒ Có tên, kiểu dữ liệu, khuôn dạng và mô tả
• Tên: SDT_Nhanvien.
• Kiểu dữ liệu: chuỗi ký tự.
• Khuôn dạng: xxx-xxxxxxx.
• Mô tả: miền giá trị của số điện thoại của nhân 
viên.
Bộ dữ liệu, Lược đồ quan hệ
ƒ Bộ dữ liệu
• Là các dòng của quan hệ không kể dòng tên của các thuộc tính.
• Mỗi bộ chứa các giá trị cụ thể của các thuộc tính.
ƒ Lược đồ quan hệ
• Tạo thành từ tên của quan hệ và danh sách các thuộc tính.
NHANVIEN(MaNV, Ho, Ten, Ngaysinh, Gioitinh)
Nam31/12/1973CuongLe Quang3
Nam1/1/1970BinhNguyen Van2
Nam15/4/1971AnTran Van1
4
MaNV
4/10/1972
Ngaysinh
Yen
Ten
NuNguyen Thi
GioitinhHoNHANVIEN
Bộ dữ liệu
Mô hình dữ liệu quan hệ 5
Định nghĩa hình thức
ƒ Lược đồ quan hệ
• R(A1, A2, ..., An) hoặc R(A1:D1, A2:D2, ..., An:Dn)
- R là tên quan hệ.
- A1, ..., An là các thuộc tính.
- Di là miền giá trị của thuộc tính Ai, i = 1, ...,n.
• Bậc của R là số lượng thuộc tính của lược đồ.
ƒ Quan hệ - Trạng thái quan hệ
• r(R) = r = {t1, ..., tm}
- r là quan hệ của lược đồ quan hệ R.
- tj = là danh sách có thứ tự của n giá trị
+ vi ∈ Di hoặc vi = null (giá trị rỗng) là giá trị ứng với thuộc tính Ai.
- t[Ai] hoặc t[i] là thành phần thứ i của bộ t.
Các đặc trưng của quan hệ
ƒ Trong một quan hệ không có các bộ trùng nhau.
ƒ Thứ tự của các bộ trong quan hệ
• Về mặt toán học, giữa các bộ trong quan hệ không có bất kỳ thứ tự
nào.
• Nhiều thứ tự logic được xác định trên quan hệ khi nó được cài đặt 
như một tập tin hoặc hiển thị như một bảng.
ƒ Thứ tự của các giá trị trong bộ
• Sự sắp xếp của các giá trị trong một bộ là quan trọng.
ƒ Giá trị và giá trị rỗng (null) trong bộ
• Các thuộc tính gộp và thuộc tính đa trị không được phép tồn tại.
• Giá trị rỗng được dùng để biểu diễn các giá trị chưa xác định hoặc 
không thể áp dụng cho các thuộc tính.
Mô hình dữ liệu quan hệ 6
Các ký hiệu của mô hình
ƒ Lược đồ quan hệ R bậc n
• R(A1, A2, ..., An).
ƒ n-bộ t trong quan hệ r(R)
• t = , vi là giá trị của thuộc tính Ai.
• t[Ai], t.Ai là giá trị của thuộc tính Ai trong bộ t.
• t[{A1, ..., Ak}] là các giá trị của tập thuộc tính {A1, ..., Ak} trong bộ t.
ƒ Tên quan hệ
• Q, R, S.
ƒ Trạng thái quan hệ
• q, r, s.
ƒ Bộ
• t, u, v.
Các ràng buộc của mô hình
ƒ Ràng buộc toàn vẹn – RBTV (Integrity Constraint)
• Các điều kiện mà mọi trạng thái quan hệ phải tuân theo.
• Xuất phát từ thế giới thu nhỏ mà CSDL biểu diễn.
ƒ 3 loại chính
• Ràng buộc dựa trên bản chất của mô hình.
• Ràng buộc dựa trên lược đồ.
• Ràng buộc dựa trên ứng dụng.
ƒ Nội dung chi tiết
• Ràng buộc về khóa.
• CSDL và lược đồ CSDL quan hệ.
• RBTV thực thể.
• RBTV tham chiếu.
Mô hình dữ liệu quan hệ 7
Ràng buộc về khóa (1)
ƒ Siêu khóa (Super Key)
• Tập thuộc tính SK ≠ ∅ của R gọi là siêu khóa của R nếu
∀ r, ∀ t1, t2 ∈ r, t1 ≠ t2 ⇒ t1[SK] ≠ t2[SK]
• Siêu khóa xác định ràng buộc về tính duy nhất của các bộ trong quan hệ.
• Mọi lược đồ có ít nhất một siêu khóa.
ƒ Khóa (Key)
• Tập thuộc tính K ≠ ∅ của R gọi là khóa của R nếu thỏa 2 điều kiện sau
- K là siêu khóa của R.
- ∀ K’ ⊂ K, K’ ≠ K, K’ không là siêu khóa của R.
ƒ Nhận xét
• Khóa là siêu khóa nhỏ nhất.
• Một lược đồ quan hệ có thể có nhiều khóa
- Các khóa được gọi là khóa chỉ định (Candidate Key).
- Chọn 1 trong số đó làm khóa chính (Primary Key).
• Các thuộc tính khóa được gạch dưới.
• Khóa được xây dựng dựa trên ý nghĩa của một số thuộc tính.
Ràng buộc về khóa (2)
Nam31/12/1973CuongLe Quang3
Nam1/1/1970BinhNguyen Van2
Nam15/4/1971AnTran Van1
4
MaNV
4/10/1972
Ngaysinh
Yen
Ten
NuNguyen Thi
GioitinhHoNHANVIEN
Siêu khóa mặc định
t1
t2
t1[MaNV,Ho,Ten,Ngaysinh,Gioitinh] = 
t2[MaNV,Ho,Ten,Ngaysinh,Gioitinh] = 
≠
Không là siêu khóa
t1[ ioitinh] = 
t2[Gioitinh] = 
=
Khóa
Mô hình dữ liệu quan hệ 8
CSDL và lược đồ CSDL quan hệ (1)
ƒ Lược đồ CSDL quan hệ
• Tập hợp các lược đồ quan hệ S = {R1, R2, ..., Rm}.
• Tập hợp các RBTV IC.
ƒ Trạng thái CSDL quan hệ của S
• Tập hợp các trạng thái quan hệ DB = {r1, r2, ..., rm}, với ri
là trạng thái của Ri.
- Các ri phải thỏa các RBTV trong IC.
• Trạng thái là hợp lệ nếu nó thỏa mọi RBTV.
ƒ CSDL quan hệ
• Lược đồ CSDL quan hệ S + Trạng thái CSDL của S.
CSDL và lược đồ CSDL quan hệ (2)
MaGSat MaPBLuongDiachiGioitinhNgaysinhMaNVTenHo
NHANVIEN
NgayNhChucTrPhongMaPBTenPB
PHONGBAN
TrusoMaPB
TRUSO_PHONG
SoGioMaDAMaNV
THAMGIA
PhongQLDiadiemMaDATenDA
DUAN
NgaySinh QuanheGioitinhTenMaNV
THANNHAN
Mô hình dữ liệu quan hệ 9
RBTV thực thể và tham chiếu (1)
ƒ RBTV thực thể
• Các giá trị của khóa chính không thể là giá trị rỗng.
• Xác định trên từng quan hệ.
ƒ RBTV tham chiếu
• Một bộ trong quan hệ R tham chiếu đến một bộ trong quan hệ S thì
bộ trong S phải tồn tại trước.
• Xác định giữa 2 quan hệ.
NHANVIEN
1
MaNV
Tran Van
Ten
An
Ho
15/4/1971
Ngaysinh
Nam
Gioitinh
5
MaPB
PHONGBAN
5
MaPB
Nghiên cứu
TenPB
RBTV thực thể và tham chiếu (2)
ƒ Khóa ngoại (Foreign Key)
• Tập thuộc tính FK ≠ ∅ của quan hệ R1 tham chiếu đến quan hệ R2
gọi là khóa ngoại của R1 nếu thỏa 2 điều kiện sau
- Các thuộc tính của FK có cùng miền giá trị với các thuộc tính của khóa 
chính PK của R2.
- ∀ t1 ∈ r1(R1), ∃ t2 ∈ r2(R2) và t1[FK] = t2[PK].
ƒ Nhận xét
• Có nhiều RBTV tham chiếu trong một CSDL.
• Trong một lược đồ, một thuộc tính vừa có thể tham gia vào khóa 
chính, vừa có thể tham gia vào khóa ngoại.
• Khóa ngoại có thể tham chiếu đến khóa chính trong cùng một lược 
đồ.
• Có thể có nhiều khóa ngoại tham chiếu đến cùng một khóa chính.
• Trong lược đồ CSDL, RBTV tham chiếu được biểu diễn bằng cung 
đi từ khóa ngoại đến khóa chính được tham chiếu.
Mô hình dữ liệu quan hệ 10
RBTV thực thể và tham chiếu (3)
MaGSat MaPBLuongDiachiGioitinhNgaysinhMaNVTenHo
NHANVIEN
NgayNhChucTrPhongMaPBTenPB
PHONGBAN
TrusoMaPB
TRUSO_PHONG
SoGioMaDAMaNV
THAMGIA
PhongQLDiadiemMaDATenDA
DUAN
NgaySinh QuanheGioitinhTenMaNV
THANNHAN
Chuyển từ ER, EER sang Quan hệ
ƒ Mục đích
• Thiết kế lược đồ quan hệ dựa trên thiết kế mức khái niệm.
ƒ ER → Quan hệ
1. Chuyển đổi kiểu thực thể mạnh.
2. Chuyển đổi kiểu thực thể yếu.
3. Chuyển đổi kiểu liên kết 1:1.
4. Chuyển đổi kiểu liên kết 1:N.
5. Chuyển đổi kiểu liên kết M:N.
6. Chuyển đổi thuộc tính đa trị.
7. Chuyển đổi kiểu liên kết bậc cao.
ƒ EER → Quan hệ
8. Chuyển đổi CBH, TQH.
Mô hình dữ liệu quan hệ 11
Chuyển đổi kiểu thực thể mạnh
NHANVIEN
Hoten
Ho
TenNgaysinh
Maso
Luong
Gioitinh
LuongGioitinhNgaysinhTenHoMaNV
NHANVIEN
Chuyển đổi kiểu thực thể yếu (1)
NHANVIEN
Maso
PHU
THUOC THANNHAN
Ngaysinh
Quanhe
Gioitinh
1 N
Ten
Luong...HoMaNV
NHANVIEN
NgaySinh QuanheGioitinhTenMaNV
THANNHAN
Mô hình dữ liệu quan hệ 12
Chuyển đổi kiểu thực thể yếu (2)
NHACUNGCAP DUAN
VATTU
CC CUNGCAP CD
CV
Soluong
1
1
1N
N
N
MaNCC MaDA
MaVT
...MaNCC
NHACUNGCAP
...MaVT
VATTU
...MaDA
DUAN
SoluongMaVTMaDAMaNCC
CUNGCAP
Chuyển đổi kiểu liên kết 1:1 (1)
Luong...HoMaNV
NHANVIEN
NHANVIEN PHONGBANQUANLY
1 1
MaPB TenPBNgayNhChuc
NgayNhChucTrPhongTenPBMaPB
PHONGBAN
Mô hình dữ liệu quan hệ 13
Chuyển đổi kiểu liên kết 1:1 (2)
QlyPB NgayNhChucLuong...HoMaNV
NHANVIEN
TenPBMaPB
PHONGBAN
PHONGBAN
5
MaPB
Nghiên cứu
TenPB
nullnullLe Quang3
nullnullNguyen Van2
1/3/19985Tran Van1
4
MaNV
null
QlyPB...
nullNguyen Thi
NgNhChucHoNHANVIEN
Chuyển đổi kiểu liên kết 1:1 (3)
CLB SVDSOHUU
1 1
Ten ThPhoTen NamThLap
Socho
ThPho SochoTenSVDNamThLapTenCLB
CLB
Mô hình dữ liệu quan hệ 14
Chuyển đổi kiểu liên kết 1:1 (4)
SINHVIEN DOANTHUCHIEN
1 1
TenDA ThGianMaSV
...MaSV
SINHVIEN
ThGianTenDA
DOAN
THUCHIEN
TenDAMaSV
Chuyển đổi kiểu liên kết 1:N
MaPBLuong...HoMaNV
NHANVIEN
NgayNhChucTrPhongTenPBMaPB
PHONGBAN
NHANVIEN PHONGBANLAMVIEC
N 1
Mô hình dữ liệu quan hệ 15
Chuyển đổi kiểu liên kết M:N
NHANVIEN DUANTHAMGIA
M N
...HoMaNV
NHANVIEN
...MaDATenDA
DUAN
SoGioMaDAMaNV
THAMGIA
SoGio
Chuyển đổi thuộc tính đa trị
PHONGBAN
TenPB
MaPB Truso
...TenPBMaPB
PHONGBAN
TrusoMaPB
TRUSO_PHONG
Mô hình dữ liệu quan hệ 16
Chuyển đổi kiểu liên kết bậc cao
NHACUNGCAPTen DUAN Ten
VATTU
Maso
CUNGCAP
Soluong
...Ten
NHACUNGCAP
...Ten
DUAN
...Maso
VATTU
SoluongMaVTTenDATenNCC
CUNGCAP
Chuyển đổi CBH, TQH
BANHANG Dinhmuc
KYTHUAT Capbac
KYSUPHANMEM Chuyenmon
dNHANVIEN
Hoten
Ho Ten
Ngaysinh
Maso
...HoMaNV
NHANVIEN
ChuyenmonMaNV
KYSUPHANMEM
CapbacMaNV
KYTHUAT
DinhmucMaNV
BANHANG

File đính kèm:

  • pdfBài giảng Cơ sở dữ liệu - Chương 3 Mô hình dữ liệu quan hệ.pdf