Chun Đề 2 : Tìm Hiểu Về Mơ Hình E-R Và Cách
Chuyển Đổi Mơ Hình E-R Sang Mơ Hình Hướng Đối
Tượng
NỘI DUNG TRÌNH BÀY
Giới
thiệu mơ hình E-R
Các thành phần cơ bản
Tập thực thể
Mối quan hệ giữa các tập thực thể
Phân loại mối quan hệ
Mối quan hệ nhị nguyên
Mối quan hệ Is-a
Mối quan hệ phản xạ
Mối quan hệ đa nguyên
Các bước chuyển đổi từ mơ hình E- R sang mơ hình quan
hệ
Các quy tắc chuyển đổi mơ hình E-R sang mơ hình HĐT
GIỚI THIỆU
Mơ hình E-R được đề xuất bởi P. Chen (1976). Đây là một
mơ hình mức khái niệm dựa vào việc nhận thức thế giới
thực thông qua tập các đối tượng được gọi là các thực thể
và các mối quan hệ giữa các đối tượng này.
Nó được sử dụng để thiết kế CSDL ở mức khái niệm.
Biểu diễn trừu tượng cấu trúc của CSDL
Mơ hình E-R như là một 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 Database Managenment System (DBMS) và
quá trình hiện thực database
Sơ đồ quan hệ thực thể ( entity relationship diagram –
ERD) là biểu diễn hình ảnh của quan hệ thực hệ.
GIỚI THIỆU
Thực thể là đối tượng 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ư đấu giá, thi....
Một khái niệm như môn học, tài khoản....
GIỚI THIỆU
Ba phân tử cơ bản trong mơ hình là :
• Kiểu thực thể (Entity Type)
• Mối quan hệ ( Relationship)
• Các thuộc tính (Attribute)
Kiểu thực
thể
Mối
quan hệ
Thuộc
tính
Mơ hình ER (sơ đồ ER)
CÁC THÀNH PHẦN CƠ BẢN
Tập các thực thể
Các mối quan hệ : is-a (kế thừa), phản xạ, nhị nguyên, 1-1,
1-n, n-n, đa nguyên
TẬP THỰC THỂ
Một tập thực thể bao gồm các thực thể có liên
quan với nhau và thơng tin mỗi thực thể được xác
định thông qua một thể hiện của tập các thuộc
tính (đơn trị, đa trị và có 1 thuộc tính khố)
MaSV
SinhVien
HoTen
Lop
NgaySinh
Ví dụ : Một thể hiện của tập thực thể SinhVien:
(SV001, Nguyễn Văn A, IT06, 06/29/1991)
MỐI QUAN HỆ GIỮA CÁC TẬP THỰC THỂ
Biểu thị quan hệ giữa các thực thể của các tập thực thể. Mối
quan hệ R giữa hai tập thực thể E1 và E2 được biểu diễn trong
sơ đồ E – R:
E1
R
E2
Mối quan hệ R trên các tập thực thể E1, E2,..., En là một tập
con của tích Descartes E1 x E2 x...x En ( R E1 x E2 x...x En). E1 x E2 x...x En).
Mỗi mối quan hệ thì cần phải có ngữ nghĩa xác định, rõ ràng.
PHÂN LOẠI MỐI QUAN HỆ
Mối quan hệ nhị nguyên
Mối quan hệ is-a (mối quan hệ kế thừa)
Mối quan hệ phản xạ (mối quan hệ đệ quy)
Mối quan hệ đa nguyên
MỐI QUAN HỆ NHỊ NGUYÊN (1-1, 1-n, n-n)
Đây là mối quan hệ giữa hai tập thực thể, bao gồm:
Quan hệ một - một: Mối quan hệ R giữa tập thực thể A và
tập thực thể B được gọi là mối quan hệ một-một (hay 1-1)
nếu mỗi thực thể của A có quan hệ R với duy nhất một thực
thể của B và ngược lại mỗi thực thể của B có quan hệ R
duy nhất với một thực thể của A.
Nếu R là mối quan hệ một - một giữa A và B thì có các
cạnh định hướng từ hình thoi nhãn R đến các hình chữ nhật
nhãn A và B.
A
R
B
MỐI QUAN HỆ NHỊ NGUYÊN
Quan hệ nhiều - một: Giả sử R là mối quan hệ giữa hai
tập thực thể và Nếu một thực thể liên kết với 0 hoặc nhiều
thực thể của , và mỗi thực thể trong liên kết với nhiều nhất
một thực thể của tập thực thể thì nói rằng R là mối quan hệ
nhiều - một từ vào .
Nếu R là mối quan hệ nhiều - một từ A vào B thì ta vẽ một
cạnh định hướng từ hình thoi nhãn R vào hình chữ nhật
nhãn B và một cạnh khơng định hướng từ hình thoi nhãn R
vào hình chữ nhật nhãn A.
A
R
B
MỐI QUAN HỆ NHỊ NGUYÊN
Quan hệ nhiều – nhiều: Cho hai tập thực thể E1, E2 và
mối quan hệ R giữa chúng. Nếu một thực thể của E1 có
quan hệ R với 0 hoặc nhiều thực thể của E2 và ngược lại,
mỗi thực thể của E2 có quan hệ R với 0 hoặc nhiều thực
thể của E1 thì ta nói rằng R là mối quan hệ nhiều-nhiều
giữa E1 và E2.
(1,1)
(0,1)
Chunhiem
Giaovien
Lop
Sinhvien
Sinhvien
(1,1)
HocTai
(1,n)
(1,n)
Học
ĐiemL1
(1,n)
ĐiemL2
Lớp
Môn học
MỐI QUAN HỆ IS-A (Mối quan hệ kế thừa)
Cho hai tập thực thể A và B chúng ta nói rằng A có mối
quan hệ I-sa với B, ký hiệu là A Is-a B, nếu mỗi thực thể
của A là một thực thể của B.
Mối quan hệ “Is-a” là trường hợp đặc biệt của mối quan
hệ nhị nguyên 1-1. Ta có thể biểu diễn nó trong mơ hình
E-R như sau:
E
Is-a
F
E
Hoặc
F
MỐI QUAN HỆ PHẢN XẠ (Mối quan hệ đệ quy)
Là mối quan hệ giữa các thực thể của cùng một tập thực
thể
Biểu diễn
E
Ví dụ :
R
Cha(1,n)
Người
LaCha
Con(0,1)
Ngữ nghĩa
(n1, n2) LaCha n1 là bố của n2
MỐI QUAN HỆ ĐA NGUYÊN
Là mối quan hệ giữa 3 tập thực thể trở lên
GiaoVien
(0,n)
Day
(n,n)
Lop
hk
n
(n,n)
MonHoc
Ngữ nghĩa
(g, l, m) Day giáo viên g dạy môn m cho lớp l vào học
kỳ là hk của năm học n.
CHUYỂN ĐỔI MƠ HÌNH E-R SANG MƠ HÌNH QUAN HỆ
Các bước chuyển đổi mơ hình E-R sang mơ hình Quan hệ
gồm 7 bước :
Bước 1 : Biến đổi thuộc tính đơn trị và phức
Bước 2 : Biến đổi các thực thể yếu
Bước 3 : Biến đổi mối quan hệ 1-1
Bước 4 : Biến đổi mối quan hệ 1 - n
Bước 5 : Biến đổi mối quan hệ n -n
Bước 6 : Biến đổi mối quan hệ thuộc tính đa trị
Bước 7 : Biến đổi mối quan hệ thuộc tính đa nguyên
CHUYỂN ĐỔI MƠ HÌNH E-R SANG MƠ HÌNH QUAN
HỆ
Các loại thuộc tính bao gồm :
Đơn trị : Là thuộc tính có một giá trị
Đa trị : Là thuộc tính có n giá trị
Ví dụ:
GiaoVien
{
MaGV;
HoTen
SoThich (*)
}
Một giáo viên thì sẽ có một mã giáo viên duy nhất
Một giáo viên thì sẽ có rất nhiều thuộc tính
Phức hợp
Khóa
CÁC QUY TẮC CHUYỂN ĐỔI MƠ HÌNH E-R SANG
MƠ HÌNH HĐT
Quy tắc 1 : Quy tắc chuyển dổi mối quan hệ is – a
ĐN : Nếu tập thực thể A là có mối quan hệ is-a với tập
thực thể B thì lớp A sẽ kế thừa tất cả các thuộc tính trong
lớp B, đồng thời bổ sung các thuộc tính riêng của lớp A.
Đây chính là tính kế thừa trong mơ hình dữ liệu hướng
đối tượng.
Ví dụ :
Quy tắc 1 : Quy tắc chuyển dổi mối quan hệ is – a
Mơ hình thực thể - mối quan hệ
NGUOI
ID
hoten
Is - a
NHANVIEN
tuoi
luong
Mơ hình quan hệ
NGUOI (ID, hoten,tuoi)
NHANVIEN(ID, luong)
Mơ hình hướng đối tượng
Class NGUOI
properties
id: allID;
hoten: String;
tuoi: Integer;
End NGUOI.
Class NHANVIEN
inherits: NGUOI;
properties
luong: Integer;
End NHANVIEN.
CÁC QUY TẮC CHUYỂN ĐỔI MƠ HÌNH E-R SANG
MƠ HÌNH HĐT
Quy tắc 2 : Chuyển đổi mối quan hệ nhị ngun ( khơng
có thuộc tính kèm)
ĐN : Nếu hai tập thực thể A và B có mối quan hệ R (R
khơng có thuộc tính), thì mỗi lớp A và B, ngồi các
thuộc tính trong tập thực thể A và B, sẽ được bổ sung
thêm thuộc tính R (gọi là thuộc tính mối quan hệ). Đối
với việc khai báo kiểu dữ liệu của thuộc tính này trong
mỗi lớp A và B, khơng mất tính tổng qt, ta xét các
trường hợp sau:
Trường hợp 1: Nếu thông qua R mỗi đối tượng thuộc lớp
A có quan hệ nhiều nhất với một đối tượng thuộc lớp B,
chẳng hạn cung nối A và R có bản số là (1,1), thì thuộc
tính R trong lớp A sẽ được khai báo:
< Tên thuộc tính > : < Tên lớp B>