TRƯỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN
BÀI GIẢNG HỌC PHẦN
CƠ SỞ DỮ LIỆU VÀ QUẢN TRỊ CƠ SỞ DỮ LIỆU
Giảng viên: ThS. Nguyễn Vương Thịnh
Bộ môn: Hệ thống thông tin
Hải Phòng, 2016
Chương 2
MÔ HÌNH THỰC THỂ LIÊN KẾT
2
Thông tin về giảng viên
3
Thông tin về học phần
PHƯƠNG PHÁP HỌC TẬP, NGHIÊN CỨU
Nghe giảng, thảo luận, trao đổi với giảng viên trên lớp.
Tự nghiên cứu tài liệu và làm bài tập ở nhà.
PHƯƠNG PHÁP ĐÁNH GIÁ
SV phải tham dự ít nhất 75% thời gian.
Có 02 bài kiểm tra viết giữa học phần (X2 = (L1 + L2)/2), 01 bài kiểm tra thực hành (X3). Điểm quá trình X = (X2 + X3)/2.
Thi kết thúc học phần bằng hình thức trắc nghiệm khách quan trên máy tính (Z = 0.5X + 0.5Y).
4
Tài liệu tham khảo
Elmasri, Navathe, Somayajulu, Gupta, Fundamentals of Database Systems (the 4th Edition), Pearson Education Inc, 2004.
Nguyễn Tuệ, Giáo trình Nhập môn Hệ Cơ sở dữ liệu, Nhà xuất bản Giáo dục Việt Nam, 2007.
Nguyễn Kim Anh, Nguyên lý của các hệ Cơ sở dữ liệu, Nhà xuất bản Đại học Quốc gia Hà Nội, 2004.
5
Tài liệu tham khảo
MÔ HÌNH THỰC THỂ LIÊN KẾT
2.1. SỬ DỤNG MÔ HÌNH DỮ LIỆU KHÁI NIỆM
2.2. KIỂU THỰC THỂ VÀ TẬP THỰC THỂ
2.3. KIỂU LIÊN KẾT VÀ TẬP LIÊN KẾT
2.4. KIỂU THỰC THỂ YẾU
6
7
2.1. SỬ DỤNG MÔ HÌNH DỮ LIỆU KHÁI NIỆM
Thế giới thực
(Mini World)
THU THẬP VÀ PHÂN TÍCH YÊU CẦU
(Requirements collection and Analysis)
PHÂN TÍCH CHỨC NĂNG
(Fuctional Analysis)
THIẾT KẾ MỨC KHÁI NIỆM
(Conceptual Design)
THIẾT KẾ MỨC LOGIC
(Logical Design/
Data Model Mapping)
THIẾT KẾ MỨC VẬT LÝ
(Physical Design)
THIẾT KẾ CHƯƠNG TRÌNH ỨNG DỤNG
(Application Program Design)
Các yêu cầu chức năng
(Functional Requirements)
Các yêu cầu dữ liệu
(Data Requirements)
Đặc tả giao dịch mức cao
(High – Level Transaction Specification)
CÀI ĐẶT THỰC THI GIAO DỊCH
(Transaction Implementation)
Lược đồ khái niệm
(trong mô hình dữ liệu mức cao)
(Conceptual Schema)
Lược đồ logic
(trong mô hình dữ liệu của một hệ quản trị CSDL cụ thể)
(Logical Scheme)
Chương trình ứng dụng
(Application Programs)
Lược đồ trong
(Internal Schema)
Độc lập với
HQT CSDL
Gắn với
HQT CSDL
cụ thể
8
Giáo sư Peter Chen
Đại học Louisiana, Hoa Kỳ
Mô hình thực thể liên kết
(ERM – Entity Relationship Model)
9
2.2. KIỂU THỰC THỂ VÀ TẬP THỰC THỂ
2.2.1. THỰC THỂ VÀ THUỘC TÍNH
2.2.1.1. Khái niệm về thực thể
Thực thể (entity) là một đối tượng của thế giới thực mà có sự tồn tại độc lập (independent existence).
Đó có thể là:
Một đối tượng tồn tại vật lý: VD: ông John Smith, con mèo Kitty, lô hàng có mã số MH01234,...
Một khái niệm: VD: môn Toán, công ty TNHH ABC, phòng Tài vụ,...
2.2.1.2. Khái niệm về thuộc tính
Một thực thể có thể có các thuộc tính (attributes). Đó là những thông tin cụ thể giúp mô tả chi tiết hơn về thực thể đó.
Tương ứng với mỗi thực thể phải có một giá trị cụ thể cho mỗi thuộc tính của nó.

10


Name = John Smith
Sex = Male
Age = 20
Job = Student
Phone Number = 04546890



Name = Marry Parker
Sex = Female
Age = 35
Job = Shop Assistant
Phone Number = 06546890

P1
P2
11
2.2.1.3. Phân loại thuộc tính
A. Thuộc tính đơn và thuộc tính phức hợp
Thuộc tính phức hợp (Composite Attributes): Là thuộc tính có thể phân chia thành các thuộc tính con thành phần. Mỗi thuộc tính con thành phần này mang một ý nghĩa độc lập.
Thuộc tính đơn (Atomic/Simple Attributes): Là thuộc tính không thể phân chia thành các thành phần nhỏ hơn.
Địa Chỉ
Số Nhà
Đường Phố
Phường
Quận
Thành Phố
Địa Chỉ = “Số 434, Xuân Thủy, phường Xuân Thủy, quận Cầu Giấy, Hà Nội”
12
B. Thuộc tính đơn trị và thuộc tính đa trị
Thuộc tính đơn trị (Single Value): Là thuộc tính chỉ mang một giá trị duy nhất ứng với mỗi thực thể cụ thể.
Thuộc tính đa trị (Multivalued Attributes): Là thuộc tính mang một tập giá trị ứng với mỗi thực thể cụ thể.


Name = John Smith
Sex = Male
Age = 20
Job = Student
Foreign Languages = {English, Spanish}

P1
13
C. Thuộc tính lưu trữ và thuộc tính suy diễn
Thuộc tính lưu trữ (Stored Value): Là thuộc tính mà giá trị của nó không thể suy ra từ giá trị của các thuộc tính khác (độc lập với giá trị của các thuộc tính khác).
Thuộc tính suy diễn (Derived Value): Là thuộc tính mà giá trị của nó có thể suy diễn ra từ giá trị của các thuộc tính khác (có quan hệ với giá trị của các thuộc tính khác).


Address = 30 St John, New York
Type = Apartment
Width = 5m
Length = 8m
Area = 40m2

D. Thuộc tính phức tạp (Complex Attribute)
Thuộc tính vừa ở dạng phức hợp (Composite) vừa đa trị (Multivalued) và lồng nhau ở một số mức nào đấy.
14
2.2.2. KIỂU THỰC THỂ, TẬP THỰC THỂ VÀ KHÓA CỦA KIỂU THỰC THỂ
2.2.2.1. Khái niệm về kiểu thực thể
Một kiểu thực thể (entity type) định nghĩa ra một tập các thực thể có cùng cấu trúc (cùng tập thuộc tính).
Mỗi kiểu thực thể trong cơ sở dữ liệu có thể được mô tả thông qua tên và các thuộc tính.
2.2.2.2. Khái niệm về tập thực thể
Tập hợp các thực thể của một kiểu thực thể vào một thời điểm nhất định được gọi là tập thực thể (entity set).
Tập thực thể được đặt tên trùng với kiểu thực thể.
Person
Name
Sex
Age
Job
Phone Number
Person = {P1, P2}
Foreign Language
Ghi chú:
Kiểu thực thể biểu diễn bằng hình chữ nhật.
Các thuộc tính được biểu diễn bằng các hình oval.
Thuộc tính đa trị được biểu diễn bằng hình oval có biên là nét kép.
15
2.2.3. KHÓA CỦA KIỂU THỰC THỂ
Khóa (key) của kiểu thực thể là một hoặc một tập thuộc tính có tính chất: giá trị của nó là duy nhất (không trùng nhau) ứng với mỗi thực thể phân biệt của kiểu thực thể.
→ Giá trị của khóa sẽ được dùng để phân biệt (định danh) các thực thể cùng kiểu.
Person
Name
Sex
Age
Job
Phone Number
Foreign Language
Ghi chú:
Nếu khóa chỉ gồm 1 thuộc tính thì thuộc tính này được gạch chân.
Nếu khóa gồm nhiều thuộc tính thì khóa sẽ được gạch chân và biểu diễn dưới dạng một thuộc tính phức hợp.
IDCard
16
Lớp
Tên Lớp
Niên Khóa
Sĩ Số
K
Giáo viên chủ nhiệm
K = {Tên Lớp, Niên Khóa}
17
2.3. KIỂU LIÊN KẾT VÀ TẬP LIÊN KẾT
 
18
Phòng Ban
Nhân Viên
Làm Việc Cho
Các liên kết: r1 = (e1, d2), r2 = (e2, d3), r3 = (e3, d2), r4 = (e4, d3), r5 = (e5, d1)
Tập liên kết:
Làm Việc Cho = {r1, r2, r3, r4, r5}
19
2.3.2. BẬC CỦA KIỂU LIÊN KẾT VÀ KIỂU LIÊN KẾT ĐỆ QUY
2.3.2.1. Bậc của kiểu liên kết
Bậc của kiểu liên kết là số lượng các kiểu thực thể tham gia vào kiểu liên kết đó.
E1
E2
E1
R
R
E2
E1
R
E2
E3
E3
E4
Bậc 2
(Kiểu liên kết nhị phân)
Bậc 3
(Kiểu liên kết tam phân)
Bậc 4
(Kiểu liên kết tứ phân)
20
Giảng Viên
Giảng Dạy
Phòng Học
Môn Học
21
p1 p2 p3 p4
Phòng Học
Các liên kết:
r1 = (e1, d2, p4)
r2 = (e2, d3, p3)
r3 = (e3, d2, p4)
r4 = (e4, d3, p2)
r5 = (e5, d1, p1)
r6 = (e1, d3, p2)
Tập liên kết:
Giảng Dạy = {r1, r2, r3, r4, r5, r6}
22
 
Công Dân
Vay Tiền
Cho vay
Vay
Cho vay
Vay
Cho vay
Cho vay
Vay
Vay
e1

e2

e3

e4

e5
r1

r2

r3

r4
Công Dân
Vay Tiền
Cho vay
Vay
23
2.3.3. CÁC RÀNG BUỘC ĐỐI VỚI KIỂU LIÊN KẾT
2.3.3.1. Ràng buộc về ứng số đối với kiểu liên kết nhị phân
Ràng buộc về ứng số xác định ra số liên kết tối đa mà một thực thể có thể tham gia vào.
A. Kiểu liên kết 1:N: Kiểu thực thể E1 được gọi là tham gia vào kiểu liên kết 1:N với kiểu thực thể E2 nếu thỏa mãn đồng thời:
Mỗi thực thể thuộc E2 chỉ có thể tham gia vào tối đa là 1 liên kết với một thực thể thuộc E1
Một thực thể thuộc E1 có thể tham gia tối đa vào nhiều liên kết với nhiều thực thể thuộc E2.
Ký hiệu:
E1
E2
R
1
N
24
Phòng Ban
Nhân Viên
Làm Việc Cho
1
N
25
B. Kiểu liên kết M:N: Kiểu thực thể E1 được gọi là tham gia vào kiểu liên kết M:N với kiểu thực thể E2 nếu thỏa mãn đồng thời:
Mỗi thực thể thuộc E2 có thể tham gia vào tối đa là nhiều liên kết (M) với các thực thể thuộc E1
Tương tự, mỗi thực thể thuộc E1 có thể tham gia tối đa vào nhiều liên kết (N) với các thực thể thuộc E2.
Ký hiệu:
E1
E2
R
M
N
26
Dự Án
Nhân Viên
Tham Gia
N
M
27
C. Kiểu liên kết 1:1: Kiểu thực thể E1 được gọi là tham gia vào kiểu liên kết 1:1 với kiểu thực thể E2 nếu thỏa mãn đồng thời:
Mỗi thực thể thuộc E2 có thể tham gia vào tối đa là 01 liên kết với một thực thể thuộc E1 và ngược lại, mỗi thực thể thuộc E1 cũng chỉ có thể tham gia tối đa vào 01 liên kết với một thực thể thuộc E2.
Ký hiệu:
E1
E2
R
1
1
28
Bản Sao
Bộ Phim

1
1
Kho lưu trữ của Hãng phim quy định: Mỗi bộ phim chỉ có lưu 01 bản sao
29
2.3.3.2. Ràng buộc tham gia
Ràng buộc tham gia xác định ra số liên kết tối thiểu mà một thực thể bắt buộc phải tham gia vào. Ràng buộc tham gia giúp chỉ rõ sự tồn tại của một thực thể có phụ thuộc vào mối liên hệ với các thực thể khác thông qua kiểu liên kết hay không.
Ràng buộc tham gia chia làm 02 loại:
Ràng buộc tham gia một phần: Kiểu thực thể E được gọi là tham gia một phần vào kiểu liên kết R nếu chỉ có một phần trong số các thực thể của E tham gia vào các liên kết của R. Điều này có nghĩa là: tồn tại những thực thể của E không tham gia vào liên kết.
Kí hiệu: . . .

Ràng buộc tham gia toàn thể: Kiểu thực thể E được được gọi là tham gia toàn thể vào kiểu liên kết R nếu toàn bộ các thực thể thuộc E đều phải tham gia vào các liên kết của R.
Ký hiệu:
E
R
E
R
30
Bản Sao
Bộ Phim

1
1
31
2.3.4. THUỘC TÍNH CỦA KIỂU LIÊN KẾT
Kiểu liên kết cũng có thể có các thuộc tính của riêng nó giống như là kiểu thực thể.
Đây là những thông tin bổ sung cho các liên kết của kiểu liên kết.
Dự Án
Nhân Viên
Tham Gia
N
M
Ngày tham gia
Ngày kết thúc
32
Một số trường hợp đặc biệt của kiểu liên kết nhị phân
A. Với kiểu liên kết 1:1
Thuộc tính của kiểu liên kết có thể được nhập vào một trong 2 kiểu thực thể tham gia.
Bản Sao
Bộ Phim

1
1
Ngày Sao
Bản Sao
Bộ Phim

1
1
Ngày Sao
Bản Sao
Bộ Phim

1
1
Ngày Sao
33
B. Với kiểu liên kết 1:N
Thuộc tính của kiểu liên kết có thể được nhập vào kiểu thực thể ở phía ứng số nhiều (N).
Phòng Ban
Nhân Viên
Làm việc
1
N
Ngày Vào Làm
Phòng Ban
Nhân Viên
Làm việc
1
N
Ngày Vào Làm
34
2.4. KIỂU THỰC THỂ YẾU
2.4.1. MỘT SỐ KHÁI NIỆM CƠ BẢN
2.4.1.1. Kiểu thực thể yếu
Kiểu thực thế yếu (Weak Entity Type) là kiểu thực thể mà bản thân nó không có khóa (key) (không tìm được thuộc tính/tập thuộc tính thỏa mãn tính chất của khóa).
Các thực thể thuộc về một kiểu thực thể yếu chỉ có thể được xác định thông qua mối liên hệ nhất định với các thực thể của kiểu thực thể khác (gọi là kiểu thực thể chủ hay kiểu thực thể xác định).
2.4.1.2. Kiểu liên kết định danh
Kiểu liên kết kết nối giữa một kiểu thực thể yếu với kiểu thực thể chủ của nó được gọi là kiểu liên kết định danh của kiểu thực thể yếu.
Một kiểu thực thể yếu luôn luôn phải tham gia toàn thể vào trong kiểu liên kết định danh vì các thực thể của thực thể yếu sẽ không thể xác định nếu không đặt trong mối liên kết với các thực thể của kiểu thực thể chủ.
35
2.4.2. KHÓA THÀNH PHẦN
Một kiểu thực thể yếu có thể có khóa thành phần (partial key). Đó là thuộc tính/tập thuộc tính dùng để phân biệt các thực thể yếu có cùng mối liên hệ với một thực thể chủ.
Phụ Thuộc
Người Phụ Thuộc
Tình Trạng Sức Khỏe
Giới Tính
Họ Tên
Quan Hệ
Ngày Sinh
N
Nhân Viên
1
Họ Tên
Chuyên Môn
Trình độ
Ngoại Ngữ
Mã NV
Một công ty có nhiều phòng ban. Thông tin về mỗi phòng ban bao gồm: Mã PB, Tên PB, Địa Điểm. Mỗi phòng ban có 1 hoặc một số nhân viên. Thông tin về mỗi nhân viên bao gồm: Mã NV, Họ Tên, Chuyên Môn, Trình Độ, Ngoại Ngữ. Trong số nhân viên cũng có những nhân viên không xếp vào phòng ban nào cả. Công ty hiện nay đang phụ trách nhiều dự án. Thông tin về mỗi dự án bao gồm: Mã DA, Tên DA, Địa Điểm, Ngày Bắt Đầu, Ngày Kết Thúc. Một dự án có thể có một hay nhiều nhân viên hoặc không có nhân viên nào tham gia. Một nhân viên cũng có thể tham gia một hay nhiều dự án hoặc không tham gia dự án nào. Khi tham gia vào một dự án mỗi nhân viên sẽ có thêm thông tin về Ngày tham gia và Ngày kết thúc. Một nhân viên có thể có một hoặc nhiều người phụ thuộc. Thông tin về mỗi người phụ thuộc bao gồm: Họ Tên, Giới Tính, Ngày Sinh, Quan Hệ, Tình Trạng Sức Khỏe.
36
37
Phòng Ban
Nhân Viên
Làm việc
1
N
Tên PB
Họ Tên
Mã NV
Địa Điểm
Mã PB
Chuyên Môn
Trình độ
Ngoại Ngữ
Tham Gia
Dự Án
Mã DA
Ngày Kết Thúc
Ngày Tham Gia
Tên DA
Địa Điểm
Ngày Bắt Đầu
Ngày Kết Thúc
M
N
Phụ Thuộc
Người Phụ Thuộc
Tình Trạng Sức Khỏe
Giới Tính
Họ Tên
Quan Hệ
Ngày Sinh
1
N
Q & A
38
39
nguon VI OLET