Bài giảng Cơ sở dữ liệu (Database) - Chương 2: Các mô hình dữ liệu (P1) - Vũ Hải

Data modelling – Mô hình hóa dữ liệu • Mục đích: Biểu diễn dữ liệu thuận tiện cho việc thiết kế, lưu trữ, xử lý. – Mô tả dữ liệu sẽ lưu trữ trong cơ sở dữ liệu – Mô tả mối quan hệ giữa các dữ liệu – Mô tả ràng buộc đối với dữ liệu • Sử dụng 1 ngôn ngữ đặc biệt (tập các ký hiệu thích hợp) để biểu thị dữ liệu. • Mô hình dữ liệu: – Một sự hình thức hóa toán học với một tập ký hiệu để mô tả dữ liệu – và Một tập các phép toán được sử dụng để thao tác các dữ liệu • Các mô hình CSDL phổ biến: – Mô hình mạng (network model) – Mô hình thực thể-liên kết (entity-relationship model)  Những năm 60, thế kỷ 20 – Mô hình quan hệ (relational model)  Những năm 70, – Mô hình hướng đối tượng (object model)  Những năm 80

pdf26 trang | Chia sẻ: candy98 | Lượt xem: 934 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Cơ sở dữ liệu (Database) - Chương 2: Các mô hình dữ liệu (P1) - Vũ Hải, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Cơ sở dữ liệu – Database EE4253 Vũ Hải 2016 International Research Institute MICA, Hanoi University of Science and Technology Ôn bài • Đặc điểm quản lý dữ liệu truyền thống? • Khái niệm Cơ sở dữ liệu? • Khái niệm Hệ quản trị CSDL? • Các mức trừu tượng hóa dữ liệu? • Các mức quan hệ trong mô hình CSDL Quan hệ ? 2 3Quy trình phát triển ứng dụng CSDL Source: Data Modeling Using Entity-Relationship Model, NGUYEN Kim Anh Data modelling – Mô hình hóa dữ liệu • Mục đích: Biểu diễn dữ liệu thuận tiện cho việc thiết kế, lưu trữ, xử lý. – Mô tả dữ liệu sẽ lưu trữ trong cơ sở dữ liệu – Mô tả mối quan hệ giữa các dữ liệu – Mô tả ràng buộc đối với dữ liệu • Sử dụng 1 ngôn ngữ đặc biệt (tập các ký hiệu thích hợp) để biểu thị dữ liệu. 4 Chương 2: Các mô hình dữ liệu • Mô hình dữ liệu: – Một sự hình thức hóa toán học với một tập ký hiệu để mô tả dữ liệu – và Một tập các phép toán được sử dụng để thao tác các dữ liệu • Các mô hình CSDL phổ biến: – Mô hình mạng (network model) – Mô hình thực thể-liên kết (entity-relationship model)  Những năm 60, thế kỷ 20 – Mô hình quan hệ (relational model)  Những năm 70, – Mô hình hướng đối tượng (object model)  Những năm 80 5 Chương 2: Các mô hình dữ liệu 2.1. Mô hình thực thể liên kết • Thế giới thực = tập các đối tượng cơ sở (thực thể) + tập các liên kết giữa chúng. • Sơ đồ thực thể liên kết: 6 Thực thể Thuộc tính Liên kết 2.1.1. Thực thể • Thực thể (Entity): “Là một đối tượng cụ thể hay trừu tượng trong thế giới thực mà nó tồn tại và có thể phân biệt với các đối tượng khác” • Tập thực thể: nhóm các thực thể cùng loại real customers customer surrogates 7 • Thuộc tính (Attribute): là các tính chất đặc trưng của thực thể – Mỗi thuộc tính có một giá trị, thuộc 1 miền giá trị • Thuộc tính khóa (Key) là thuộc tính mà giá trị của nó là duy nhất cho mỗi thực thể. – Thuộc tính khóa có thể là 1 thuộc tính, hoặc nhiều thuộc tính. – Dùng để phân biệt hai thực thể cùng loại 8 2.1.2. Thuộc tính Ví dụ • Xác định thực thể, thuộc tính, khóa 9 Họ tên Mã số NV Giới tính Ngày sinhTuổi Nhân viên Họ tênMã số NV Giới tính Ngày sinhTuổi Nhân viên Ví dụ • Xác định thực thể, thuộc tính, khóa 10 Họ tên Tên truy nhập Địa chỉ Mật khẩuEmail Quốc gia Họ tênUsername Địa chỉ Quốc giaPassword Tài khoản Bài tập Quản lý điểm của Sinh Viên - Thông tin về Sinh Viên: Họ và tên (HOTENSV), Ngày Sinh (NGAYSINH), Giới tính (NU), Nơi sinh (NOISINH), Hộ khẩu Thường trú (HK), Mã số SV (MASV) - Thông tin về Lớp Học: Mã số lớp (MALOP), Tên lớp (TENLOP), Thuộc về khoa/Viện (KHOA) - Thông tin về tên Môn Học: Mã số môn học (MAMH), tên môn học (TENMH), Số tín chỉ (TC), - Thông tin về Giảng Viên: Mã Giảng Viên (MAGV), Học vị (HOCVI), Chuyên ngành (CHUYENNGANH), Thuộc Khoa/Viện (KHOA), - Thông tin về Điểm Thi: Mã Sinh Viên (MASV), Mã môn thi (MAMH), Lần thi (LANTHI), Điểm thi (ĐIEMTHI) Xác định các loại thực thể cần quản lý ? 11 2.1.2. Thuộc tính • Các kiểu thuộc tính khác: 12 Bài tập 13 Xác định các kiểu thuộc tính trong loại thực thể sau: Xác định các kiểu thuộc tính khóa có thể có trong loại thực thể trên ? SINH VIÊN Họ và tên (HOTENSV) Ngày Sinh (NGAYSINH) Giới tính (NU) Nơi sinh (NOISINH) Hộ khẩu Thường trú (HK) Mã số SV (MASV) Môn học đăng ký (TENMH) Số CMT (CMTID) 2.1.3. Liên kết 14 • Liên kết (Relationship): chỉ ra mối quan hệ giữa các thực thể với nhau. Liên kết 1-1 Người Giấy CMTSở hữu 1 1 15 • Là liên kết mà mỗi thực thể loại A chỉ có thể có quan hệ với không quá 1 thực thể loại B, và ngược lại • 1-1 gọi là lực lượng của liên kết Liên kết 1-1 16 Mối liên kết giữa hai loại thực thể Sinh Viên và Lớp học Tên liên kết : thuộc, gồm, chứa Lực lượng liên kết: (min,max) : Số lượng tối thiểu và tối đa của thực thể khi tham gia vào mối liên kết (1,1): Mỗi sinh viên thuộc một và chỉ một lớp (1,n): Mỗi lớp có thể có n sinh viên SINH VIÊN Thuộc LỚP (1,1) (1,n) Liên kết 1-N Nhạc sĩ Bài hátSáng tác 1 N 17 Mỗi thực thể loại A có thể có quan hệ với nhiều thực thể loại B, nhưng mỗi thực thể loại B chỉ có thể có quan hệ với nhiều nhất 1 thực thể loại A Liên hết N-M (nhiều-nhiều) Bài hát Ngôn ngữDịch N M 18 Mỗi thực thể loại A có thể có quan hệ với nhiều thực thể loại B, và ngược lại Liên kết toàn thể, bộ phận 19 • Toàn thể: Mọi thực thể ở phía liên kết toàn thể phải có quan hệ với ít nhất 1 thực thể ở phía kia. • Bộ phận: Thực thể ở phía liên kết bộ phận có thể không tham gia vào liên kết. Liên kết lặp/đệ quy Chuyến bayNối chuyến Khởi hành Đích đến in out Số hiệu 20 Là liên kết mà các thực thể cùng kiểu có quan hệ với nhau Liên kết «là-một» / «is-a» Nhân viênCầu thủ Tên Mã NVThể lực Tốc độ Lương Là-một • A “là-một” B nếu B là sự tổng quát hóa của A hay A là một kiểu đặc biệt của B. o A sẽ kế thừa mọi thuộc tính của B o A có thêm các thuộc tính mới mà B không có 21 Thuộc tính của liên kết 22 Liên kết cũng có thể có thuộc tính, tương tự như của thực thể • Với kiểu liên kết 1-1, 1-N, thuộc tính của liên kết có thể chuyển về thuộc tính của thực thể • Với kiểu liên kết N-N, giữ làm thuộc tính của liên kết Thực thể yếu (Weak entity) • Là thực thể không có thuộc tính khoá • được xác định thông qua việc liên kết với một thực thể khác. • VD: mỗi bài hát trong một đĩa nhạc có số thứ tự khác nhau, nhưng các bài hát trong các đĩa nhạc khác nhau có thể có cùng số thứ tự – Bài hát trong trường hợp này là thực thể yếu – Muốn xác định bài hát, cần xác định đĩa nhạc cụ thể 23 2.1.4. Đặc điểm của mô hình ER • Mô hình ER không phải là duy nhất cho mỗi bài toán, mà mang tính chủ quan của người thiết kế • Các lựa chọn thay thế nhau được: – Thực thể  thuộc tính – Thực thể  liên kết – Liên kết hai ngôi  ba hay nhiều ngôi – 24 Thực thể hay thuộc tính ? 25 2.1.5. Bài tập Biểu diễn các tập thực thể (với các thuộc tính và liên kết kèm theo) sau bằng mô hình ER: 1.Giáo viên, sinh viên, khoá học, môn học, lớp học 2.Công ty, nhân viên, dự án, chi nhánh 3.Thư viện, người đọc, sách 4.Cửa hàng, khách hàng, hàng, nhà phân phối 26