HCSDL
1
NN
NN
CHƯƠNG
CHƯƠNG
2
2
Mô hình liên kết thực thể
HCSDL 2
NN
NN
Quá trình thiết kế CSDL
HCSDL 3
NN
NN
Mô h
Mô h
ì
ì
nh liên k
nh liên k
ế
ế
t
t
–
–
th
th
ự
ự
c th
c th
ể
ể
(Entity Relationship Model
(Entity Relationship Model
–
–
ER Model)
ER Model)
Đượ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
Lược đồ thực thể - liên kết (Entity-
Relationship Diagram)
Tập thực thể (Entity Sets)
Thuộc tính (Attributes)
Mối quan hệ (Relationship)
3
HCSDL 4
NN
NN
Mô h
Mô h
ì
ì
nh liên k
nh liên k
ế
ế
t
t
–
–
th
th
ự
ự
c th
c th
ể
ể
(Entity Relationship Model
(Entity Relationship Model
–
–
ER 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 hiện thực database.
4
HCSDL 5
NN
NN
Sơ đ
Sơ đ
ồ
ồ
liên k
liên k
ế
ế
t
t
–
–
th
th
ự
ự
c 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ệ hay mối liên kết (Relationship)
Các thuộc tính (Attribute)
5
HCSDL 6
NN
NN
V
V
í
í
d
d
ụ
ụ
HCSDL 7
NN
NN
Th
Th
ự
ự
c th
c th
ể
ể
-
-
Entity
Entity
Thực thể là đối tượng chính mà ta có thông
tin về 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,…
HCSDL 8
NN
NN
C
C
á
á
ch đ
ch đ
ặ
ặ
t tên v
t tên v
à
à
ký hi
ký hi
ệ
ệ
u
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.
Thể hiện (instance) là một trường hợp cụ
thể của thực thể: Nguyễn văn A
Ký hiệu của các kiểu thực thể
8
EMPLOYEE DEPENDENT
Thực thể mạnh
Thực thể yếu
HCSDL 9
NN
NN
V
V
í
í
d
d
ụ
ụ
th
th
ự
ự
c th
c th
ể
ể
m
m
ạ
ạ
nh/y
nh/y
ế
ế
u
u
9
EMPLOYEE
DEPENDENT
Has
Employee_ID
Employee_Name
Dependent_Name
BirthDate
HCSDL 10
NN
NN
Th
Th
ự
ự
c th
c th
ể
ể
k
k
ế
ế
t h
t h
ợ
ợ
p
p
10
VENDOR
VENDOR
Customer_ID
Customer_Name
Vendor_ID
Address
Shipment
CUSTOMER
CUSTOMER
Date
Shipment_No
HCSDL 11
NN
NN
Thu
Thu
ộ
ộ
c t
c t
í
í
nh
nh
-
-
attribute
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,…
HCSDL 12
NN
NN
C
C
á
á
c ki
c ki
ể
ể
u thu
u thu
ộ
ộ
c t
c t
í
í
nh
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
12
HCSDL 13
NN
NN
C
C
á
á
c ki
c ki
ể
ể
u thu
u thu
ộ
ộ
c t
c t
í
í
nh (tt)
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ô.
13
HCSDL 14
NN
NN
C
C
á
á
c ki
c ki
ể
ể
u thu
u thu
ộ
ộ
c t
c t
í
í
nh (tt)
nh (tt)
Thuộc tính khóa: 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 (instance) 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
14
HCSDL 15
NN
NN
C
C
á
á
c ki
c ki
ể
ể
u thu
u thu
ộ
ộ
c t
c t
í
í
nh (tt)
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
15
HCSDL 16
NN
NN
C
C
á
á
ch đ
ch đ
ặ
ặ
t tên v
t tên v
à
à
ký hi
ký hi
ệ
ệ
u
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:
16
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ị
HCSDL 17
NN
NN
Gi
Gi
á
á
tr
tr
ị
ị
c
c
ủ
ủ
a thu
a thu
ộ
ộ
c t
c t
í
í
nh
nh
Kiểu dữ liệu (data type) và Miền giá trị
của thuộc tính (domain)
Kiểu chuỗi (string)
Kiểu số nguyên (integer)
Kiểu số thực …
Ví dụ thực thể NHANVIEN có các thuộc tính
Họ tên (hoten: string[20])
Ngày sinh (ns: date)
Điểm TB (DTB:float)
HCSDL 18
NN
NN
M
M
ố
ố
i liên k
i liên k
ế
ế
t
t
-
-
Relationship
Relationship
Mối liên kết (relationship): diễn tả sự
liên quan giữa một hay nhiều kiểu thực
thể với nhau. Tên liên kết là một động từ
có ý nghĩa
Bậc của mối liên kết: là số kiểu thực
thể tham gia vào mối liên kết
Các kiểu liên kết (relationship type)
Liên kết 1 ngôi
Liên kết 2 ngôi
Liên kết 3 ngôi
18
HCSDL 19
NN
NN
Liên kết một ngôi (Unary relationship)
Là mối liên kết giữa các thể hiện của cùng
một kiểu thực thể
Còn gọi là mối liên kết đệ quy (recursive
relationship)
Ví dụ:
19
EMPLOYEE
Manages
HCSDL 20
NN
NN
20
Roles
Roles
Đôi khi một thực thể xuất hiện nhiều hơn
1 lần trong mối quan hệ.
Để phân biệt, nên tạo role (nhãn) trên các
cạnh nối giữa mối quan hệ và thực thể.
EMPLOYEE
Manages
Nhân viên
Giám đốc
HCSDL 21
NN
NN
Liên k
Liên k
ế
ế
t hai ngôi (Binary relationship)
t hai ngôi (Binary relationship)
Là mối liên kết giữa hai kiểu thực thể
21
STUDENT
COURSE
Registers for
HCSDL 22
NN
NN
Liên k
Liên k
ế
ế
t ba ngôi (Ternary relationship)
t ba ngôi (Ternary relationship)
Là mối liên kết giữa 3 kiểu thực thể
22
PART
VENDOR
WAREHOUSE
Supplies
Shipping mode Unit cost
HCSDL 23
NN
NN
Lư
Lư
ợ
ợ
ng s
ng s
ố
ố
c
c
ủ
ủ
a m
a m
ố
ố
i liên k
i liên k
ế
ế
t (Cardinality)
t (Cardinality)
Lượng số là số thể hiện của kiểu thực thể B
mà có thể liên kết với mỗi thể hiện của kiểu
thực thể A
Lượng số tối thiểu (minimum cardinality): là
số tối thiểu của các thể hiện của kiểu thực
thể B mà có thể liên kết với mỗi thể hiện của
kiểu thực thể A
Lượng số tối đa (maximum cardinality)
23
HCSDL 24
NN
NN
Lư
Lư
ợ
ợ
ng s
ng s
ố
ố
c
c
ủ
ủ
a m
a m
ố
ố
i liên k
i liên k
ế
ế
t (Cardinality)
t (Cardinality)
Nếu lượng số tối thiểu là 0, kiểu thực thể B
được gọi là nhiệm ý
Nếu lượng số tối thiểu và tối đa đều là 1 thì
lượng số này được gọi là bắt buộc (mandatory)
Ba dạng liên kết:
Liên kết 1-1
Liên kết 1-n
Liên kết n-n
24
HCSDL 25
NN
NN
Ký hi
Ký hi
ệ
ệ
u c
u c
ủ
ủ
a lư
a lư
ợ
ợ
ng s
ng s
ố
ố
Nhiệm ý: ký hiệu là O
Bắt buộc: ký hiệu là ||
Nhiều
25