Bài giảng Mô hình thực thể-Liên kết (Entity-relationship model)

Mô hình CSDL là phương thức biểu diễn các dữ liệu, giúp cho việc tổ chức các dữ liệu thuận tiện cho việc thiết kế, lưu trữ, xử lý Mô hình CSDL dùng mô hình toán học để mô tả CSDL dựa trên các tập hợp và phép toán Các mô hình CSDL phổ biến: Mô hình phân lớp (hierarchical model) Mô hình mạng (network model) Mô hình quan hệ (relational model) Mô hình thực thể-liên kết (entity-relationship mode)

pdf21 trang | Chia sẻ: vietpd | Lượt xem: 2323 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Bài giảng Mô hình thực thể-Liên kết (Entity-relationship model), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Mô hình thực thể-liên kết (Entity-relationship model) 1 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Mô hình CSDL  Mô hình CSDL là phương thức biểu diễn các dữ liệu, giúp cho việc tổ chức các dữ liệu thuận tiện cho việc thiết kế, lưu trữ, xử lý  Mô hình CSDL dùng mô hình toán học để mô tả CSDL dựa trên các tập hợp và phép toán  Các mô hình CSDL phổ biến:  Mô hình phân lớp (hierarchical model)  Mô hình mạng (network model)  Mô hình quan hệ (relational model)  Mô hình thực thể-liên kết (entity-relationship model)  Mô hình hướng đối tượng (object model)  Mô hình XML – bán cấu trúc (semi-structural model) 2 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Giới thiệu  Mô hình ER là một mô hình CSDL, trong đó thế giới thực được mô tả bằng các đối tượng gọi là các thực thể (entity) và quan hệ hay liên kết (relationship) giữa chúng  Đây là một mô hình được sử dụng rất rộng rãi trong việc thiết kế CSDL hiện nay  Một mô hình ER bao gồm:  Tập các thực thể  Tập các thuộc tính  Tập các liên kết 3 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Thực thể (entity)  Là các vật, đối tượng (cụ thể hoặc trừu tượng) trong thế giới thực  VD: một người, một bài hát, một bức ảnh, một trò chơi,…  Tập thực thể: là nhóm các thực thể cùng loại với nhau  VD: người, bài hát, bức ảnh, trò chơi,…  Một CSDL thường chứa rất nhiều giá trị của các đối tượng (thực thể) thuộc kiểu (tập thực thể) giống nhau  VD:  Một lớp có rất nhiều sinh viên  Một sổ danh bạ có thông rất nhiều người 4 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Thuộc tính (attribute)  Là các tính chất đặc trưng của thực thể nào đó  VD:  Người có tên, tuổi, cân nặng, số CMT,…  Bài hát có tên, nội dung, tác giả, năm sáng tác,…  Mỗi thuộc tính có một miền giá trị  VD:  Tên người là chuỗi ký tự  Tuổi là số nguyên dương  Nếu thực thể chưa có giá trị của thuộc tính nào đó thì gọi giá trị của thuộc tính đó là null  Thuộc tính khoá (key): là thuộc tính mà giá trị của nó là duy nhất cho mỗi thực thể (không tồn tại hai thực thể có cùng giá trị của thuộc tính khoá)  VD: số CMT là duy nhất với mỗi người 5 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Biểu diễn thực thể và thuộc tính bằng sơ đồ 6 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội thực thể thuộc tính suy diễn thuộc tính đơn trị thuộc tính đa trị thuộc tính khoá thuộc tính phức hợp thuộc tính con thuộc tính con ... Ví dụ 1 7 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội bài hát tên nội dung tác giả năm sáng tác thể loại Ví dụ 2 8 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội người họ tên tuổi cân nặng số CMT họ tên năm sinh Các kiểu thuộc tính  Thuộc tính đơn và phức hợp:  Thuộc tính đơn: giá trị không thể phân chia nhỏ hơn  VD: cân nặng của người, chiều cao của toà nhà,…  Thuộc tính phức hợp: giá trị có thể tách thành các thành phần nhỏ hơn  VD: tên của một người gồm có họ, tên đệm, tên  Lượng giá trị:  Thuộc tính đơn trị: là thuộc tính chỉ có một giá trị  VD: tên, tuổi của người  Thuộc tính đa trị: là thuộc tính có thể có nhiều giá trị  VD: số điện thoại của một cá nhân (có thể có 0, 1, hay nhiều)  Thuộc tính lưu trữ và suy diễn:  Thuộc tính lưu trữ: là thuộc tính mà giá trị được lưu trong CSDL  Thuộc tính suy diễn: là thuộc tính được tính toán từ một hoặc nhiều thuộc tính lưu trữ khác, giá trị của nó không được lưu trong CSDL  VD: năm sinh của một người được lưu trong CSDL, còn tuổi của người đó được tính toán từ năm sinh 9 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Liên kết (relationship)  Là mối quan hệ giữa các thực thể với nhau  VD:  Bài hát được sáng tác bởi một tác giả cho một ban nhạc (3 tập thực thể)  Bài hát được dịch sang một ngôn ngữ (2 tập thực thể)  Về mặt toán học: liên kết là quan hệ toán học trên các tập thực thể  Biểu diễn bằng sơ đồ: 10 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội thực thể 1 ... ... ... thực thể 2 ... ... ... thực thể 3 ... ... ... liên kết Ví dụ 11 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội bài hát ... ... ... tác giả ... ... ... ban nhạc ... ... ... sáng tác ngôn ngữ ... ... ... dịch Liên kết 1-1  Là liên kết mà mỗi thực thể loại 1 chỉ có thể có quan hệ với không quá 1 thực thể loại 2, và ngược lại  Ràng buộc 1-1 gọi là lực lượng của liên kết  Ví dụ: 12 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội thực thể 1 thực thể 2liên kết 1 1 người giấy CMTsở hữu 1 1 Liên kết 1-n  Mỗi thực thể loại 1 chỉ có thể có quan hệ với nhiều thực thể loại 2, nhưng mỗi thực thể loại 2 chỉ có thể có quan hệ với nhiều nhất 1 thực thể loại 1  Ví dụ: 13 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội thực thể 1 thực thể 2liên kết 1 n nhạc sĩ bài hátsáng tác 1 n Liên kết n-n  Là liên kết mà số thực thể loại 1 và loại 2 trong đó là tuỳ ý, không có ràng buộc về lực lượng  Ví dụ: 14 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội thực thể 1 thực thể 2liên kết n n bài hát ngôn ngữdịch n n Liên kết đệ quy  Là liên kết mà các tập thực thể là một (các thực thể cùng kiểu có quan hệ với nhau)  Ví dụ: 15 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội thực thể liên kết 1 n người làm bạn với 1 n Thực thể hay thuộc tính  Tuỳ trong từng bài toán cụ thể, mỗi khái niệm có thể được thiết kế trong CSDL là thuộc tính hoặc một thực thể, để:  Thuận tiện trong quan niệm  Thuận tiện trong sử dụng CSDL  Ví dụ:  Họ tên của một người có thể coi là một thuộc tính phức, hoặc có thể mô hình hoá thành một thực thể với các thuộc tính là họ và tên  Địa chỉ của một cá nhân có thể được mô hình hoá thành thuộc tính hoặc thực thể tuỳ vào người thiết kế CSDL 16 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Ví dụ thực thể/thuộc tính 17 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội ngườiđịa chỉ ... ... tên đường thành phố số nhà người ... ... tên đường thành phố số nhà trú tạiđịa chỉ 1 1 Thuộc tính của liên kết  Liên kết cũng có thể có thuộc tính, tương tự như của thực thể  Thực chất là việc chuyển một tập thực thể trong liên kết thành thuộc tính  Ví dụ: 18 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội nhân viên ... ... ... công ty ... ... ... làm việc cho năm bắt đầu thâm niên Thực thể yếu (weak entity)  Là thực thể không có thuộc tính khoá (ngược lại: thực thể mạnh – strong entity)  Một thực thể yếu thường được xác định thông qua việc liên kết với một thực thể khác. Liên kết này được coi là liên kết để xác định thực thể yếu  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ể  Biểu diễn trên sơ đồ: 19 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội liên kếtđĩa nhạc bài hátchứa 1 n Đặ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  … 20 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội 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 21 EE4509, EE6133 – HK2 2011/2012 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội
Tài liệu liên quan