Bài giảng Nhập môn Cơ Sở Dữ Liệu: Chương 2.2: Mô hình thực thể liên kết mở rộng (Enhanced Entity-Relationship)
Nộidung chi tiết
Khái niệmcơbản
Lớp cha/con
Chuyên biệt hóa vs. Tổng quát hóa
Các ràng buộc trên chuyên biệt hóa
Phân cấp chuyên biệtvàlưới
Giớithiệuvềkiểuhợp (Union type
Chương 2.2 Mô hình thực thể liên kết mở rộng (Enhanced Entity-Relationship) Nhập môn Cơ sở dữ liệu - Khoa CNTT 2 Nội dung chi tiết Khái niệm cơ bản Lớp cha/con Chuyên biệt hóa vs. Tổng quát hóa Các ràng buộc trên chuyên biệt hóa Phân cấp chuyên biệt và lưới Giới thiệu về kiểu hợp (Union type) Nhập môn Cơ sở dữ liệu - Khoa CNTT 3 Khái niệm cơ bản Tại sao cần EER? - Các khái niệm cơ bản về ER không đủ để biểu diễn một số các ứng dụng phức tạp - Ví dụ: CSDL dùng cho công nghệ và sản xuất như viễn thông, khai phá dữ liệu, Î Thêm vào ER một số khái niệm để tăng khả năng mô tả đối tượng rõ ràng và chính xác hơn - EER là sự mở rộng của ER bằng cách thêm vào một số các khái niệm trừu tượng (abstraction) và thể hiện các ràng buộc rõ ràng hơn Nhập môn Cơ sở dữ liệu - Khoa CNTT 4 Khái niệm cơ bản Một số khái niệm bổ sung - Thừa kế - Chuyên biệt hóa - Tổng quát hóa - Phân cấp Một số khái niệm tương tự như trong OOA&D hoặc OOP Nhập môn Cơ sở dữ liệu - Khoa CNTT 5 Lớp cha/lớp con Ví dụ Nhân viên Thư ký Quản lý Kỹ thuật viên Kế toán Nhân viên bán hàng - Lớp con: Quản lý, kế toán, thư ký. - Lớp cha: Nhân viên Lớp cha: là loại thực thể bao gồm một số các thực thể riêng biệt được thể hiện trong mô hình dữ liệu Lớp con: là các thực thể có vai trò riêng biệt nhưng là một thành viên của lớp cha Nhập môn Cơ sở dữ liệu - Khoa CNTT 6 Tính kế thừa Lớp con thừa kế một số thuộc tính và quan hệ của lớp cha + Một số thuộc tính và quan hệ của riêng nó Lợi ích - Tránh mô tả các định nghĩa trùng lặp nhau - Thêm thông tin về ngữ nghĩa vào trong thiết kế Mối quan hệ giữa lớp cha và lớp con gọi là kiểu liên kết ISA Nhập môn Cơ sở dữ liệu - Khoa CNTT 7 Ví dụ: Manager ISA Employee Nhập môn Cơ sở dữ liệu - Khoa CNTT 8 Ví dụ EMPLOYEE SECRETARY TECHNICIAN ∪ ∪ d Fname Lname SSN TypingSpeed TGrade ENGINEER EngType∪ SECRETARY Fname, Lname, SSN, Addr TypingSpeed TECHNICIAN Fname, Lname, SSN, Addr, TGrade ENGINEER Fname, Lname, SSN, Addr, EngType Addr EMPLOYEE Fname, Lname, SSN, Addr Nhập môn Cơ sở dữ liệu - Khoa CNTT 9 Chuyên biệt hóa ĐN: là quá trình xác định tập các lớp con của một kiểu thực thể Tập các lớp con được tạo dựa trên một số các đặc tính riêng biệt nào đó của các thực thể trong lớp cha Nhập môn Cơ sở dữ liệu - Khoa CNTT 10 Tổng quát hóa Một số các lớp chia sẻ một số thuộc tính chung được nhóm lại vào một lớp cha Ví dụ - Sinh viên và giáo viên chia sẻ nhau chung một số thuộc tính như tên, tuổi, địa chỉ, giới tính, . - Nhóm lại thành 1 lớp cha: Người Chuyên biệt hóa và Tổng quát hóa là 2 cách tiếp ngược nhau - Tổng quát hóa = bottom up - Chuyên biệt hóa = Top down Nhập môn Cơ sở dữ liệu - Khoa CNTT 11 Ví dụ CAR Nopass Maxspeed VehID Price TRUCK NoAxlesPrice Tonnage VehID VEHICLE TRUCKCAR Nopass Maxspeed NoAxles Price VehID Tonnage d⊃ ⊃ Nhập môn Cơ sở dữ liệu - Khoa CNTT 12 Ràng buộc trên chuyên biệt hóa Ràng buộc rời rạc(disjointness constraint) mô tả quan hệ giữa lớp cha và các lớp con phải độc lập hoàn toàn (một thực thể là thành viên của chỉ một lớp con được chuyên biệt hóa) Trong sơ đồ EER, ràng buộc rời rạc được ký hiệu bởi chữ d (disjoint) nằm trong vòng tròn Nhập môn Cơ sở dữ liệu - Khoa CNTT 13 Ràng buộc rời rạc Ràng buộc rời rạc(disjointness constraint) mô tả quan hệ giữa lớp cha và các lớp con phải độc lập hoàn toàn (một thực thể là thành viên của chỉ một lớp con được chuyên biệt hóa) Trong sơ đồ EER, ràng buộc rời rạc được ký hiệu bởi chữ d (disjoint) nằm trong vòng tròn Nhập môn Cơ sở dữ liệu - Khoa CNTT 14 Ví dụ EMPLOYEE Name SSN BirthDate Address SECRETARY ∪ ∪ d TypeSpeed TECHNICIAN TGrade ENGINEER EngType ∪ ∪ d SALARIED_EMP Salary HOURLY_EMP PayScale ∪ Disjoint subclasses Disjoint subclasses Nhập môn Cơ sở dữ liệu - Khoa CNTT 15 Ràng buộc chồng chéo Ràng buộc chồng chéo (Overlaping constraint) cho biết quan hệ giữa lớp cha và các thực thể ở lớp con là không tách rời được (một thực thể có thể là thành viên của nhiều lớp con theo sự chuyên biệt hóa) Trong lược đồ EER, ràng buộc này được mô tả bởi chữ o (overlap) bên trong vòng tròn Nhập môn Cơ sở dữ liệu - Khoa CNTT 16 Ví dụ PART MANU_PART PURC_PART o⊃ ⊃ ListPrice SupplierName ManufactureDate DrawingNo BatchNo PartNo Description Ràng buộc chồng chéo Nhập môn Cơ sở dữ liệu - Khoa CNTT 17 Ràng buộc đầy đủ Ràng buộc đầy đủ (completeness const.) bao gồm - Ràng buộc toàn bộ (total) cho biết tất cả các thực thể trong lớp cha phải là thành viên của ít nhất một lớp con nào đó trong chuyên biệt y Thể hiện bằng một đường nét đôi nối giữa lớp cha và vòng tròn chuyên biệt - Ràng buộc từng phần (partial) cho phép một thực thể ở lớp cha không thuộc bất kỳ một lớp con nào trong chuyên biệt y Thể hiện bằng đường nét đơn Nhập môn Cơ sở dữ liệu - Khoa CNTT 18 Ví dụ EMPLOYEE Name SSN BirthDate Address SECRETARY ∪ ∪ d TypeSpeed TECHNICIAN TGrade ENGINEER EngType ∪ ∪ d SALARIED_EMP Salary HOURLY_EMP PayScale ∪ Ràng buộc toàn bộ Ràng buộc từng phần Nhập môn Cơ sở dữ liệu - Khoa CNTT 19 4 loại ràng buộc Các ràng buộc ở trên là độc lập với nhau Chúng ta sẽ có tất cả 4 khả năng khác nhau - Disjoint, total - Disjoint, partial - Overlapping, total - Overlapping, partial Nhập môn Cơ sở dữ liệu - Khoa CNTT 20 Chuyên biệt phân cấp và lưới Một lớp con có thể có lớp con của chính nó bao gồm 2 loại: - Phân cấp (hierarchy) là ràng buộc trong đó tất cả các lớp con chỉ tham gia vào 1 liên kết lớp cha/con (thừa kế đơn ánh) - Lưới (Lattice) là ràng buộc trong đó lớp con có thể tham gia vào nhiều hơn 1 liên kết cha/con (thừa kế bội) Trong loại chuyên biệt này lớp con ko chỉ kế thừa thuộc tính của lớp cha mà còn kế thừa thuộc tính của lớp cha của lớp cha nó Nhập môn Cơ sở dữ liệu - Khoa CNTT 21 VD. chuyên biệt phân cấp Nhập môn Cơ sở dữ liệu - Khoa CNTT 22 VD. Chuyên biệt lưới Nhập môn Cơ sở dữ liệu - Khoa CNTT 23 Kiểu hợp - phạm trù Trong chuyên biệt lưới lớp con thừa kế từ nhiều lớp cha, thừa hưởng tất cả các thuộc tính của lớp cha Làm thế nào để mô tả quan hệ lớp con/cha của 1 con với một tập các lớp cha? Ví dụ: CSDL đăng ký xe có người sở hữu là cá nhân, công ty hoặc ngân hàng Nhập môn Cơ sở dữ liệu - Khoa CNTT 24 Ví dụ Thể hiện trong lược đồ EER Nhập môn Cơ sở dữ liệu - Khoa CNTT 25 Partial category PERSON COMPANY ACCOUNT_ HOLDER u⊃ Address Tel Name BAddress BName Tel Fax Nhập môn Cơ sở dữ liệu - Khoa CNTT 26 Total category SALE RENT PROPERTY u Address Rent Type Closing Date Selling Price IDP ⊂ Nhập môn Cơ sở dữ liệu - Khoa CNTT 27 Tóm tắt Tại sao ER phải mở rộng thành EER Chuyên biệt hóa và tổng quát hóa Cách thể hiện hệ thống phân cấp trên lược đồ EER Cách thể hiện các ràng buộc Ý nghĩa của phạm trù Nhập môn Cơ sở dữ liệu - Khoa CNTT 28 Tài liệu tham khảo Giáo trình CSDL - Chương 2, Fundamentals of Database system - Chapter 4 Nhập môn Cơ sở dữ liệu - Khoa CNTT 29
File đính kèm:
- chap02_EER.pdf