Tiếp theo Bài giảng Mô hình hóa dữ liệu - Phần 2 được trình bày với mục tiêu nhằm vận dụng được kiểu thực thể mở rộng supertype và subtype đáp ứng bài toán nghiệp vụ phức. Mời các bạn cùng tham khảo!
1 Mơ hình hóa dữ liệu (Data Modeling) LƯỢC ĐỜ ER MỞ RỘNG EXTENDED ENTITY RELATIONSHIP DIAGRAM (EER) Vận dụng được kiểu thực thể mở rộng supertype và subtype đáp ứng bài toán nghiệp vụ phức Cấu trúc phân cấp kiểu thực thể Supertype/subtype Khái quát hóa/ chuyên biệt hóa kiểu thực thể Các kiểu ràng buộc giữa supertype và subtype Case study Hệ thống quản lý sinh viên của trường đại học Cần phát triển CSDL SinhVien Cần phân biệt loại sinh viên : Đã tốt nghiệp (GRADUATE STUDENT) Chưa tốt nghiệp (UNDERGRADUATE STUDENT) Nhân viên với các kiểu trả lương khác Bệnh nhân nội trú và ngoại trú Xe cộ với nhiều loại xe khác … Các thực thể cùng kiểu có thể không cùng thuộc tính Cấu trúc phân cấp (hierarchical structure) Sắp xếp các kiểu thực thể theo cấu trúc phân cấp (hierarchical structure) Kiểu con(subtype) Chứa các thuộc tính riêng của mỗi nhóm thực thê Siêu kiểu (supertype) Kiểu thực thể chung chứa các thuộc tính chung của tất cả kiểu Khái quát hóa/Chuyên biệt hóa Generalization/Specialization Khái quát hóa Qui trình Bottom-up Xác định một kiểu thực thể chung từ một nhóm các kiểu thực thể riêng biệt Chuyên biệt hóa Qui trình Top-down Xác định một hay nhiều kiểu từ một siêu kiểu và tạo quan hệ giữa siêu kiểu và kiểu Ví dụ về tổng quát hóa Ví dụ chun biệt hóa Enhanced ER model 10 Ví dụ Chun biệt hố tồn phần 18 Xét quy tắc nghiệp vụ sau: A patient must either an outpatient or a resident patient (There are no other types of patient in this hospital) Chuyên biệt hố tồn phần 19 Chun biệt hóa riêng phần 20 Chuyên biệt hóa riêng phần: mỗi thể hiện của siêu kiểu không nhất thiết phải là thể hiện của một kiểu Được ký hiệu bằng đường đơn nới từ supertype đến vòng tròn Ví dụ chun biệt hóa riêng phần 21 Siêu kiểu VEHICLE có kiểu CAR và TRUCK Kiểu thực thể MOTORCYCLE là loại xe cộ không được đưa vào mơ hình Ví dụ Chun biệt hóa riêng phần 22 Ràng buộc tính phân ly Disjointness constraint 23 Ràng buộc về tính phân ly để trả lời cho câu hỏi “một thể hiện (instance) của siêu kiểu có đồng thời là thành viên của cả kiểu hay không?” Có hai quy tắc ràng buộc phân ly: Quy tắc phân ly (disjoint rule) Quy tắc trùng lặp (overlap rule) Quy tắc phân ly 24 Phân ly (disjoint): một thể hiện của siêu kiểu là thành viên của một kiểu Quy tắc phân ly được ký hiệu bằng ký tự “d” vòng tròn nối giữa supertype và các subtype Ví dụ: PATIENT có thể hoặc là OUTPATIENT hoặc là RESIDENT PATIENT Ví dụ về Quy tắc phân ly 25 Quy tắc trùng lặp 26 Trùng lặp (overlap): một thể hiện của siêu kiểu có thể đồng thời là thành viên của nhiều một kiểu Được ký hiệu bằng ký hiệu “o” vòng tròn Ví dụ: mợt thể hiện của siêu kiểu PART có thể hoặc là thể hiện của kiểu MANUFACTURED PART hoặc của kiểu PURCHASED PART Ví dụ về quy tắc trùng lặp 27 Thuộc tính phân biệt kiểu Subtype discriminator Là 28 thuộc tính của siêu kiểu mà trị của nó có thể xác định kiểu Ví dụ 1: tḥc tính xác định kiểu phân ly của siêu kiểu EMPLOYEE Employee_Type có giá trị là H(Hourly), S(Salary) và C(Consultant) Ví dụ 2: thuộc tính xác định kiểu trùng lặp của siêu kiểu PART là Part_Type hai thành phần: Manufactured (kiểu Boolean) Purchased (kiểu Boolean) Ví dụ thuộc tính phân biệt kiểu phân ly 29 Ví dụ thuộc tính phân biệt kiểu trùng lặp 30 31 Xác định được supertype và subtype phù hợp với nhu cầu dữ liệu của người dùng Textbook 32 Chapter and Modern DB management– page 90 ... chun biệt hóa riêng phần 21 Siêu kiểu VEHICLE có kiểu CAR và TRUCK Kiểu thực thể MOTORCYCLE là loại xe cợ khơng được đưa vào mơ hình Ví dụ Chuyên biệt hóa riêng phần 22 Ràng buộc... trình Bottom-up Xác định mô? ?t kiểu thực thể chung từ mô? ?t nhóm các kiểu thực thể riêng biệt Chuyên biệt hóa Qui trình Top-down Xác định mô? ?t hay nhiều kiểu từ mô? ?t siêu... biệt hố tồn phần 19 Chun biệt hóa riêng phần 20 Chuyên biệt hóa riêng phần: mô? ?i thể hiện của siêu kiểu không nhất thiết phải là thể hiện của mô? ?t kiểu Được ký hiệu bằng đường