Chương
Chương
2
2
Mô
Mô
h
h
ì
ì
nh
nh
th
th
ự
ự
c
c
th
th
ể
ể
liên
liên
k
k
ế
ế
t
t
(Entity
Các yêu cầuvề dữ liệu
Lược đồ quan niệm
Lược đồ logic
Lược đồ trong
Chương trình ứng dụng
Thiếtkế
chương trình ứng dụng
Phân tích chứcnăng
Các yêu cầuvề chứcnăng
Các đặctả chứcnăng
Nhập môn Cơ sở dữ liệu - Khoa CNTT 5
Nộidung chi tiết
Quá trình thiếtkế CSDL
Mô hình thựcthể -liênkết
- Thựcthể
- Thuộc tính
- Ràng buộctrênkiểu liên kết
- Lược đồ thựcthể - liên kết
- Thựcthể yếu
Thiếtkế
Ví dụ
Nhập môn Cơ sở dữ liệu - Khoa CNTT 6
Mô hình thựcthể - liên kết
Được dùng để thiếtkế CSDL ở mức quan niệm
Biểudiễntrừutượng
cấutrúccủaCSDL
Lược đồ thựcthể-liênkết
(Entity-Relationship Diagram)
- Tậpthựcthể (Entity Sets)
- Thuộc tính (Attributes)
- Kiểusố thực…
Ví dụ tậpthựcthể NHANVIEN có các thuộc tính
- Họ tên (hoten: string[20])
- Ngày sinh (ns: date)
- ĐiểmTB (DTB:float)
- …
Nhập môn Cơ sở dữ liệu - Khoa CNTT 10
Thuộctính(tínhchất)
Loạithuộc tính
- Thuộc tính đơn – không thể tách nhỏ ra được
- Thuộc tính phứchợp–cóthể tách ra thành các thành
phầnnhỏ hơn
Loạigiátrị củathuộc tính
- Đơntrị: các thuộc tính có giá trị duy nhất cho mộtthực
thể (VD: số CMND, …)
- Đatrị: các thuộctínhcómộttậpgiátrị chocùngmộtthực
thể (VD: bằng cấp, …)
- Suy diễn được(nămsinhÅÆtuổi)
Nhập môn Cơ sở dữ liệu - Khoa CNTT 11
Thuộctính(tínhchất)
Tấtcả các thựcthể nằm trong tậpthựcthể có cùng
tậpthuộctính
Mỗithựcthểđều được phân biệtbởimộtthuộctính
khóa
Mỗithuộctínhđềucómiềngiátrị tương ứng vớinó
Nhập môn Cơ sở dữ liệu - Khoa CNTT 12
Thuộctính(tínhchất)
Ví dụ tậpthựcthể NHANVIEN có các thuộc tính
- Mã NV (MaNV: integer)
- Họ tên (Hoten: string[50])
Quan hệ
Nhập môn Cơ sở dữ liệu - Khoa CNTT 15
Ví dụ lược đồ ER
Lam_viec
La_truong_phong
Phan_cong
DCHI
NHANVIEN
TENNV
NGSINH
PHAI
LUONG
HONV
PHONGBAN
TENPHG
Phu_trach
DEAN
TENDA
DDIEM_DA
Kiểu liên kết
Nhập môn Cơ sở dữ liệu - Khoa CNTT 16
Ví dụ lược đồ ER (tt)
Thể hiện liên kết
Nhập môn Cơ sở dữ liệu - Khoa CNTT 17
Thể hiệncủalược đồ ER
MộtCSDL đượcmôtả bởilược đồ ER sẽ chứa đựng
những dữ liệucụ thể
gọilàthể hiệnCSDL
- Mỗitậpthựcthể sẽ có tậphợphữuhạncácthựcthể
y Giả sử tậpthựcthể NHANVIEN có các thựcthể như NV
2
, …, e
n
)
- Trong đóe
i
là các giá trịđượcchọntừ các tậpthựcthể E
i
Xét mối quan hệ
NHANVIEN PHONGBAN
Tung
Hang
Nghien cuu
Dieu hanh
Vinh Quan ly
(Tung, Nghien cuu)
(Hang, Dieu hanh)
(Vinh, Quan ly)
Lam_viec
NHANVIEN PHONGBAN
Nhập môn Cơ sở dữ liệu - Khoa CNTT 19
Ràng buộctrênkiểu liên kết(tt)
Xét mối quan hệ nhị phân R (binary relationship) giữa2 tậpthựcthể
A và B, ràng buộc liên kết bao gồm
- Một-Nhiều
- Một-Một
- Nhiều-Một
- Nhiều-Nhiều
A B
Quan_hệ
NV PB
Lam_viec
(1,n)
NV PB
Lam_viec
(1,1)
NV DA
Phan_cong
(0,n)
NV PB
La_truong_phong
(0,1)
Nhập môn Cơ sở dữ liệu - Khoa CNTT 22
Ràng buộctrênkiểu liên kết(tt)
Mộtloạithựcthể có thể tham gia nhiềulầnvàomột
quan hệ vớinhiều vai trò khác nhau
NHANVIEN
Quan_ly
Duoc quan ly boi
(0,1)
(0,n)
La nguoi quan ly
Nhập môn Cơ sở dữ liệu - Khoa CNTT 23
Thuộctínhtrênmốiquanhệ
Thuộc tính trên mối quan hệ mô tả tính chấtchomối
quan hệđó
Thuộc tính này không thể gắnliềnvớinhững thực
thể tham gia vào mối quan hệ
NHANVIEN DUAN
Lam_viec
TENNV
NGSINH DCHI
GT
LUONG
HONV
PHONGBAN
TENPB
Phu_trach
DUAN
TENDA
DDIEM_DA
MANV
MAPHG
MADA