Tải bản đầy đủ (.ppt) (51 trang)

Chương 2 Mô hình liên kết – thực thể

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (294.48 KB, 51 trang )

Chương 2
Chương 2
Mô hình liên kết–thực thể
Mô hình liên kết–thực thể
1
Nội dung
Nội dung

Mô hình liên kết thực thể

Quá trình thiết kế mô hình dữ liệu ý niệm

Sơ đồ ER

Thực thể và kiểu thực thể

Thuộc tính

Mối liên kết

Kiểu thực thể kết hợp
2
3
Tập hợp các yêu cầu
và phân tích
Thiết kế khái niệm
Thế giới thực
Thiết kế lô gic
Thiết kế vật lý
Các yêu cầu CSDL
Lược đồ khái niệm (mô hình dữ liệu bậc cao)


Lược đồ trong
Lược đồ khái niệm (mô hình dữ liệu của 1 DBMS cụ thể)
Quá trình thiết kế
Một CSDL
Không phụ thuộc
Vào DBMS
DBMS cụ thể
Quá trình thiết kế mô hình dữ
Quá trình thiết kế mô hình dữ
liệu ý niệm
liệu ý niệm

Bước 1: Nhận dạng các kiểu thực thể

Bước 2: Nhận dạng các kiểu liên kết

Bước 3: Nhận dạng các thuộc tính của các kiểu thực thể và
các mối liên kết

Bước 4: Nhận dạng thuộc tính xác định cho mỗi kiểu thực
thể

Bước 5: Nhận dạng các cấu trúc siêu kiểu/ kiểu con

Bước 6: Vẽ sơ đồ ER
4
Mô hình liên kết – thực thể
Mô hình liên kết – thực thể
(Entity Relationship Model – ER Model)
(Entity Relationship Model – ER Model)


Mô hình ER được dùng để xây dựng mô hình dữ liệu ý niệm
(Conceptual data modeling)

Mô hình ER như 1 công cụ để trao đổi ý tưởng giữa nhà
thiết kế và người dùng cuối trong giai đoạn phân tích. Nó
độc lập với DBMS và quá trình thi công database.
5
Tầm quan trọng của mô hình
Tầm quan trọng của mô hình
hóa dữ liệu
hóa dữ liệu

Giúp thâu tóm các đặc tính dữ liệu, nắm bắt quy tắc
nghiệp vụ (business rule) và các ràng buộc (constraint)
trong quá trình mô hình hóa dữ liệu

Thu thập dữ liệu

Hệ thống được thiết kế theo hướng dữ liệu (data-oriented)
sẽ ổn định hơn hướng xử lý dữ liệu (process oriented)
6
Sơ đồ liên kết – thưc thể
Sơ đồ liên kết – thưc thể

Mô hình ER được diễn tả bằng sơ đồ liên kết thực thể
(entity relationship diagram - ERD)

Ba phần tử cơ bản:


kiểu thực thể (entity Type)

Quan hệ (Relationship)

Các thuộc tính (Attribute)
7
Thực thể - Entity
Thực thể - Entity

Thực thể là đối tượng chính mà ta thu thập thông tin xoay
quanh chúng.

Thực thể có thể là

Một người như nhân viên, sinh viên,

Một nơi chốn như thành phố, đất nước,

Một sự kiện như mua hàng, trả lương,

Một khái niệm như môn học, tài khoản,…
8
kiểu thưc thể - Entity Type
kiểu thưc thể - Entity Type

Kiểu thực thể: là một tập hợp các thực thể có cùng tính chất.

Thể hiện (instance) của một kiểu thực thể là một trường hợp
cụ thể của kiểu thực thể đó.


Ví dụ: kiểu thực thể Customer có các điển hình là Tom và
Peter. Mỗi Customer đều có mã khách khác nhau, và có thể
thực hiện các dịch vụ như đặt hàng, thanh toán tiền ….
9
Các kiểu thực thể
Các kiểu thực thể

Kiểu thực thể mạnh ( strong entity type): tồn tại độc lập
với những kiểu thực thể khác

Kiểu thực thể yếu ( weak entity type): tồn tại phụ thuộc
vào kiểu thực thể khác

Ví dụ:

EMPLOYEE là kiểu thực thể mạnh.

DEPENDENT là kiểu thực thể yếu, lệ thuộc vào
EMPLOYEE.
10
Cách đặt tên và ký hiệu
Cách đặt tên và ký hiệu

Mỗi kiểu thực thể phải có một tên gọi, nên là danh từ số ít
và viết chữ hoa.

Ký hiệu của các kiểu thực thể
11
EMPLOYEE DEPENDENT
Thực thể mạnh

Thực thể yếu
Ví dụ thực thể mạnh/yếu
Ví dụ thực thể mạnh/yếu
12
EMPLOYEE
DEPENDENT
Has
Employee_ID
Employee_Name
Dependent_Name
BirthDate
Kiểu thực thể và đầu vào/ra của hệ
Kiểu thực thể và đầu vào/ra của hệ
thống
thống

Thường nhầm lẫn giữa thực thể dữ liệu (data entity) của
lược đồ ER với các thành phần khác trong DFD (data flow
diagram)

Ví dụ: xét hệ thống chi tiêu của 1 trường cao đẳng. Người
thủ quỹ (treasurer) quản lý tài chính, nhận các báo cáo chi
tiêu, ghi lại các giao dịch.

Treasurer là 1 kiểu thực thể??

Manages và gives là các quan hệ giữa treasurer với account
và expense
13
Kiểu thực thể và đầu vào/ra của hệ

Kiểu thực thể và đầu vào/ra của hệ
thống
thống
14
TREASURER
EXPENSE
REPORT
ACCOUNT
EXPENSE
Manages
Gives_to
Summaries
Has
Kiểu thực thể và đầu vào/ra của hệ
Kiểu thực thể và đầu vào/ra của hệ
thống
thống

Có cần theo dõi dữ liệu về Treasurer?

Treasurer là người nhập dữ liệu về tài chính, các khoản chi
tiêu và nhận báo cáo  là user của CSDL.

Chỉ có 1 treasurer duy nhất  dữ liệu về treasurer không cần
theo dõi.

Treasurer không phải là 1 data entity

Một thực thể thực sự thì sẽ phải có nhiều instance
15

Kiểu thực thể và đầu vào/ra của hệ
Kiểu thực thể và đầu vào/ra của hệ
thống
thống

EXPENSE REPORT có phải là 1 kiểu thực thể không?

Vì báo cáo được tạo ra từ các giao dịch (transaction) và
cân đối tài khoản ( account balance)  được rút trích dữ
liệu từ database
 EXPENSE REPORT không phải là 1 kiểu thực thể tuy có
nhiều instance nhưng được tính toán từ 2 thực thể khác
16
Kiểu thực thể và đầu vào/ra của hệ
Kiểu thực thể và đầu vào/ra của hệ
thống
thống

Lược đồ ER đúng để thể hiện hệ thống chi tiêu là:
17
ACCOUNT
EXPENSE
Has
Thuộc tính - attribute
Thuộc tính - attribute

Mỗi kiểu thực thể có 1 số thuộc tính.

Thuộc tính là đặc tính của 1 kiểu thực thể hay 1 mối liên
kết.


Ví dụ: kiểu thực thể STUDENT có các thuộc tính như
Student_ID, Student_Name, Address, Major.
STUDENT Student_ID, Student_Name,…
18
Các kiểu thuộc tính
Các kiểu thuộc tính

Thuộc tính đơn (simple attribute): là thuộc tính không thể
phân nhỏ được.
Ví dụ: Color, Weight, HorsePower

Thuộc tính phức hợp (composite attribute): là thuộc tính có
thể phân thành nhiều thành phần
Ví dụ: Thuộc tính Address bao gồm các thành phần Street,
District, City
19
Các kiểu thuộc tính (tt)
Các kiểu thuộc tính (tt)

Thuộc tính đơn trị (single valued attribute)

Thuộc tính đa trị (multivalued attribute): có thể có nhiều
hơn một trị cho một thể hiện của thực thể
Ví dụ: Thực thể COURSE có thuộc tính Teacher đa trị, một
môn học có thể được dạy bởi nhiều hơn 1 thầy cô.
20
Các kiểu thuộc tính (tt)
Các kiểu thuộc tính (tt)


Thuộc tính xác định ( identifier attribute): là 1 thuộc tính
hoặc 1 tổ hợp các thuộc tính xác định được các thể hiện
riêng biệt của 1 kiểu thực thể
Ví dụ: Student_ID là thuộc tính xác định của kiểu thực thể
STUDENT
21
Các kiểu thuộc tính (tt)
Các kiểu thuộc tính (tt)

Thuộc tính dẫn xuất ( derived attribute): là thuộc tính mà trị
của nó có thể tính ra được từ các thuộc tính khác
Ví dụ: Year_Employed là thuộc tính dẫn xuất từ thuộc tính
Date_Employed
22
Cách đặt tên và ký hiệu
Cách đặt tên và ký hiệu

Mỗi thuộc tính nên được biểu diễn là danh từ số ít và viết
chữ thường.

Ký hiệu của các kiểu thuộc tính:
23
Student_ID
Teacher
Thuộc tính xác định
Thuộc tính dẫn
xuất
Years_Employed
Thuộc tính đa trị
Mối liên kết - Relationship

Mối liên kết - Relationship

Mối liên kết (relationship) diễn tả sự kết hợp giữa một hay
nhiều kiểu thực thể với nhau.

Kiểu liên kết ( relationship type) là một sự kết hợp có ý
nghĩa giữa các kiểu thực thể

Một thể hiện (instance) của một kiểu liên kết là một sự kết
hợp giữa các thể hiện của các kiểu thực thể tham gia vào
mối liên kết đó
24
Ví dụ
Ví dụ
25
STUDENT
COURSE
Completes

Thuộc tính Date_Completed nên đặt ở
đâu trong lược đồ trên?
 Là 1 thuộc tính của mối liên kết
Completed (thích hợp hơn là thuộc tính
của 2 thực thể STUDENT và COURSE)
Date_Completed

×