Mối quan hệ Là sự liên kết giữa 2 hay nhiều tập thực thể Ví dụ giữa tập thực thể NHANVIEN và PHONGBAN có các liên kết - Một nhân viên thuộc một phòng ban nào đó - Một phòng ban có mộ
Trang 1Chương 2
Mô hình thực thể-quan hệ
(Entity-Relationship)
Trang 2Nội dung chi tiết
Quá trình thiết kế CSDL
Mô hình E/R
Thiết kế
Ví dụ
Trang 3Phụ thuộc HQT cụ thể Độc lập HQT
Quá trình thiết kế CSDL (tt)
Thế giới thực
Trang 4Quá trình thiết kế CSDL
Ý tưởng E/R thiết kế quan hệLược đồ HQT CSDL quan hệ
Trang 5Nội dung chi tiết
Trang 6Mô hình thực thể - quan hệ
(Entity – Relationship)
Mô hình E-R được đề xuất bởi P Chen (1976).
Đượ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
Trang 7MÔ HÌNH E-R THƯỜNG ĐƯỢC BIỂU DIỄN
DƯỚI DẠNG SƠ ĐỒ (SƠ ĐỒ E – R).
Các tập thực thể
Mối quan hệ
Thuộc tính
Trang 9liệu
Trang 12- Mỗi tập thực thể phải có 1 khóa
- Một khóa có thể có 1 hay nhiều thuộc tính
- Có thể có nhiều khóa trong 1 tập thực thể, ta sẽ chọn ra 1
khóa làm khóa chính cho tập thực thể đó
Trang 13MAPHG
MADA
Trang 14Mối quan hệ
Là sự liên kết giữa 2 hay nhiều tập thực thể
Ví dụ giữa tập thực thể NHANVIEN và PHONGBAN
có các liên kết
- Một nhân viên thuộc một phòng ban nào đó
- Một phòng ban có một nhân viên làm trưởng phòng
Trang 15Tên thuộc tính Thuộc tính
Trang 17Thể hiện của lược đồ E/R
Một CSDL được mô tả bởi lược đồ E/R sẽ chứa đựng những dữ liệu cụ thể gọi là thể hiện CSDL
- Mỗi tập thực thể sẽ có tập hợp hữu hạn các thực thể
Giả sử tập thực thể NHANVIEN có các thực thể như NV1, NV2,
…NVn
- Mỗi thực thể sẽ có 1 giá trị cụ thể tại mỗi thuộc tính
NV1 có TENNV=“Tung”, NGSINH=“08/12/1955”, PHAI=“‘Nam”
NV2 có TENNV= “Hang”, NGSINH=“07/19/1966”, PHAI=“Nu”
Chú ý
- Không lưu trữ lược đồ E/R trong CSDL
Khái niệm trừu tượng
- Lược đồ E/R chỉ giúp ta thiết kế CSDL trước khi chuyển
các quan hệ và dữ liệu xuống mức vật lý
Trang 18MỐI QUAN HỆ
Một mối quan hệ trong mô hình E - R 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 như sau:
Biểu diễn một mối quan hệ:
- Trong sơ đồ ER: Hình thoi
- Trên một CSDL minh họa: Các đường nối giữa
các thực thể của các tập thực thể
Trang 19MỐI QUAN HỆ
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 E2
En
Một mối quan hệ có thể được mô tả thông qua
ngữ nghĩa của thế giới thực.
Trang 20LƯU Ý RÀNG BUỘC VỀ CÁC BẢN SỐ
CỦA MỘT MỐI QUAN HỆ
Trên mỗi cung nối giữa hình chữ nhật và hình thoi
phải có cặp (min, max) được gọi là bản số của mối
quan hệ Nếu min/max lớn hơn 1, ta có thể viết tắt là
n
Để xác định một mối quan hệ nhị nguyên là thuộc
loại nào (1-1, 1-n/n-1 hay n-n), ta cần dựa vào bản
Trang 21Mối quan hệ - Thể hiện
Thể hiện CSDL còn chứa các mối quan hệ cụ thể
- Cho mối quan hệ R kết nối n tập thực thể E1, E2, …, En
- Thể hiện của R là tập hữu hạn các danh sách (e1, e2, …, en)
- Trong đó ei là các giá trị được chọn từ các tập thực thể Ei
Xét mối quan hệ
NHANVIEN PHONGBAN
Tung Hang
Nghien cuu Dieu hanh
(Tung, Nghien cuu) (Hang, Dieu hanh) (Vinh, Quan ly) Lam_viec
NHANVIEN PHONGBAN
Trang 22PHÂ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
Trang 23MỐI QUAN HỆ NHỊ NGUYÊN
Mối quan hệ 1-1
Mối quan hệ 1-n/n-1
Mối quan hệ n-n
Trang 24Mối quan hệ nhị phân
Xét mối quan hệ nhị phân R (binary relationship) giữa
Một E có quan hệ với nhiều F
Một F có quan hệ với nhiều E
E 1 Quan_hệ 1 F
E n Quan_hệ n F
E n Quan_hệ 1 F
Trang 25Thể hiện các mối quan hệ nhị phân
Xét mối quan hệ nhị phân R (binary relationship) giữa
2 tập thực thể A và B:
- Một-Một
- Nhiều-Một
- Nhiều-Nhiều
Trang 26Thể hiện mối quan hệ nhị phân
Trang 27Mối quan hệ nhị phân (tt)
Trên mỗi cung nối giữa hình chữ nhật và hình thoi phải có cặp bản số (min, max)
(min, max) chỉ định mỗi thực thể e E tham gia ít nhất và nhiều nhất vào thể hiện của R
Trang 28Mối quan hệ nhị phân (tt)
Ví dụ
- Một phòng ban có nhiều nhân viên
- Một nhân viên chỉ thuộc 1 phòng ban
- Một nhân viên có thể được phân công vào nhiều đề án
hoặc không được phân công vào đề án nào
- Một nhân viên có thể là trưởng phòng của 1 phòng ban
g (0,n)
NV (0,1)La_truong_phong PB
Trang 29Thuộc tính trên mối quan hệ
Thuộc tính trên mối quan hệ mô tả tính chất cho mối quan hệ đó
Thuộc tính này không thể gắn liền với những thực thể tham gia vào mối quan hệ
NHANVIEN Phan_con DEAN
g
THGIAN
Trang 30MỐI QUAN HỆ IS-A (Mối quan hệ kế thừa)
Cho hai tập thực thể E1 và E2 chúng ta nói
rằng E1 có mối quan hệ Is-a với E2, ký hiệu là
E1 Isa E2, nếu mỗi thực thể của E1 là một thực
thể của E2.
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:
Trang 31MỐI QUAN HỆ IS-A (Mối
quan hệ kế thừa)
Nhận xét: Nếu E1 Is-a E2 thì mọi thực thể
thuộc E1 thì cũng thuộc E2 và mọi thuộc tính
nào có trong E2 thì cũng có trong E1.
Trang 32MỐ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
Trang 33MỐI QUAN HỆ PHẢN XẠ (Mối quan hệ
đệ quy)
Lưu ý:
- Đối với mối quan hệ phản xạ, chúng ta cần xác định rõ tên
vai trò cho mỗi bản số có trong mối quan hệ này.
- Các mối quan hệ phản xạ 1-1, 1-n, hoặc n-n cũng tương tự
như mối quan hệ nhị nguyên 1-1, 1-n, n-n
Ví dụ mối quan hệ phản xạ 1-1
Ví dụ mối quan hệ phản xạ n-n
Trang 34MỐI QUAN HỆ ĐA NGUYÊN
Là mối quan hệ giữa 3 tập thực thể trở lên
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.
Trang 35MỐI QUAN HỆ ĐA NGUYÊN
Lưu ý ràng buộc hàm của mối quan hệ đa
nguyên
- Trong mối quan hệ đa nguyên, ngoài ràng buộc về
bản số còn có "ràng buộc hàm" Ví dụ mối quan hệ
Day nêu trên có ràng buộc hàm như sau:
{Lop, MonHoc} {GiaoVien}
Trang 36Ví dụ: Mô hình E-R hệ thống quản lý nhân viên
Trang 37Ví dụ: Mô hình E-R hệ thống quản lý bán hàng
Trang 38Nội dung chi tiết
Trang 39 (4) Quyết định miền giá trị cho thuộc tính
(5) Quyết định thuộc tính khóa
(6) Quyết định (min, max) cho mối quan hệ
Trang 41Nội dung chi tiết
Trang 42Ví dụ ‘Quản lý đề án công ty’
CSDL đề án công ty theo dõi các thông tin liên quan đến nhân viên, phòng ban và đề án
- Cty có nhiều phòng ban, mỗi phòng ban có tên duy nhất,
mã phòng duy nhất, một trưởng phòng và ngày nhận chức Mỗi phòng ban có thể ở nhiều địa điểm khác nhau
- Đề án có tên duy nhất, mã duy nhất, do 1 một phòng ban chủ trì và được triển khai ở 1 địa điểm
- Nhân viên có mã số, tên, địa chỉ, ngày sinh, phái và
lương Mỗi nhân viên làm việc ở 1 phòng ban, tham gia vào các đề án với số giờ làm việc khác nhau Mỗi nhân viên đều có một người quản lý trực tiếp
- Một nhân viên có thể có nhiều thân nhân Mỗi thân nhân
có tên, phái, ngày sinh và mối quan hệ với nhân viên đó
Trang 43Một Trung tâm tin học cần tổ chức một CSDL để quản lý việc ghi danh và nộp học phí của học viên Cho biết một số thông tin liên quan như sau:
•Mỗi một học viên được cấp một mã học viên duy nhất và được
quản lý với các thông tin bao gồm họ tên, ngày sinh, nơi sinh và
địa chỉ.
•Mỗi một lớp học khi được mở sẽ được gán một mã lớp học
Ngoài ra, lớp học cũng có các thông tin như tên lớp, ngày khai
giảng, học phí, loại chứng chỉ được đào tạo.
•Khi một học viên đăng ký học một lớp học nào đó, trung tâm cần
phải biết được ngày học viên đăng ký và mức giảm học phí áp
dụng cho học viên Hiển nhiên, một học viên có thể đăng ký học tại nhiều lớp khác nhau.
•Việc nộp học phí cho mỗi đăng ký học tại một lớp của học viên là
có thể nộp trong nhiều lần khác nhau Mỗi khi học viên nộp học phí cho một lớp (mà học viên đó đăng ký học), trung tâm sẽ viết
phiếu thu học phí, trong đó cho biết học viên nộp học phí cho
lớp nào và số tiền nộp là bao nhiêu Ngoài ra, mỗi một phiếu thu
học phí được đánh một số phiếu duy nhất và phải cho biết ngày
nộp học phí là ngày nào.
Trang 44Hãy vẽ mô hình thực thể - quan hệ để biểu diễn CSDL cho hệ thống liên đoàn bóng đá quốc gia như sau:
Liên đoàn có nhiều đội
Mỗi đội có tên, thành phố, huấn luyện viên, đội trưởng và danh sách các cầu thủ.
Mỗi cầu thủ chỉ thuộc về một đội
Mỗi cầu thủ gồm có tên, vị trí thi đấu, trình độ kỹ năng và hồ sơ các chấn thương.
Đội trưởng cũng là một cầu thủ.
Một trận đấu được diễn ra giữa hai đội, có thiết lập ngày giờ và kết quả tỉ số.
Trang 45Một quỹ tín dụng cần tổ chức một CSDL để quản lý hoạt động cho vay vốn đối với khách hàng Cho biết một số thông tin liên quan đến hoạt động của quỹ này như sau:
Những người vay vốn được gọi là khách hàng Mỗi một khách hàng được
quản lý với các thông tin: mã khách hàng, tên khách hàng, địa chỉ liên hệ.
Quỹ tín dụng có hình thức vay vốn khác nhau như vay sản xuất, vay kinh
doanh, vay chăn nuôi,… Mỗi một hình thức vay vốn được đánh một mã số
duy nhất, được quy định thời gian vay tối đa (tính theo tháng) và lãi suất hàng tháng.
Khi khách hàng muốn vay vốn phải lập hồ sơ vay vốn Ngoài mã hồ sơ,
mỗi một hồ sơ vay vốn cũng phải thể hiện được
số tiền vay, ngày bắt đầu vay, vay theo hình thức nào và là hồ sơ của khách hàng nào.
Việc trả tiền vốn và lãi của các hồ sơ vay vốn được thực hiện theo từng
tháng Cứ đến kỳ hạn mỗi tháng, quỹ sẽ lập phiếu thanh toán cho các hồ
sơ trong đó thể hiện được các thông tin sau: mã số phiếu, ngày thanh toán,
số tiền vốn, số tiền lãi phải trả và phiếu thanh toán đó là của hồ sơ vay vốn nào.
Hãy vẽ sơ đồ thực thể quan hệ biểu diễn CSDL trên.