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.
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:
- Bài giảng Cơ sở dữ liệu - Chương 3 Mô hình dữ liệu quan hệ.pdf