680 likes | 855 Views
Chương 2. Mô hình thực thể-kết hợp. (Entity-Relationship). Nội dung chi tiết. Quá trình thiết kế CSDL Mô hình thực thể - kết hợp Thiết kế Ví dụ. Quá trình thiết kế CSDL. DBMS. Bài toán Thực tế. Mô hình E-R . Mô hình CSDL Quan hệ. DB. Nội dung chi tiết. Quá trình thiết kế CSDL
E N D
Chương 2 Mô hình thực thể-kết hợp (Entity-Relationship)
Nội dung chi tiết • Quá trình thiết kế CSDL • Mô hình thực thể - kết hợp • Thiếtkế • Ví dụ
Quá trình thiết kế CSDL DBMS Bài toán Thực tế Mô hình E-R Mô hình CSDL Quan hệ DB
Nội dung chi tiết • Quá trình thiết kế CSDL • Mô hình thực thể - kết hợp • Giới thiệu • Kiểu thực thể - Tập thực thể - Thực thể • Thuộc tính • Mối kết hợp • Thực thể yếu • Thiếtkế • Ví dụ
Giới thiệu Mô hình dữ liệu thực thể kết hợp( Entity Relationship Data Model) - Do Peter Pin_Shan Chen đề xuất năm 1970. Tiếp tục được phát triển bởi Teory, Chang, Fry vào năm 1986 và Storey vào năm 1991. - Bằng cách nhìn thế giới thực như là một tập hợp các đối tượng căn bản được gọi là các thực thể và các mối quan hệ giữa các đối tượng này. - Mô hình đã được phát triển để làm thuận tiện cho việc thiết kế CSDL bằng cách đặc tả một tổ chức.
Mô hình thực thể - kết hợp • Được dùng để thiết kế CSDL ở mức quan niệm • Biểu diễn trừu tượng cấu trúc của CSDL Mô hình thực thể - kết hợp
Relationship symbols Entity symbols Attribute symbols A special entity that is also a relationship Relationship degrees specify number of entity types involved Relationship cardinalities specify how many of each entity type is allowed
Nội dung chi tiết • Quá trình thiết kế CSDL • Mô hình thực thể - kết hợp • Giới thiệu • Kiểu thực thể - Tập thực thể - Thực thể • Thuộc tính • Mối kết hợp • Thực thể yếu • Thiếtkế • Ví dụ
Kiểuthựcthể • Mộtcơsởdữliệuthườngchứanhữngnhómthựcthểnhưnhau. • Mộtcôngtythuêhàngtrămnhânviênvàlưugiữnhựngthông tin tươngtựliênquanđếnmỗinhânviên. • Cácthựcthểnhânviênnàychiasẻcácthuộctínhgiốngnhaunhữngmỗithựcthểcócácgiátrịriêngchocácthuộctínhđó. • Mộtkiểuthựcthểlàmộttậphợpcácthựcthểcócácthuộctínhnhưnhau. Nóicáchkháckiểuthựcthểlàđịnhnghĩavềmộtlớpđốitượngtrongcơsởdữliệu.
Kiểuthựcthể • Mộtkiểuthựcthểđượcmôtảbằngmộtlượcđồ: gồmtênvàcácthuộctínhliênquan. • Vídụ: • NHANVIEN( HOTEN, TUOI, LUONG) • CONGTY(TEN, DIADIEM, GIAMDOC) Tên kiểu thực thể Thuộc tính của kiểu thực thể
Tập thực thể (Entity Set) • Một tập hợp các thực thể của cùng một kiểu thực thể trong cơ sở dữ liệu (tại một thời điểm) gọi là tập thực thể. • Tập hợp các thực thể của một kiểu thực thể được nhóm vào một tập thực thể và được gọi là một thể hiện của một kiểu thực thể. Tập thực thể
Tập thực thể (tt) • Ví dụ “Quản lý đề án công ty” • Một nhân viên là một thực thể • Tập hợp các nhân viên là tập thực thể • Một đề án là một thực thể • Tập hợp các đề án là tập thực thể • Một phòng ban là một thực thể • Tập hợp các phòng ban là tập thực thể
Các thành phần của tập thực thể: • Tên tập thực thể : danh từ, thường là tên của Kiểu thực thể. Ký hiệu: Hình chữ nhật Ý nghiã : Cho biết loại thực thể biểu thị lớp đối tượng nào, các qui định liên quan đến dữ liệu cần lưu trữ (miền giá trị , loại dữ liệu…. ) • Danh sách thuộc tính: mô tả các đặc trưng của thực thể. • Khóa của thực thể: • Là tập thuộc tính dùng xác định duy nhất một đối tượng. • Mỗi loại thực thể phải có ít nhất 1 khóa. • Nằm đầu tiên trong danh sách các thuộc tính. • Ðược gạch dưới. 13
Các thành phần của tập thực thể: Khóa của thực thể Tập thực thể MSSV HoTenSV NgaySinhSV Tên tập thực thể SINHVIEN Danh sách thuộc tính
Thực thể (Entity) • Một thực thể là một sự vật hoặc một đối tượng mà nó tồn tại trong thế giới thực và chúng ta có thể phân biệt được. • Một thực thể có thể là cụ thể, tức là chúng ta có thể cảm nhận được bằng giác quan. Hoặc có thể là trừu tượng, tức là cái mà chúng ta không thể cảm nhận được bằng giác quan nhưng có thể nhận biết được bằng nhận thức.
Thực thể (Entity) Thực thể cụ thể VS Thực thể trừu tượng. Lớp học Học sinh Nhà ở Thửa đất Nhân viên Phòng ban
MSSV HoTenSV NgaySinhSV SINHVIEN MSSV HoTenSV NgaySinhSV SINHVIEN Thực thể (Entity) • Ta phân biệt được từng thực thể trong một tập thực thể, thông qua một số thuộc tính khóa.
Kiểu thực thể - Tập thực thể - Thực thể. Kiểu thực thể Tập thực thể Thực thể Thực thể
Nội dung chi tiết • Quá trình thiết kế CSDL • Mô hình thực thể - kết hợp • Giới thiệu • Kiểu thực thể - Tập thực thể - Thực thể • Thuộc tính • Mối kết hợp • Thực thể yếu • Thiếtkế • Ví dụ
Thuộc tính (Attribute) • Là những đặc tính riêng biệt của tập thực thể hay mối kết hợp • Được biểu diễn bằng hình Oval • Ký hiệu: Thuộc tính Tập thực thể
Thuộc tính (Attribute) • Ví dụ tập thực thể NHANVIEN có các thuộc tính • Họ tên • Ngày sinh • Địa chỉ • … • Tập thực thể THUADAT • Số tờ. • Số thửa. • Tên chủ sử dụng. • ……
Thuộc tính • Các loại thuộc tính • Thuộc tính đơn và thuộc tính phức hợp. (Simple attribute & Composite attribute) • Thuộc tính đơn trị và thuộc tính đa trị. (Single attribute & Multivalued attribute ) • Thuộc tính chứa và thuộc tính dẫn xuất (Derived attribute) • Thuộc tính khóa và thuộc tính không khóa. (Identifier attribute)
Thuoäc tính ñôn Thuoäc tính phức hôïp Thuộc tính • Thuộc tính đơn (simple attribute) là thuộc tính không bị phân rã thành nhiều thuộc tính khác • Thuộc tính phức hợp (composite attribute) là thuộc tính bị phân rã thành nhiều thuộc tính khác
Thuộc tính đơn trị Thuộc tính dẫn xuất Thuộc tính đa trị Thuộc tính chứa Thuộc tính • Thuộc tính chứa (stored attribute) là thuộc tính mà giá trị của nó không được suy dẫn từ các thuộc tính khác. • Thuộc tính dẫn xuất (derived attribute) là thuộc tính mà giá trị của nó được suy dẫn từ các thuộc tính khác, được biểu diễn bằng hình bầu dục nét đứt.
Thuộc tính đơn trị Thuộc tính dẫn xuất Thuộc tính đa trị Thuộc tính chứa Thuộc tính • Thuộc tính đơn trị (single-valued attribute) là thuộc tính chỉ chứa một giá trị. • Thuộc tính đa trị (multivalued attribute) là thuộc tính chứa nhiều giá trị khác nhau thuộc một miền trị, được biểu diễn bằng hình bầu dục nét đôi.
Khóa(Identifier) • Khóa là một thuộc tính hoặc tổ hợp các thuộc tính dùng để xác định tính duy nhất của một thực thể trong tập thực thể. • Chú ý: • Mỗi tập thực thể phải có một khóa. • Một khóa có thể có một hoặc nhiều thuộc tính. • Có thể có nhiều khóa trong một tập thực thể, ta sẽ chọn một khóa làm khóa chính của tập thực thể đó. • Ký hiệu khóa của thực thể: • Nằm đầu tiên trong danh sách các thuộc tính. • Ðược gạch dưới.
Khóa đơn Thuộc tính không khóa Khóa phức hợp Khóa(Identifier)
Nội dung chi tiết • Quá trình thiết kế CSDL • Mô hình thực thể - kết hợp • Giới thiệu • Kiểu thực thể - Tập thực thể - Thực thể • Thuộc tính • Mối quan hệ • Thực thể yếu • Thiếtkế • Ví dụ
Mối quan hệ • Là sự liên kết giữa 2 hay nhiều tập thực thể • Ví dụ giữa tập thực thể NHANVIEN và PHONGBAN có các liên kết • Một nhân viên thuộc một phòng ban nào đó • Một phòng ban có một nhân viên làm trưởng phòng
NHANVIEN PHONGBAN NHANVIEN PHONGBAN Tung Nghien cuu Hang Dieu hanh Vinh Quan ly Lam_viec Mối quan hệ - Thể hiện • Thể hiện CSDL còn chứa các mối quan hệ cụ thể • Cho mối quan hệ R kết nối n tập thực thể E1, E2, …, En • Thể hiện của R là tập hữu hạn các danh sách (e1, e2, …, en) • Trong đó ei là các giá trị được chọn từ các tập thực thể Ei • Xét mối quan hệ (Tung, Nghien cuu) (Hang, Dieu hanh) (Vinh, Quan ly)
Mối quan hệ - Bật và ngôi • Bậc / ngôi của mối liên kết (degree / arity of relationship) • Bậc của mối liên kết là số lượng kiểu thực thể tham gia đồng thời vào mối liên kết này. • Các loại mối liên kết • Mối liên kết 1-ngôi (unary relationship) • Mối liên kết 2-ngôi (binary relationship) • Mối liên kết 3-ngôi (ternary relationship): 3 kiểu thực thể đồng thời tham gia vào mối liên kết.
Entities of two different types related to each other One entity related to another of the same entity type Entities of three different types related to each other Mối quan hệ - Bật và ngôi
La nguoi quan ly NHANVIEN (0,n) Quan_ly Duoc quan ly boi (0,1) Quan hệ đơn phân - Quan hệ 1-n/1-1
Mối quan hệ - Ràng buộc lượng số • Ràng buộc lượng số (Cardinality constraint) • Ràng buộc lượng số là số lượng thể hiện của thực thể này có thể hoặc phải liên kết với một thể hiện của thực thể khác. • Lượng số nhỏ nhất • Nếu 0 là tùy chọn (optional). • Nếu một hoặc nhiều là bắt buộc (mandatory). • Lượng số lớn nhất • Số lượng lớn nhất.
(min, max) (min, max) E F Quan_hệ Mối quan hệ - Ràng buộc lượng số • Bảng số (min, max) chỉ định mỗi thực thể e E tham gia ít nhất và nhiều nhất vào thể hiện của R