You are on page 1of 19

2/29/2024

CƠ SỞ DỮ LIỆU

GV: ThS. Thái Trúc Nhi

TP. HCM - 2024

TTNhi-2024

1
2/29/2024

YÊU CẦU 1
• Một website của một cửa hàng bán một số mặt hàng thuộc
nhiều thể loại. Một mặt hàng thì thuộc một thể loại. Các
khách hàng có thể mua các mặt hàng thông qua các đơn đặt
hàng trên website của cửa hàng. Mỗi khách hàng có các
thông tin được lưu trữ lại như tên, địa chỉ, login, mật
khẩu, địa chỉ email (có thể dùng để login).
• Một mặt hàng có tên, một mã số, mô tả, đơn giá chưa
thuế, tình trạng tồn kho và thể loại. Một đơn đặt hàng có
thể đặt nhiều mặt hàng với số lượng nhất định. Mỗi đợt đặt
hàng có một số hiệu duy nhất, ngày tháng phải được lưu
trữ lại.
TTNhi-2024

YÊU CẦU 2
• 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 đó.
TTNhi-2024

2
2/29/2024

THÔNG TIN - DỮ LIỆU

THÔNG TIN

Chọn lọc

DỮ LIỆU

TTNhi-2024

QUÁ TRÌNH THIẾT KẾ CSDL

HQT CSDL
Ý tưởng Thiết kế E/R Lược đồ QH
QH

(1) (2) (3)

TTNhi-2024

3
2/29/2024

MÔ HÌNH THỰC THỂ


KẾT HỢP (ER)

GV: ThS. Thái Trúc Nhi

TP. HCM - 2024

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
• Cạnh là đường nối giữa
• Tập thực thể và thuộc tính Tên tập thực thể Tập thực thể

• Mối quan hệ và tập thực thể


Tên thuộc tính Thuộc tính

Tên quan hệ Quan hệ

TTNhi-2024

4
2/29/2024

Minh họa sơ đồ ER
NGSINH LUONG DCHI
TENPHG

HONV

NHANVIEN Lam_viec PHONGBAN


TENNV

PHAI

La_truong_phong

Phu_trach

DDIEM_DA

Phan_cong DEAN
TENDA

TTNhi-2024

Mối quan hệ - Multiplicity


• Xét mối quan hệ nhị phân R (binary relationship) giữa 2 tập
thực thể E và F, tính multiplicity bao gồm:
• Một-Nhiều E
n
Quan_hệ
1
F

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


• Một F có quan hệ với một E 1 1
E F
• Một-Một Quan_hệ

• Nhiều-Nhiều E
n
Quan_hệ
n
F

TTNhi-2024

5
2/29/2024

Mối quan hệ - Multiplicity


• (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.
• (0,1) – không hoặc 1 (min, max) (min, max)
E Quan_hệ F
• (1,1) – duy nhất 1
• (0,n) – không hoặc nhiều
• (1,n) – một hoặc nhiều

TTNhi-2024

Mối quan hệ - Multiplicity


• Một phòng ban có nhiều nhân NV Lam_viec
(1,n)
PB
viên
• Một nhân viên chỉ thuộc 1 phòng NV (1,1)
Lam_viec PB
ban
• Một nhân viên có thể được phân NV
(0,n)
Phan_cong DA
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 NV
(0,1)
La_truong_phong PB

phòng của 1 phòng ban nào đó


TTNhi-2024

6
2/29/2024

Mối quan hệ - Vai trò


• Một loại thực thể có thể tham gia nhiều lần vào một quan
hệ với nhiều vai trò khác nhau
La nguoi quan ly

NHANVIEN Quan_ly
(0,n)

Duoc quan ly boi


(0,1)

TTNhi-2024

Thuộ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ệ
(0,n) (1,n)
NHANVIEN Phan_cong DEAN

THGIAN

TTNhi-2024

7
2/29/2024

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
• VD: K1: Họ tên, Phái, Ngày sinh, Địa chỉ; K2: CCCD; K3: MaSV
• 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ể đó.
TTNhi-2024

Minh họa thuộc tính khóa


MANV
NGSINH DCHI LUONG MAPHG TENPB
HONV

TENNV NHANVIEN Lam_viec PHONGBAN

PHAI
La_truong_phong

Phu trach

DDIEM_DA

Phan_cong DEAN
TENDA

MADA

TTNhi-2024

8
2/29/2024

Tập thực thể yếu


• Là thực thể mà khóa có được từ những thuộc tính của tập thực thể
khác
• Thực thể yếu (weak entity set) phải tham gia vào mối quan hệ mà
trong đó có một tập thực thể chính
MANV
NGSINH LUONG DCHI

HONV
(1,n)
TENNV NHANVIEN Co_than_nhan QUANHE

NGSINH
PHAI (1,1)
PHAI
THANNHAN
TENTN

TTNhi-2024

MAHD

NGAYHD

TONGTIEN
HOA_DON
(1,n)
HD_CT

(1,1)
SL_HH
CHI_TIET
SOTIEN
(1,1)

HH_CT
(1,n) TENHH

HANG_HOA DGIA

MAHH

TTNhi-2024

9
2/29/2024

BÀI TẬP THỰC HÀNH


• Thiết kế sơ đồ thực thể cho BT1 (Quản lý cửa hàng)
• Thiết kế sơ đồ thực thể cho BT2 (Quản lý đề án)

TTNhi-2024

LƯỢC ĐỒ QUAN HỆ

GV: ThS. Thái Trúc Nhi

TP. HCM - 2024

10
2/29/2024

Nội dung

• Các khái niệm của mô hình quan hệ


• Ràng buộc toàn vẹn
• Chuyển lược đồ ER sang thiết kế quan hệ
• Đại số quan hệ

TTNhi-2024

Các khái niệm của mô hình quan hệ

• Quan hệ (Relation)
• Thuộc tính (Attribute)
• Lược đồ (Schema)
• Bộ (Tuple)
• Miền giá trị (Domain)

TTNhi-2024

11
2/29/2024

QUAN HỆ - THUỘC TÍNH


• Các thông tin lưu trữ trong CSDL được tổ chức thành bảng
(table) 2 chiều gọi là quan hệ.

1 cột là 1 thuộc tính

TENNV HONV NGSINH DCHI PHAI LUONG PHG

Tung Nguyen 12/08/1955 638 NVC Q5 Nam 40000 5


Hang Bui 07/19/1968 332 NTH Q1 Nu 25000 4
Nhu Le 06/20/1951 291 HVH QPN Nu 43000 4
Hung Nguyen 09/15/1962 Ba Ria VT Nam 38000 5
1 dòng là 1 NV

TTNhi-2024

Lược đồ quan hệ
• Tên của quan hệ
• Tên của tập thuộc tính

Lược đồ quan hệ NHANVIEN

NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, PHG)

Là tập hợp

TTNhi-2024

12
2/29/2024

Lược đồ CSDL
• Gồm nhiều lược đồ quan hệ

Lược đồ CSDL

NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, PHG)


PHONGBAN(MAPHG, TENPHG, TRPHG, NG_NHANCHUC)
DIADIEM_PHG(MAPHG, DIADIEM)
THANNHAN(MA_NVIEN, TENTN, PHAI, NGSINH, QUANHE)
DEAN(TENDA, MADA, DDIEM_DA, PHONG)

TTNhi-2024

Bộ
• Là các dòng của quan hệ
• Thể hiện dữ liệu cụ thể của các thuộc tính trong quan hệ

Dữ liệu cụ thể của thuộc tính

<Tung, Nguyen, 12/08/1955, 638 NVC, Q5, Nam, 40000, 5>

TTNhi-2024

13
2/29/2024

Miền giá trị


• Là tập các giá trị nguyên tố gắn liền với một thuộc tính

Chuỗi ký tự Số

<Tung, Nguyen, 12/08/1955, 638 NVC, Q5, Nam, 40000, 5>

TTNhi-2024

Ràng buộc toàn vẹn (RBTV)


• RBTV là những qui tắc, điều kiện, ràng buộc cần được
thỏa mãn cho mọi thể thiện của CSDL quan hệ
• Siêu khóa (Super key - SK)
• Khóa (K)
• Khóa chính (Primary key - PK)
• Khóa ngoại (Foreign key - FK)

TTNhi-2024

14
2/29/2024

Ràng buộc toàn vẹn (RBTV)


• SK là tập các thuộc tính dùng để xác định tính duy nhất của mỗi bộ
trong quan hệ. Mọi lược đồ quan hệ có tối thiểu một SK.
• VD: SK1: HOTEN, PHAI, NGAYSINH, DCHI
• SK2: CMND
• SK3: MASV
• SK4: MASV, HOTEN
• K là SK bé nhất. VD: K1: CMND; K2: MASV
• PK: khi cài đặt quan hệ thành bảng (table). Chọn 1 K để cài đặt. K
được chọn gọi là PK.

TTNhi-2024

Ràng buộc toàn vẹn (RBTV)


NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, PHG)
PHONGBAN(TENPHG, MAPHG)
Khóa ngoại

Khóa chính

• Giá trị tại khóa ngoại (PHG) hoặc là bằng giá trị tại khóa chính
(MAPHG) hoặc là bằng giá trị rỗng.
• Ví dụ:

TTNhi-2024

15
2/29/2024

Minh họa RBTV

TTNhi-2024

Chuyển lược đồ ER sang thiết kế quan hệ


• Tập thực thể

Chuyển thành các


MANV
NGSINH LUONG DCHI
quan hệ có cùng TENPHG MAPHG
HONV
tên và tập thuộc NHANVIEN
(1,1)
Lam_viec
(1,n)
PHONGBAN
TENNV
tính.
PHAI
(1,1) (1,1)
La_truong_phong

PHONGBAN(TENPHG, MAPHG)

NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG)

TTNhi-2024

16
2/29/2024

Chuyển lược đồ ER sang thiết kế quan hệ


• Mối quan hệ 1-1
MANV
NGSINH LUONG DCHI
Thêm vào quan TENPHG MAPHG
HONV
hệ này thuộc NHANVIEN
NG_NHANCHUC
PHONGBAN
TENNV
tính khóa của (0,1) (1,1)
PHAI La_truong_phong
quan hệ kia.

PHONGBAN(MAPHG, TENPHG, MANV, NG_NHANCHUC)

TTNhi-2024

Chuyển lược đồ ER sang thiết kế quan hệ


• Mối quan hệ 1-n
MANV
Thêm vào quan- NGSINH LUONG DCHI TENPHG MAPHG

hệ-một thuộc HONV


(1,1) (1,n)
NHANVIEN Lam_viec PHONGBAN
tính khóa của TENNV

PHAI
quan-hệ-nhiều
NHANVIEN(MANV, TENNV, HONV, NGSINH, DCHI, PHAI, LUONG, MAPHG)

TTNhi-2024

17
2/29/2024

Chuyển lược đồ ER sang thiết kế quan hệ


• Mối quan hệ n-n
MANV
Tạo một quan hệ NGSINH LUONG DCHI
DDIEM_DA
HONV
mới có Thuộc tính MADA
TENNV NHANVIEN THOIGIAN DEAN
là những thuộc tính TENDA
PHAI (1,n) (1,n)
Phan_cong
khóa của các tập
thực thể liên quan.
PHANCONG(MANV, MADA, THOIGIAN)

TTNhi-2024

Chuyển lược đồ ER sang thiết kế quan hệ


• Thực thể yếu: MANV
NGSINH LUONG DCHI

Chuyển thành HONV

một quan hệ. TENNV NHANVIEN


(1,n)
Co_than_nhan QUANHE

Thêm vào thuộc PHAI (1,1)


NGSINH

tính khóa của PHAI


quan hệ liên THANNHAN
TENTN
quan.
THANNHAN(MANV, TENTN, PHAI, NGSINH, QUANHE)

TTNhi-2024

18
2/29/2024

Chuyển lược đồ ER sang thiết kế quan hệ


• Thuộc tính đa trị: TENPHG MAPHG DIADIEM

Chuyển thành một (1,n)


PHONGBAN
quan hệ. (1,n)

Thêm vào thuộc tính


khóa của quan hệ DIADIEM_PHONGBAN (MAPHG, DIADIEM)
liên quan.

TTNhi-2024

BÀI TẬP THỰC HÀNH

• Chuyển sơ đồ ER sang thiết kế quan hệ cho BT1 (Quản lý


cửa hàng)

• Chuyển sơ đồ ER sang thiết kế quan hệ cho BT2 (Quản lý


đề án)

TTNhi-2024

19

You might also like