Professional Documents
Culture Documents
ThS. Cao Vinh
caovinh226@gmail.com
Mô hình hóa dữ liệu ở mức quan niệm bằng “Mô hình thực thể liên kết”
17.01.2022 2
Các bước thiết kế một cơ sở dữ liệu
17.01.2022 3
Các bước thiết kế một cơ sở dữ liệu
Thiết kế mô hình
Mô hình
ở mức quan
quan hệ
niệm
Thiết kế logic
Thiết kế vật lý
DB
Thiết kế và cài
17.01.2022
đặt chương trình 4
THIẾT KẾ MÔ HÌNH DỮ LIỆU Ở MỨC
QUAN NIỆM
17.01.2022 5
Mô hình dữ liệu ở mức quan niệm
Tìm hiểu đối tượng dữ liệu có trong bài toán đó. Các đặc điểm của các
đối tượng dữ liệu đó cũng như các ràng buộc có thể có trên các đối tượng dữ
liệu đó.
Là phương tiện giao tiếp với người dùng nhằm xác định đúng đắn và
đầy đủ các yêu cầu thông tin của hệ thống
17.01.2022 6
MÔ HÌNH THỰC THỂ LIÊN KẾT
(MÔ HÌNH THỰC THỂ KẾT HỢP)
17.01.2022 7
Thế nào là mô hình thực thể liên kết?
Mô hình ERD được viết tắt bởi từ Entity Relationship Diagram được hiểu là
mô hình thực thể kết hợp hay còn gọi là mô hình thực thể liên kết. Mô hình này
còn được biết tới với các gọi khác là ER (viết tắt của từ Entity Relationship Model).
Mô hình thực thể liên kết được sử dụng để biểu diễn cơ sở dữ liệu ở mức khái
niệm, nó mô tả súc tích về các yêu cầu dữ liệu trong bài toán của người dùng.
17.01.2022 8
Thế nào là mô hình thực thể liên kết?
• Mô hình thực thể liên kết bao gồm có các lớp (tập) thực thể, danh sách thuộc
tính và các mối quan hệ
17.01.2022 9
Nội dung bài giảng
Các khái niệm của mô hình thực thể kết hợp (Entity – Relationship)
Lớp (tập) thực thể
Thuộc tính
Mối quan hệ
Thuộc tính của mối quan hệ
Các ràng buộc cấu trúc (bản ghi và sự tham gia)
Ví dụ và bài tập
17.01.2022 10
Thực thể
Khái niệm
Thực thể là một đối tượng cụ thể hay trừu tượng trong thế giới thực mà nó
tồn tại và có thể phân biệt được với những đối tượng khác
Ví dụ
2. Thực thể trừu tượng: không cảm nhận được bằng giác quan nhưng nhận biết
được bằng nhận thức
• Tài khoản ngân hàng số 5623569 là một thực thể trừu tượng người ta nghĩ
ra để quản lý.
17.01.2022 11
Lớp thực thể
Khái niệm
Tập hợp các thực thể cùng loại, được nhận diện bởi cùng một tập hợp các
tính chất thì người ta gọi là lớp (tập) thực thể
Chú ý
• Thực thể (Entity)
• Đối tượng (Object)
Ví dụ
Một sinh viên là một thực thể
Tập hợp các sinh viên được gọi là lớp (tập) thực thể
Tên
Liên kết
17.01.2022 13
Ví dụ về phân loại lớp thực thể
Mối quan hệ giữa nhân viên và thân nhân trong bài toán quản lý nhân viên
17.01.2022 14
Thuộc tính
Khái niệm
Mỗi một lớp thực thể được mô tả bởi các đặc trưng cụ thể, được gọi là thuộc tính.
Ví dụ
Kí hiệu Hình elip Một lớp thực thể nhân viên được mô tả bằng:
‾ Mã nhân viên
Tên thuộc ‾ Họ tên
tính
‾ Ngày sinh
‾ Quê quán
‾ SĐT
‾ …….
17.01.2022 15
Miền giá trị của thuộc tính
Miền giá trị của thuộc tính gồm các loại giá trị như sau:
• Kiểu chuỗi (string)
• Kiểu số nguyên (integer)
• Kiểu số thực (real)
• ……..
17.01.2022 16
Phân loại thuộc tính
17.01.2022 17
Thuộc tính đơn (nguyên tử)
Ý nghĩa
Thuộc tính đơn (nguyên tử): là thuộc tính không thể phân chia ra được
thành các thành phần nhỏ hơn.
Ví dụ
Thuộc tính Giới tính, Mã nhân viên của lớp thực thể Nhân viên là thuộc
tính nguyên tử
Giới
Nhân viên
tính
MaNV
17.01.2022 18
Thuộc tính kết hợp
Ý nghĩa
Thuộc tính kết hợp là thuộc tính được kết hợp từ nhiều thuộc tính khác
Ví dụ
Địa chỉ của lớp thực thể Nhân viên có thể chia thành các thành phần:
Số nhà, đường, quận, thành phố,…
Số nhà
Đường
Địa
Nhân viên chỉ
Quận
Thành
phố
17.01.2022 19
Thuộc tính đơn trị
Ý nghĩa
Là thuộc tính có giá trị duy nhất cho một thực thể cụ thể.
Ví dụ
Lớp thực thể Nhân viên có thuộc tính đơn trị như Mã nhân viên, ngày sinh,
giới tính,…
Giới tính
17.01.2022 20
Thuộc tính đa trị
Ý nghĩa
Thuộc tính đa trị là thuộc tính nhận nhiều giá trị đối với một thực thể cụ
thể
Ví dụ
Lớp thực thể Nhân viên có thuộc tính điện thoại, sở thích,… là thuộc tính
đa trị
Điện
Nhân viên thoại
17.01.2022 21
Thuộc tính đa trị và kết hợp
Giá Ngayhieuluc
MaSP
Lichsu
giaSP
Sản phẩm
17.01.2022 22
Thuộc tính lưu trữ
Ý nghĩa
Là thuộc tính mà giá trị của nó phải được nhập vào khi cài đặt cơ sở dữ liệu
(phải nhập vào từ bàn phím)
Ví dụ
Lớp thực thể Nhân viên có thuộc tính họ tên, điện thoại,… là thuộc tính lưu
trữ
Điện
thoại
17.01.2022 23
Thuộc tính suy diễn
Ý nghĩa
Là thuộc tính mà giá trị của nó có thể tính được thông qua giá trị của các
thuộc tính khác.
Ví dụ
Thuộc tính tuổi của Nhân viên có thể tính toán qua Ngày sinh tuổi là
thuộc tính suy diễn
17.01.2022 24
Một số lưu ý với thuộc tính
1. Khi thiết kế mô hình thực thể kết hợp khuyến khích nên sử dụng các thuộc tính
đơn
2. Trong bất cứ một ứng dụng nào thì chúng ta cũng chỉ làm việc với một tập con
các tính chất của thuộc tính chứ không phải tất cả
3. Thuộc tính lấy giá trị của các xuất hiện cụ thể
4. Mỗi thực thể có một thuộc tính đặc biệt dùng để phân biệt với các thực thể khác
gọi là định danh. Một lớp thực thể cho trước có thể có một hoặc nhiều định danh
chứ không phải luôn luôn có một định danh duy nhất.
17.01.2022 25
Thuộc tính định danh (Khóa)
Ý nghĩa
Khóa là một thuộc tính hoặc một tổ hợp các thuộc tính dùng để xác định
duy nhất một thể hiện của một thực thể nào đó
Ví dụ
Thuộc tính MaNV của Nhân viên là thuộc tính khóa
17.01.2022 26
Một số ví dụ
Câu 1:
Thông tin về sinh viên gồm có: Mã sinh viên, họ tên, ngày sinh, quê quán,
email, sđt. Hãy biểu diễn lớp thực thể Sinh viên cùng các thuộc tính bằng mô hình
ER?
Câu 2:
Thông tin về nhân viên gồm có: Mã nhân viên, họ tên, ngày sinh, hệ số
lương, bằng cấp và lương. Hãy biểu diễn lớp thực thể Nhân viên cùng các thuộc
tính bằng mô hình ER?
17.01.2022 27
Một số ví dụ
Câu 1:
Thông tin về sinh viên gồm có: Mã sinh viên, họ tên, ngày sinh, quê quán,
email, sđt. Hãy biểu diễn lớp thực thể Sinh viên cùng các thuộc tính bằng mô hình
ER?
Họ tên
MaSV Ngày
sinh
Sinh viên
Quê
Họ tên quán
SĐT
17.01.2022 28
Một số ví dụ
Câu 2:
Thông tin về nhân viên gồm có: Mã nhân viên, họ tên, ngày sinh, hệ số
lương, bằng cấp và lương. Hãy biểu diễn lớp thực thể Nhân viên cùng các thuộc
tính bằng mô hình ER?
Họ tên
MaNV Ngày
sinh
Nhân viên
Lương HSL
Bằng
cấp
17.01.2022 29
Liên kết – Mối liên kết
Ý nghĩa
Các lớp thực thể không có tồn tại độc lập trong bài toán. Mối liên kết là mối
liên hệ giữa các lớp thực thể.
Kí hiệu
• Mối liên kết kí hiệu bằng hình thoi Liên kết
• Tên liên kết là động từ
17.01.2022 30
Liên kết – Mối liên kết
Có khi nào giữa hai lớp thực thể có nhiều mối liên kết không?
Làm
TP
Làm
Nhân viên Phòng ban
việc
17.01.2022 31
Thuộc tính của mối liên kết
Lưu ý
Mối liên kết cũng có thể có thuộc tính
Ký hiệu Hình elip gắn liền với liên kết
Ví dụ
1. Một đơn vị có một nhân viên làm trưởng phòng và cần lưu lại ngày nhận
chức của trưởng phòng
2. Lưu thời gian nhân viên đã làm việc cho dự án nào đó
Sogiolam
viec
Tham
Nhân viên Dự án
gia
17.01.2022 32
Bậc của mối liên kết
Ý nghĩa
Bậc của liên kết là số lớp thực thể tham gia vào liên kết.
1
Ví dụ
Làm
Nhân viên Phòng ban
việc
Bậc = 2
17.01.2022 33
Liên kết đệ quy
Ý nghĩa
Cùng một lớp thực thể tham gia vào liên kết với vai trò khác nhau
17.01.2022 34
Kiểu liên kết
17.01.2022 35
Kiểu liên kết
1 1
Nhân viên có Thẻ nhân viên
17.01.2022 36
Kiểu liên kết
1 bao n
Phòng ban Nhân viên
gồm
17.01.2022 37
Kiểu liên kết
n tham m
Nhân viên Dự án
gia
17.01.2022 38
Mối liên kết ba ngôi
n Chuyển n
Nhà cung cấp Kho hàng
hàng
Sản phẩm
17.01.2022 39
Ràng buộc tham gia và sự phụ thuộc tồn tại
Ý nghĩa
Ràng buộc tham gia chỉ ra một thực thể phụ thuộc vào thực thể khác thông
qua kiểu liên kết.
17.01.2022 40
Ràng buộc tham gia và sự phụ thuộc tồn tại
Ví dụ Xét kiểu liên kết Nhân viên <quản lý> Phòng ban
1 làm n
Nhân viên Phòng ban
quản lý
Trong ví dụ trên
Có phải phòng ban nào cũng có người quản lý ?
o Đúng đó là ràng buộc tham gia toàn bộ của thực thể PHONGBAN
trong liên kết (sự phụ thuộc tồn tại); Tham gia toàn bộ vào liên kết
Có phải nhân viên nào cũng là người quản lý?
o Sai NHANVIEN tham gia bộ phân vào liên kết
Biểu diễn
• Ràng buộc tham gia toàn bộ hoặc
• Ràng buộc tham gia bộ phận
17.01.2022 41
Thể hiện ràng buộc bằng kí hiệu (min, max)
R A
Xác định lực lượng này từ khảo sát thực thế bài toán
17.01.2022 42
Thể hiện ràng buộc bằng kí hiệu (min, max)
1 n
Phòng ban có Nhân viên
(5,30) (1,1)
Phòng ban có Nhân viên
1 1
làm trưởng
Nhân viên phòng
Phòng ban
(0,1) (1,1)
làm trưởng
Nhân viên phòng
Phòng ban
17.01.2022 43
Thể hiện ràng buộc bằng kí hiệu (min, max)
17.01.2022 44
Một số kí hiệu khác
A Liên kết B
Tham
gia
1B có bao nhiêu A ?
Dự án
17.01.2022 46
Một số kí hiệu khác
Làm
TP
Làm
việc
17.01.2022 47
Bài tập thực hành
Kết
Người
hôn
17.01.2022 48
Nhắc lại các thành phần trong mô hình ER
Đỉnh
Lớp thực thể
Thuộc tính
mạnh LK với
TT yếu
Thuộc tính
khóa
LớpThực
thực thể yếu
Liên kết
TT đa trị
Thuộc tính
suy diễn
17.01.2022 49
Nhắc lại các thành phần trong mô hình ER
Cạnh
Cạnh là đường nối giữa:
• Lớp thực thể và thuộc tính
• Mối liên kết giữa lớp thực thể
17.01.2022 50
Các bước xây dựng mô hình ER
1. Xác định các lớp thực thể và thuộc tính của nó, xác định thuộc tính khóa.
2. Xác định mối liên kết và thuộc tính của liên kết (nếu có) giữa các lớp thực thể
3. Vẽ sơ đồ mô hình ER, xác định lực lượng tham gia liên kết (nếu có).
4. Chuẩn hóa và rút gọn sơ đồ (nếu có)
17.01.2022 51
Bài tập vận dụng
Câu 1
Đơn vị A có nhiều phòng ban. Mỗi phòng ban có mã phòng ban, tên phòng
ban, trưởng phòng (lưu lại ngày nhận chức của trưởng phòng). Mỗi phòng ban có
nhiều nhân viên. Mỗi nhân viên đều có mã nhân viên, họ tên, số điện thoại, địa
chỉ, chức vụ. Mỗi nhân viên làm việc ở một phòng ban và có thể tham gia vào các
dự án khác nhau của đơn vị. Mỗi dự án có mã dự án, tên dự án.
17.01.2022 52
Bài tập vận dụng
Câu 2
Khảo sát bài toán quản lý Ký túc xá sinh viên, thu được các thông tin sau:
KTX gồm nhiều tòa nhà khác nhau, thông tin về tòa Nhà gồm có: Tên
tòa nhà, số tầng, điện thoại liên hệ. Mỗi toà nhà được phân biệt thông qua mã tòa
nhà.
KTX gồm nhiều nhân viên quản lý khác nhau. Mỗi nhân viên chịu trách
nhiệm một số toà nhà, khi nhân viên được phân quản lý tòa nhà sẽ lưu lại ngày
nhận công tác. Mỗi nhân viên gồm: mã nhân viên, tên, ngày sinh, điện thoại. Mỗi
nhân viên có thể có nhiều số điện thoại.
Mỗi tòa nhà có nhiều phòng khác nhau, một phòng chỉ thuộc 1 tòa nhà.
Phòng có các thông tin: Mã phòng, Tên phòng, số lượng sinh viên ở thực tế, số
chỗ còn trống. Mỗi phòng có thể có nhiều sinh viên nhưng mỗi sinh viên chỉ được
ở một phòng.
Thông tin về sinh viên gồm: Mã sinh viên, Tên sinh viên, Giới tính, Đối
tượng, Tên lớp, điện thoại, số tiền phải nộp hàng tháng..
17.01.2022 53