1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Cơ sở dữ liệu: Bài 3 - Đại học CNTT

27 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Bài giảng Cơ sở dữ liệu - Bài 3 trình bày về mô hình thực thể mối kết hợp. Các nội dung chính được trình bày trong chương này gồm có: Loại thực thể, thực thể; thuộc tính của loại thực thể; khoá của loại thực thể; loại mối kết hợp, mối kết hợp; thuộc tính của loại mối kết hợp; bản số; mô hình ER mở rộng

3 Mơ hình thực thể mối kết hợp 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 Giới thiệu Loại thực thể, thực thể Thuộc tính loại thực thể Khố loại thực thể Loại mối kết hợp, mối kết hợp Thuộc tính loại mối kết hợp Bản số Mơ hình ER mở rộng Khoa HTTT-Đại học CNTT 3.1 Giới thiệu Š Mơ hình thực thể mối kết hợp (EntityRelationship Model viết tắc ER) CHEN giới thiệu năm 1976 Š Mơ hình ER sử dụng nhiều thiết kế liệu mức quan niệm Khoa HTTT-Đại học CNTT 3.2 Loại thực thể Š Định nghĩa: loại thực thể (Entity Type) loại đối tượng hay vật giới thực tồn cụ thể cần quản lý Š Ví dụ : HOCVIEN, LOP, MONHOC, … Š Ký hiệu: HOCVIEN LOP Khoa HTTT-Đại học CNTT 3.2 Thực thể (Entity) Š Định nghĩa: thực thể thể loại thực thể Š Ví dụ: Loại thực thể HOCVIEN có thực thể: „ „ (‘HV001’, ‘Nguyen Minh’, ‘1/2/1987’,’Nam’) (‘HV002’, ‘Tran Nam’, ‘13/2/1987’, ‘Nam’) Khoa HTTT-Đại học CNTT 3.3 Thuộc tính loại thực thể (Entity Attribute) Š Định nghĩa: thuộc tính tính chất đặc trưng loại thực thể Š Ví dụ: Loại thực thể HOCVIEN có thuộc tính: Mã học viên, họ tên, giới tính, ngày sinh, nơi sinh Mahv Š Ký hiệu: Hoten HOCVIEN Gioitinh Ngaysinh Noisinh Khoa HTTT-Đại học CNTT 3.3 Các loại thuộc tính (1) Š Đơn trị (Simple): thực thể có giá trị ứng với thuộc tính Ví dụ: Mahv,Hoten Š Đa hợp (Composite): thuộc tính tạo thành từ nhiều thành phần Ví dụ: DCHI(SONHA,DUONG,PHUONG,QUAN) hay thuộc tính HOTEN(HO,TENLOT,TEN) Š Đa trị (Multi-valued): thuộc tính có nhiều giá trị thực thể Ví dụ: BANGCAP ký hiệu {BANGCAP} Khoa HTTT-Đại học CNTT 3.3 Các loại thuộc tính (2) Š Tóm lại, thuộc tính đa hợp đa trị lồng tùy ý „ Ví dụ: thuộc tính BANGCAP HOCVIEN thuộc tính đa hợp ký hiệu {BANGCAP(TRUONGCAP,NAM,KETQUA, CHUYENNGANH)} Khoa HTTT-Đại học CNTT 3.4 Khoá loại thực thể (entity type key) Š Khóa loại thực thể thuộc tính nhận diện thực thể Š Căn vào giá trị khóa xác định thực thể Š Ví dụ: „ Mỗi học viên có mã số => Khoá loại thực thể HOCVIEN Mã học viên Khoa HTTT-Đại học CNTT 3.5 Loại mối kết hợp (1) (relationship type) Š Định nghĩa: loại mối kết hợp liên kết hai hay nhiều loại thực thể Š Ví dụ: hai loại thực thể HOCVIEN LOP có loại mối kết hợp THUOC Š Ký hiệu: hình oval hình thoi HOCVIEN LOP Thuoc Khoa HTTT-Đại học CNTT 3.5 Loại mối kết hợp (2) Š Giữa hai loại thực thể tồn nhiều loại mối kết hợp Š Ví dụ Thuộc HOCVIEN LOP Là trưởng lớp Khoa HTTT-Đại học CNTT 10 3.5 Số loại mối kết hợp (relationship degree) Š Số loại mối kết hợp số loại thực thể tham gia vào loại mối kết hợp Š Ví dụ 1: Loại mối kết hợp Thuộc kết hợp loại thực thể HOCVIEN LOP nên có số ngơi Š Ví dụ 2: Loại mối kết hợp Thi kết hợp loại thực thể LANTHI,HOCVIEN, MONHOC nên có số Khoa HTTT-Đại học CNTT 11 3.5 Số loại mối kết hợp HOCVIEN MONHOC LOP Thuoc Thi LANTHI Khoa HTTT-Đại học CNTT 12 3.6 Thuộc tính loại mối kết hợp (relationship type attribute) Š Thuộc tính loại mối kết hợp bao gồm thuộc tính khố loại thực thể tham gia vào loại mối kết hợp Ngồi cịn có thêm thuộc tính bổ sung khác Š Ví dụ: Loại mối kết hợp Thi ba loại thực thể HOCVIEN, MONHOC LANTHI có thuộc tính Mahv,Mamh,Lanthi, ngồi cịn có thuộc tính riêng Diem, Ngaythi Khoa HTTT-Đại học CNTT GIAOVIEN HOCVIEN 13 MONHOC LOP Thuoc Day Nam LOP Khoa HTTT-Đại học CNTT Hocky 14 3.7 Bản số (relationship cardinality) Š Loại mối kết hợp thể liên kết thực thể, liên kết gọi nhánh Š Định nghĩa: số nhánh số lượng tối thiểu số lượng tối đa thực thể thuộc nhánh tham gia vào loại mối kết hợp Š Ký hiệu: (số lượng tối thiểu, số lượng tối đa) Š Ví dụ: Loại thực thể HOCVIEN LOP có loại mối kết hợp Thuoc Khoa HTTT-Đại học CNTT (1,1) Thuộc HOCVIEN 15 (1,n) LOP Khoa HTTT-Đại học CNTT 16 (1,1) Thuộc HOCVIEN (1,n) LOP (1,1) (0,1) Là trưởng lớp Khoa HTTT-Đại học CNTT 17 3.7 Mơ hình ER mở rộng 3.7.1 3.7.2 3.7.3 3.7.4 Chuyên biệt hoá / Tổng quát hóa Mối kết hợp đệ quy Loại thực thể yếu Mối kết hợp mở rộng Khoa HTTT-Đại học CNTT 18 3.7.1 Chuyên biệt hóa (tổng quát hóa) ConNguoi GiaoVien SoCMND HoTen HocVien HocVi NgayVL NgayNH Khóa Khoa HTTT-Đại học CNTT 19 3.7.2 Mối kết hợp đệ quy Š Định nghĩa: loại mối kết hợp tạo thành từ loại thực thể (hay loại thực thể có loại mối kết hợp với nó) Š Ví dụ: Mỗi nhân viên có người quản lý trực tiếp người quản lý nhân viên (0,1) NHANVIEN QuanLy (0,n) Khoa HTTT-Đại học CNTT 20 10 Bài 3: Mơ hình dữ liệu quan hệ (Relational Data Model) Khoa HTTT-Đại học CNTT 25 Nội dung Giới thiệu Các khái niệm „ „ „ „ „ „ „ „ „ 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 Thuộc tính Quan hệ Bộ giá trị Thể quan hệ Tân từ Phép chiếu Khóa Lược đồ quan hệ lược đồ CSDL Hiện thực mơ hình ER mơ hình liệu quan hệ Khoa HTTT-Đại học CNTT 26 13 Giới thiệu Š Mơ hình Dữ liệu Quan hệ (Relational Data Model) dựa khái niệm quan hệ Š Quan hệ khái niệm toán học dựa tảng hình thức lý thuyết tập hợp Š Mơ hình TS E F Codd đưa năm 1970 Khoa HTTT-Đại học CNTT 27 2.1 Thuộc tính (attribute) Š Thuộc tính: „ „ „ Tên gọi: dãy ký tự (gợi nhớ) Kiểu liệu: Số, Chuỗi, Thời gian, Luận lý, OLE Miền giá trị: tập giá trị mà thuộc tính nhận Ký hiệu miền giá trị thuộc tính A Dom(A) Š Ví dụ:GIOITINH kiểu liệu Chuỗi,miền giá trị Dom(GIOITINH)=(‘Nam’,’Nu’) ƒ Tại thời điểm, thuộc tính khơng có giá trị chưa xác định giá trị => giá trị Null Khoa HTTT-Đại học CNTT 28 14 2.2 Quan hệ (relation) Š Định nghĩa: quan hệ tập hữu hạn thuộc tính „ „ „ Ký hiệu: Q ( A1 , A , , A n ) Trong Q tên quan hệ, Q = {A , A , , A } tập thuộc tính quan hệ Q Ví dụ: + n HOCVIEN (Mahv, Hoten, Ngsinh, Gioitinh, Noisinh, Malop) LOP (Malop, Tenlop, Siso, Trglop, Khoa) Khoa HTTT-Đại học CNTT 29 2.3 Bộ (tuple) Š Định nghĩa: Bộ thông tin đối tượng thuộc quan hệ, gọi mẫu tin (record), dòng Š Quan hệ bảng (table) với cột thuộc tính dịng gọi Š Một quan hệ Q ( A1 , A , , A n ) q = ( a1 , a , , a n ) với ∀ a i ∈ Dom ( Ai ) Š Ví dụ: HOCVIEN(Mahv, Hoten, Ngsinh, Noisinh) có q=(1003,Nguyen Van Lam, 1/1/1987,Dong Nai) nghĩa học viên có mã số 1003, họ tên Nguyen Van Lam, sinh ngày 1/1/1987 Dong Nai Khoa HTTT-Đại học CNTT 30 15 2.4 Thể quan hệ (instance) Š Định nghĩa: thể quan hệ tập hợp giá trị quan hệ thời điểm Š Ký hiệu: thể quan hệ Q TQ Š Ví dụ: THOCVIEN thể quan hệ HOCVIEN thời điểm gồm có sau: HOCVIEN Mahv HoTen Gioitinh Noisinh Malop K1103 Ha Duy Lap Nam Nghe An K11 K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh K11 Khoa HTTT-Đại học CNTT 31 2.5 Tân từ Š Định nghĩa: tân từ quy tắc dùng để mô tả quan hệ Š Ký hiệu: ||Q|| Š Ví dụ: THI (Mahv, Mamh, Lanthi, Diem) ||THI||: học viên phép thi môn học nhiều lần, lần thi lưu trữ học viên thi mơn gì? lần thi thứ mấy? điểm bao nhiêu? Khoa HTTT-Đại học CNTT 32 16 2.6 Phép chiếu (1) Š Phép chiếu : Dùng để trích giá trị số thuộc tính danh sách thuộc tính quan hệ Š Ký hiệu: phép chiếu quan hệ R lên tập thuộc tính X R[X] R.X Š Ví dụ: HOCVIEN Mahv „ „ „ HoTen Gioitinh Nam hv1= K1103 Ha Duy Lap hv2 = K1102 Tran Ngoc Han Nu hv3 = K1104 Tran Ngoc Linh Nu Noisinh Nghe An Malop K11 Kien Giang K11 Tay Ninh K11 Khoa HTTT-Đại học CNTT 33 2.6 Phép chiếu (2) Š Phép chiếu quan hệ HOCVIEN lên thuộc tính NoiSinh quan hệ HOCVIEN: HOCVIEN[Noisinh] = {‘Nghe An’,’Kien Giang’,’Tay Ninh’} HOCVIEN Mahv HoTen K1103 Ha Duy Lap Gioitinh Nam Noisinh Nghe An Malop K11 K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh Khoa HTTT-Đại học CNTT K11 34 17 2.6 Phép chiếu (3) Š Phép chiếu lên tập thuộc tính X={Hoten,Noisinh} quan hệ HOCVIEN HOCVIEN[Hoten, Noisinh] = {(‘Ha Duy Lap’, ‘Nghe An’),(‘Tran Ngoc Han’, ‘Kien Giang’),(‘Tran Ngoc Linh’,’Tay Ninh’)} HOCVIEN Mahv HoTen K1103 Ha Duy Lap Gioitinh Nam Noisinh Nghe An Malop K11 K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh Khoa HTTT-Đại học CNTT K11 35 2.6 Phép chiếu (4) Š Chiếu lên tập thuộc tính: dùng để trích chọn giá trị cụ thể giá trị theo thuộc tính danh sách thuộc tính quan hệ Š Ký hiệu: chiếu giá trị t lên tập thuộc tính X quan hệ R tR[X] t[X] Nếu X có thuộc tính tR.X Š Ví dụ: cho quan hệ HOCVIEN với tập thuộc tính HOCVIEN+={Mahv,Hoten,Gioitinh,Noisinh,Malop}, chứa giá trị hv1,hv2 hv3 Khoa HTTT-Đại học CNTT 36 18 2.6 Phép chiếu (5) Š Phép chiếu lên thuộc tính „ hv1[Hoten] = (‘Ha Duy Lap’) HOCVIEN Mahv HoTen Gioitinh Nam hv1= K1103 Ha Duy Lap hv2= K1102 Tran Ngoc Han Nu hv3= K1104 Tran Ngoc Linh Nu Noisinh Nghe An Malop K11 Kien Giang K11 Tay Ninh K11 Khoa HTTT-Đại học CNTT 37 2.6 Phép chiếu (6) Š Phép chiếu lên tập thuộc tính „ „ tập thuộc tính X={Hoten, Gioitinh} hv2[X] = (‘Tran Ngoc Han’,’Nu’) HOCVIEN Mahv „ „ „ hv1 = hv2 = hv3 = HoTen K1103 Ha Duy Lap Gioitinh Nam Noisinh Nghe An Malop K11 K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh Khoa HTTT-Đại học CNTT K11 38 19 2.7 Khóa 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 Siêu khóa (super key) Khóa (key) Khóa (primary key) Khóa tương đương Khóa ngoại (foreign key) Khoa HTTT-Đại học CNTT 39 2.7.1 Siêu khóa (super key) (1) Š Siêu khóa : tập thuộc tính Q+ mà giá trị chúng phân biệt khác thể TQ Nghĩa là: ∀ t1, t2 ∈ TQ, t1[K] ≠ t2[K] ⇔ K siêu khóa Q Š Một quan hệ có siêu khóa (Q+) có nhiều siêu khóa Khoa HTTT-Đại học CNTT 40 20 2.7.1 Siêu khóa (super key) (2) Š Ví dụ: siêu khóa quan hệ HOCVIEN là: {Mahv};{Mahv,Hoten};{Hoten};{Noisinh,Hoten} … HOCVIEN Mahv HoTen Gioitinh Noisinh Malop K1103 Ha Duy Lap Nam Nghe An K11 K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh K11 K1105 Tran Minh Long Nam TpHCM K11 K1106 Le Nhat Minh TpHCM K11 Nam Khoa HTTT-Đại học CNTT 41 2.7.2 Khóa (key) (1) Khóa : K khóa quan hệ R, thỏa mãn điều kiện: Š K siêu khóa Š K siêu khóa “nhỏ nhất” (chứa thuộc tính khác rỗng) nghĩa ¬∃K1 ⊂ K, K1 ≠ ∅ cho K1 siêu khóa Š Thuộc tính tham gia vào khóa gọi thuộc tính khóa, ngược lại thuộc tính khơng khóa Khoa HTTT-Đại học CNTT 42 21 2.7.2 Khóa (key) (2) Š Ví dụ: siêu khóa quan hệ HOCVIEN là: {Mahv};{Mahv,Hoten};{Hoten};{Hoten,Gioitinh}; {Noisinh,Hoten};{Mahv,Hoten,Gioitinh,Noisinh}… => khóa quan hệ HOCVIEN {Mahv}; {Hoten} Š Ví dụ: khóa quan hệ GIANGDAY (Malop, Mamh, Magv, HocKy, Nam) K={Malop,Mamh} Thuộc tính khóa là: Mamh,Malop Thuộc tính khơng khóa Magv, HocKy, Nam Khoa HTTT-Đại học CNTT 43 2.7.3 Khóa (primary key) Š Khi cài đặt DBMS cụ thể, quan hệ có nhiều khóa, ta chọn gọi khóa Š Ký hiệu: thuộc tính nằm khóa liệt kê quan hệ phải gạch Š Ví dụ: „ „ HOCVIEN (Mahv,Hoten,Gioitinh,Noisinh,Malop) GIANGDAY(Mamh,Malop,Magv,Hocky,Nam) Khoa HTTT-Đại học CNTT 44 22 2.7.4 Khóa tương đương Š Các khóa cịn lại (khơng chọn làm khóa chính) gọi khóa tương đương Š Ví dụ: hai khóa {Mahv},{Hoten} khóa {Mahv}, khóa tương đương {Hoten} Khoa HTTT-Đại học CNTT 45 2.7.5 Khóa ngoại (1) Š Cho R(U), S(V) K1⊆U khóa R,K2⊆V Š Ta nói K2 khóa ngoại S tham chiếu đến khóa K1 R thỏa điều kiện sau: „ „ „ K1 K2 có số lượng thuộc tính ngữ nghĩa thuộc tính K1 K2 giống Giữa R S tồn mối quan hệ 1-n K1 K2, ∀s ∈ S, !∃r ∈ R cho r.K1=s.K2 Khoa HTTT-Đại học CNTT 46 23 2.7.5 Khóa ngoại (2) Š Ví dụ, cho quan hệ LOP (Malop,Tenlop,Siso,Khoahoc) HOCVIEN (Mahv,Hoten,Gioitinh,Noisinh,Malop) Š Thuộc tính Malop quan hệ LOP khóa quan hệ LOP Thuộc tính Malop quan hệ HOCVIEN khóa ngoại, tham chiếu đến Malop quan hệ LOP Khoa HTTT-Đại học CNTT 47 2.7.5 Khóa ngoại (3) HOCVIEN Mahv HoTen K1103 Ha Duy Lap Gioitinh Nam Nghe An Noisinh K11 Malop K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh K11 K1105 Tran Minh Long Nam TpHCM K11 K1106 Le Nhat Minh Nam TpHCM K11 LOP Malop Tenlop Trglop Siso Magvcn K11 Lop khoa K1106 11 GV07 K12 Lop khoa K1205 12 GV09 K13 Lop khoa K1305 12 GV14 Khoa HTTT-Đại học CNTT 48 24 2.8 Lược đồ quan hệ (1) Š Lược đồ quan hệ nhằm mục đích mơ tả cấu trúc quan hệ mối liên hệ thuộc tính quan hệ Š Cấu trúc quan hệ tập thuộc tính hình thành nên quan hệ Š Một lược đồ quan hệ gồm tập thuộc tính quan hệ kèm theo mô tả để xác định ý nghĩa mối liên hệ thuộc tính Khoa HTTT-Đại học CNTT 49 2.8 Lược đồ quan hệ (2) Š Lược đồ quan hệ đặc trưng bởi: „ „ Một tên phân biệt Một tập hợp hữu hạn thuộc tính (A1, …, An) Š Ký hiệu lược đồ quan hệ Q gồm n thuộc tính (A1, A2, An) : „ Q(A1, A2, , An) Khoa HTTT-Đại học CNTT 50 25 2.8 Lược đồ quan hệ (3) Š HOCVIEN(Mahv,Hoten,Gioitinh,Noisinh,Malop) Š Tân từ: học viên có mã học viên để phân biệt với học viên khác Cần lưu trữ họ tên, giới tính, nơi sinh thuộc lớp HOCVIEN Mahv HoTen Gioitinh Noisinh Malop K1103 Ha Duy Lap Nam Nghe An K11 K1102 Tran Ngoc Han Nu Kien Giang K11 K1104 Tran Ngoc Linh Nu Tay Ninh K11 K1105 Tran Minh Long Nam TpHCM K11 K1106 Le Nhat Minh Nam TpHCM K11 Khoa HTTT-Đại học CNTT 51 2.8 Lược đồ CSDL (1) Š Là tập hợp gồm lược đồ quan hệ mối liên hệ chúng hệ thống quản lý Các CSDL Hệ Quản Trị CSDL Các quan hệ Khoa HTTT-Đại học CNTT 52 26 Lược đồ CSDL “Quản lý sinh viên” HOCVIEN (MAHV, HO, TEN, NGSINH, GIOITINH, NOISINH, MALOP) Tân từ: học viên phân biệt với mã học viên, lưu trữ họ tên, ngày sinh, giới tính, nơi sinh, thuộc lớp LOP (MALOP, TENLOP, TRGLOP, SISO, MAGVCN) Tân từ: lớp gồm có mã lớp, tên lớp, học viên làm lớp trưởng lớp, sỉ số lớp giáo viên chủ nhiệm KHOA (MAKHOA, TENKHOA, NGTLAP, TRGKHOA) Tân từ: khoa cần lưu trữ mã khoa, tên khoa, ngày thành lập khoa trưởng khoa (cũng giáo viên thuộc khoa) MONHOC (MAMH, TENMH, TCLT, TCTH, MAKHOA) Tân từ: môn học cần lưu trữ tên mơn học, số tín lý thuyết, số tín thực hành khoa phụ trách DIEUKIEN (MAMH, MAMH_TRUOC) Tân từ: có mơn học học viên phải có kiến thức từ số mơn học trước Khoa HTTT-Đại học CNTT 53 GIAOVIEN(MAGV,HOTEN,HOCVI,HOCHAM,GIOITINH,NGSINH,NGVL, HESO, MUCLUONG, MAKHOA) Tân từ: mã giáo viên để phân biệt giáo viên, cần lưu trữ họ tên, học vị, học hàm, giới tính, ngày sinh, ngày vào làm, hệ số, mức lương thuộc khoa GIANGDAY(MALOP,MAMH,MAGV,HOCKY, NAM,TUNGAY,DENNGAY) Tân từ: học kỳ năm học phân công giảng dạy: lớp học mơn giáo viên phụ trách KETQUATHI (MAHV, MAMH, LANTHI, NGTHI, DIEM, KQUA) Tân từ: lưu trữ kết thi học viên: học viên thi mơn học gì, lần thi thứ mấy, ngày thi ngày nào, điểm thi kết đạt hay không đạt Khoa HTTT-Đại học CNTT 54 27 ... HTTT -Đại học CNTT (1,1) Thuộc HOCVIEN 15 (1,n) LOP Khoa HTTT -Đại học CNTT 16 (1,1) Thuộc HOCVIEN (1,n) LOP (1,1) (0,1) Là trưởng lớp Khoa HTTT -Đại học CNTT 17 3. 7 Mơ hình ER mở rộng 3. 7.1 3. 7.2 3. 7 .3. .. lớp Phân công giảng dạy: giảng viên dạy lớp với mơn học gì, học kỳ, năm học Lưu trữ kết thi: sinh viên thi môn học nào, lần thi thứ mấy, điểm thi Khoa HTTT -Đại học CNTT 24 12 Bài 3: Mơ hình dữ... kết hợp Có với loại thực thể NHANVIEN Khoa HTTT -Đại học CNTT 21 3. 7 .3 Loại thực thể yếu Có (1,n) NHANVIEN Khoa HTTT -Đại học CNTT (1,1) THANNHAN 22 11 3. 7.4 Mối kết hợp mở rộng HOCVIEN LOP MONHOC

Ngày đăng: 20/05/2021, 11:41

Xem thêm:

TỪ KHÓA LIÊN QUAN