Tải bản đầy đủ (.ppt) (46 trang)

NHẬP MÔN CƠ SỞ DỮ LIỆU chap2

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (376.96 KB, 46 trang )

Chương 2
Mơ hình thực thể-quan hệ
(Entity-Relationship)


Nội dung chi tiết
 Q trình thiết kế CSDL
 Mơ hình E/R
 Thiết kế
 Ví dụ

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

2


Q trình thiết kế CSDL (tt)
Thế
giới
thực
Phân tích u
cầu

Các u cầu về chức
năng

Các yêu cầu về dữ
liệu

Phân tích chức năng


Phân tích quan
niệm

Các đặc tả chức năng

Lược đồ quan niệm

Độc lập HQT

Thiết kế mức logic
Lược đồ logic

Thiết kế mức vật

Lược đồ trong
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

Thiết kế
chương trình ứng
dụng

Phụ thuộc
HQT cụ thể

Chương trình ứng
dụng
3


Quá trình thiết kế CSDL


Ý tưởng

E/R thiết kế

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

Lược đồ
quan hệ

HQT CSDL
quan hệ

4


Nội dung chi tiết
 Q trình thiết kế CSDL
 Mơ hình thực thể - quan hệ
-

Thực thể
Thuộc tính
Mối quan hệ
Lược đồ thực thể - quan hệ
Thực thể yếu

 Thiết kế
 Ví dụ


Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

5


Mơ 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
 Lược đồ thực thể - quan hệ
(Entity-Relationship Diagram)
- Tập thực thể (Entity Sets)
- Thuộc tính (Attributes)
- Mối quan hệ (Relationship)

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

6


MƠ 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


7

Mơ hình Thực thể - Mối quan hệ


Ví dụ
MaGV

MaKhoa

Khoa

...

GiaoVien

Thuoc

...
Day

MaSV
...

...

MaMH

MonHoc


8

SinhVien

Mơ hình Thực thể - Mối quan hệ


Tập thực thể
 Một thực thể là một đối tượng tồn tại và phân biệt
được với các đối tượng khác của thế giới thực
 Tập hợp các thực thể “tương tự” nhau tạo thành 1
tập thực thể
 Ví dụ: Thực thể: Sinh viên Nguyễn Văn An, Lê Bình
Tập thực thể : Sinh viên
 Chú ý
-

Thực thể (Entity)
Đối tượng (Object)
Tập thực thể (Entity set)
Lớp đối tượng (Class of objects)

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

Cấu trúc của dữ
liệu
Thao tác trên dữ
liệu
9



Tập thực thể (tt)
 Ví dụ “Quản lý đề án công ty”
- Một nhân viên là một thực thể
- Tập hợp các nhân viên là tập thực thể
- Một đề án là một thực thể
- Tập hợp các đề án là tập thực thể
- Một phòng ban là một thực thể
- Tập hợp các phòng ban là tập thực thể

 Lựa chọn các tập thực thể là một bước quan trọng trong
việc xây dựng sơ đồ thực thể - mối quan hệ phản ánh
thông tin quản lý cho một thế giới thực nào đó.
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

10


Thuộc tính
 Là những đặc tính riêng biệt của tập thực thể
 Ví dụ tập thực thể NHANVIEN có các thuộc tính
-

Họ tên
Ngày sinh
Địa chỉ


 Miền giá trị
- Kiểu chuỗi

- Kiểu số nguyên
- Kiểu số thực
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

11


Thuộc tính khóa
 Các thực thể trong tập thực thể cần phải được phân
biệt
 Khóa K của tập thực thể E là một hay nhiều thuộc
tính sao cho
- Lấy ra 2 thực thể bất kỳ e1, và e2 trong E
- Thì e1 và e2 khơng thể có các giá trị giống nhau tại các
thuộc tính trong K

 Chú ý
- 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ể đó
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

12


Ví dụ thuộc tính khóa
MANV
HONV
TENNV


NGSINH

LUON
G

NHANVIEN

DCHI

MAPHG

Lam_viec

TENPB

PHONGBAN

PHAI

La_truong_phon
g
Phu_trach
DDIEM_D
A

Phan_cong

DEAN
TENDA

MADA

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

13


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ột nhân viên làm trưởng phòng

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

14


Lược đồ E/R
 Là đồ thị biểu diễn các tập thực thể, thuộc tính và
mối quan hệ
- Đỉnh
Tên tập thực thể

Tập thực thể

Tên thuộc tính

Thuộc tính


Tên quan hệ

Quan hệ

- Cạnh là đường nối giữa



Tập thực thể và thuộc tính
Mối quan hệ và tập thực thể

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

15


Ví dụ lược đồ E/R
NGSINH
HONV
TENNV

LUON
G

NHANVIEN

DCHI

TENPHG


Lam_viec

PHONGBAN

PHAI

La_truong_phon
g
Phu_trach
DDIEM_D
A

Phan_cong

DEAN
TENDA

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

16


Thể 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ư NV 1, 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ý
Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

17


MỐ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:

E1


E2

R

 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ể

18

Mơ hình Thực thể - Mối quan hệ


MỐ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.
 Ví dụ: Xét 2 tập thực thể Sinhvien (tập các
thực thể sinh viên) và Lớp (tập các thực thể
lớp học) có mối quan hệ Hoctai với ngữ nghĩa
như sau:
(s, l)  Hoctai <=> Sinh viên s học tại lớp l.

19

Mơ hình Thực thể - Mối quan hệ



LƯ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
số. Cụ thể:
E1

(min1,max1)

(min2,max2)

R

E2

 Mối quan hệ R giữa E1 và E2 là mối quan hệ:

max2 - max1
20

Mơ hình Thực thể - Mối quan hệ


Mố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

Lam_viec

NHANVIEN

PHONGBAN

Tung

Nghien cuu

Hang

Dieu hanh

Vinh

Quan ly

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

PHONGBAN

(Tung, Nghien cuu)

(Hang, Dieu hanh)
(Vinh, Quan ly)

21


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 ngun

22

Mơ hình Thực thể - Mối quan hệ


MỐ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

23

Mơ hình Thực thể - Mối quan hệ



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ể E và F:
- Một-Nhiều



Một E có quan hệ với nhiều F
Một F có quan hệ với một E

E

n

Quan_hệ

1

F

- Một-Một



Một E có quan hệ với một F
Một F có quan hệ với một E

E


1

Quan_hệ

1

F

- Nhiều-Nhiều



Một E có quan hệ với nhiều F
Một F có quan hệ với nhiều E

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

E

n

Quan_hệ

n

F

24



Thể 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

Cơ sở dữ liệu - Khoa CNTT - ĐH KHTN TPHCM

25


×