I. Giới thiệu mô hình quan hệ?<br />
<br />
II. Các thành phần của mô hình quan hệ<br />
<br />
pDo<br />
<br />
tiến sĩ E. F. Codd đưa ra đầu năm 1970<br />
hình dữ liệu quan hệ:<br />
nCung cấp một cấu trúc dữ liệu đơn giản, đồng bộ<br />
nCó nền tảng lý thuyết vững chắc là Lý thuyết tập<br />
hợp<br />
nLà cơ sở của các HQT CSDL thương mại hiện nay:<br />
pOracle, MySQL, SQL Server…<br />
<br />
CHƯƠNG III:<br />
<br />
pMô<br />
<br />
MÔ HÌNH CSDL QUAN<br />
HỆ<br />
<br />
pMô<br />
<br />
hình dữ liệu quan hệ và mô hình thực thể liên<br />
kết được sử dụng rộng rãi trong việc phân tích và<br />
thiết kế CSDL hiện nay.<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
1<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
3<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
1. Quan hệ<br />
p<br />
<br />
4<br />
<br />
*Lược đồ quan hệ<br />
<br />
Là tập hợp các thông tin lưu trữ trong CSDL được tổ<br />
chức dưới dạng bảng 2 chiều<br />
n Mỗi bảng 2 chiều gồm các cột – hàng chứa các<br />
thông tin liên quan nhau là một quan hệ<br />
TENNV<br />
<br />
HONV<br />
<br />
NS<br />
<br />
DIACHI<br />
<br />
GT<br />
<br />
LUONG<br />
<br />
PHG<br />
<br />
Tung<br />
<br />
Nguyen<br />
<br />
12/08/1955<br />
<br />
638 NVC Q5<br />
<br />
Nam<br />
<br />
40000<br />
<br />
5<br />
<br />
Hang<br />
<br />
Bui<br />
<br />
07/19/1968<br />
<br />
332 NTH Q1<br />
<br />
Nu<br />
<br />
25000<br />
<br />
4<br />
<br />
Nhu<br />
<br />
Le<br />
<br />
06/20/1951<br />
<br />
291 HVH QPN<br />
<br />
Nu<br />
<br />
43000<br />
<br />
4<br />
<br />
Hung<br />
<br />
Nguyen<br />
<br />
09/15/1962<br />
<br />
Ba Ria VT<br />
<br />
Nam<br />
<br />
38000<br />
<br />
5<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
p<br />
<br />
Mỗi một Quan hệ xác định:<br />
n Tên quan hệ ó phân biệt với các quan hệ khác<br />
n Tập hợp các cột ó các thuộc tính của quan hệ<br />
p Cố định,<br />
p Được đặt tên,<br />
p Có kiểu dữ liệu xác định, các giá trị trong một cột<br />
phải cùng kiểu,<br />
<br />
p<br />
<br />
p<br />
<br />
p<br />
<br />
n<br />
<br />
5<br />
<br />
Tập hợp các dòng ó các bản ghi của quan hệ<br />
p Thay đổi theo thời gian<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
p<br />
<br />
11/15/18<br />
<br />
6<br />
<br />
Lược đồ quan hệ: nhằm mục đích mô tả ngắn gọn cấu trúc<br />
của một quan hệ và mối liên hệ giữa các thuộc tính trong<br />
quan hệ đó<br />
Lược đồ quan hệ được xác định gồm:<br />
n Tên của quan hệ và tên của các thuộc tính<br />
n Bậc: là số thuộc tính của lược đồ<br />
n Các mô tả để xác định ý nghĩa và mối quan hệ giữa thuộc<br />
tính (nếu có)<br />
Ký hiệu lược đồ quan hệ:<br />
Tên Quan hệ (Ds các thuộc tính)<br />
VD:<br />
n NHANVIEN( MNV, Hoten, NS, QueQuan, HSL)<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
2. Bộ<br />
<br />
*Lược đồ CSDL<br />
Gồm nhiều lược đồ quan hệ cùng nằm trong một hệ<br />
thống quản lý ó tập hợp các bảng được quản lý<br />
trong một file CSDL<br />
p Ví dụ:<br />
p<br />
<br />
Lược đồ CSDL<br />
<br />
NHANVIEN (MANV, TENNV, HONV, NS, DIACHI, GT, LUONG, PHG)<br />
PHONGBAN (MAPHG, TENPHG, TRPHG, NG_NHANCHUC)<br />
DIADIEM_PHG (MAPHG, DIADIEM)<br />
THANNHAN (MA_NVIEN, TENTN, GT, NS, QUANHE)<br />
DEAN (TENDA, MADA, DDIEM_DA, PHONG)<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
11/15/18<br />
<br />
11<br />
<br />
11/15/18<br />
<br />
8<br />
<br />
3. Miền giá trị<br />
<br />
p Bộ:<br />
<br />
Miền giá trị của thuộc tính A,<br />
Ký hiệu: Dom(A) hoặc D(A),<br />
n là tập tất cả các giá trị mà thuộc tính A có thể nhận<br />
được<br />
p Miền giá trị có các kiểu: Liệt kê hoặc Khoảng con<br />
p Ví dụ<br />
n Dom(Gioitinh) = { nam, nữ }<br />
n Dom(Mauda) = {da trắng, da vàng, da đen, da đỏ}<br />
n Dom(Diemthi) = { 0 -> 10 }<br />
n Dom(Luong) = { float }<br />
n …<br />
p<br />
<br />
Là các dòng biểu diễn của quan hệ (trừ dòng tiêu đề tên của các thuộc tính) ó Bộ là tập hợp thông tin<br />
của một thực thể cụ thể<br />
n Là tập mỗi giá trị liên quan của tất cả các thuộc tính<br />
của một lược đồ quan hệ<br />
p Bộ là thể hiện dữ liệu cụ thể của các thuộc tính trong<br />
quan hệ<br />
n<br />
<br />
TENNV<br />
<br />
HONV<br />
<br />
NS<br />
<br />
DIACHI<br />
<br />
GT<br />
<br />
LUONG<br />
<br />
PHG<br />
<br />
Tung<br />
<br />
Nguyen<br />
<br />
12/08/1955<br />
<br />
638 NVC Q5<br />
<br />
Nam<br />
<br />
40000<br />
<br />
5<br />
<br />
Hang<br />
<br />
Bui<br />
<br />
07/19/1968<br />
<br />
332 NTH Q1<br />
<br />
Nu<br />
<br />
25000<br />
<br />
4<br />
<br />
Nhu<br />
<br />
Le<br />
<br />
06/20/1951<br />
<br />
291 HVH QPN<br />
<br />
Nu<br />
<br />
43000<br />
<br />
4<br />
<br />
Hung<br />
<br />
Nguyen<br />
<br />
09/15/1962<br />
<br />
Ba Ria VT<br />
<br />
Nam<br />
<br />
38000<br />
<br />
5<br />
<br />
bộ<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
12<br />
<br />
n<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
13<br />
<br />
III.Các đặc trưng của quan hệ<br />
<br />
4. Liên kết<br />
pLiên<br />
<br />
kết là thể hiện mối quan hệ ràng buộc giữa các<br />
bảng (quan hệ)<br />
ploại liên kết:<br />
nLiên kết một – một<br />
nLiên kết một – nhiều<br />
<br />
p<br />
<br />
IV. Ràng buộc lược đồ quan hệ<br />
<br />
Thứ tự các bộ trong quan hệ là không quan trọng<br />
<br />
p<br />
<br />
HONV<br />
<br />
TENNV<br />
<br />
NGSINH<br />
<br />
DCHI<br />
<br />
PHAI<br />
<br />
LUONG<br />
<br />
PHG<br />
<br />
Nguyen<br />
Bui<br />
Le<br />
Nguyen<br />
<br />
Tung<br />
Hang<br />
Nhu<br />
Hung<br />
<br />
12/08/1955<br />
07/19/1968<br />
06/20/1951<br />
09/15/1962<br />
<br />
638 NVC Q5<br />
332 NTH Q1<br />
291 HVH QPN<br />
null<br />
<br />
Nam<br />
Nu<br />
Nu<br />
Nam<br />
<br />
40000<br />
25000<br />
43000<br />
38000<br />
<br />
5<br />
4<br />
4<br />
5<br />
<br />
p<br />
<br />
p<br />
<br />
Thứ tự giữa các giá trị trong một bộ là quan trọng<br />
Bộ: <br />
<br />
p<br />
<br />
khác<br />
Bộ: <br />
p<br />
<br />
p<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
15<br />
<br />
Mỗi giá trị trong một bộ<br />
n Hoặc là một giá trị nguyên tố<br />
n Hoặc là một giá trị rỗng (null)<br />
Không có bộ nào trùng nhau: giống nhau về giá trị trên<br />
thuộc tính khóa<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
1.Ràng buộc Khóa<br />
p<br />
<br />
p<br />
p<br />
<br />
p<br />
<br />
11/15/18<br />
<br />
18<br />
<br />
p<br />
<br />
p<br />
<br />
p<br />
<br />
p<br />
<br />
p<br />
<br />
p<br />
<br />
p Yêu<br />
<br />
21<br />
<br />
17<br />
<br />
cầu: Bộ được tham chiếu đến phải tồn tại<br />
<br />
trước<br />
S<br />
<br />
R<br />
<br />
PHONGBAN (TENPHG, MAPHG)<br />
Quan hệ bị tham chiếu<br />
<br />
11/15/18<br />
<br />
Là thuộc tính của một quan hệ này lấy giá trị trong<br />
một thuộc tính của quan hệ khác.<br />
<br />
NHANVIEN (MANV, TENNV, HONV, NS, DCHI, GT, LUONG, PHG)<br />
Khóa ngoại<br />
<br />
TENPHG<br />
<br />
MAPHG<br />
<br />
Nghien cuu<br />
<br />
5<br />
<br />
Dieu hanh<br />
<br />
4<br />
<br />
Quan ly<br />
<br />
1<br />
<br />
TENNV<br />
<br />
HONV<br />
<br />
NS<br />
<br />
DCHI<br />
<br />
GT<br />
<br />
LUONG<br />
<br />
PHG<br />
<br />
Tung<br />
<br />
Nguyen<br />
<br />
12/08/1955<br />
<br />
638 NVC Q5<br />
<br />
Nam<br />
<br />
40000<br />
<br />
5<br />
<br />
Hang<br />
<br />
Bui<br />
<br />
07/19/1968<br />
<br />
332 NTH Q1<br />
<br />
Nu<br />
<br />
25000<br />
<br />
4<br />
<br />
Nhu<br />
<br />
Le<br />
<br />
06/20/1951<br />
<br />
291 HVH QPN<br />
<br />
Nu<br />
<br />
43000<br />
<br />
4<br />
<br />
Hung<br />
<br />
Nguyen<br />
<br />
09/15/1962<br />
<br />
Ba Ria VT<br />
<br />
Nam<br />
<br />
38000<br />
<br />
5<br />
<br />
Khóa chính<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
19<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
20<br />
<br />
Bảng tầm ảnh hưởng<br />
<br />
pRBTV<br />
<br />
của CSDL được xác định bởi 3 thành phần:<br />
• Nội dung: phát biểu của RBTV<br />
• Bối cảnh: là tên các quan hệ có liên quan khi xảy ra RBTV<br />
• Bảng tầm ảnh hưởng:<br />
ü<br />
Xác định thao tác cập nhật nào cần phải kiểm tra RBTV khi<br />
được thực hiện trên quan hệ bối cảnh<br />
ü<br />
Xác định thời điểm cần thiết phải tiến hành kiểm tra RBTV<br />
(thêm/sửa/xóa)<br />
<br />
Tên_RB<br />
Quan hệ 1<br />
Quan hệ 2<br />
<br />
Thêm<br />
+<br />
<br />
Xóa<br />
<br />
Sửa<br />
<br />
-(*)<br />
<br />
+ (Thuộc tính)<br />
<br />
-<br />
<br />
+<br />
<br />
-<br />
<br />
-<br />
<br />
+<br />
<br />
-<br />
<br />
…<br />
<br />
Quan hệ n<br />
<br />
(+) Xảy ra Vi phạm RBTV<br />
(-) Không xảy ra vi phạm RBTV<br />
+(Thuộc tính): xảy ra RBTV khi thao tác trên thuộc tính<br />
-(*): không thể gây ra vi phạm RBTV do thao tác không thực hiện được<br />
<br />
Name: Text(30)<br />
Tuổi: >=1 and now( )<br />
11/15/18<br />
<br />
p<br />
<br />
4. Biểu diễn Ràng buộc<br />
<br />
Mỗi thuộc tính khi nhập dữ liệu thì giá trị phải đảm bảo<br />
phù hợp với miền giá trị của thuộc tính đã quy định<br />
Ràng buộc miền giá trị thỏa mãn:<br />
p giá trị của mỗi thuộc tính phải là một giá trị nguyên tử, Gồm:<br />
p Kiểu số nguyên: short integer, integer, long integer<br />
p Kiểu số thực: float, double, float.<br />
p Kiểu dữ liệu ký tự (text): dãy ký tự với độ dài cố định,<br />
thay đổi<br />
p Kiểu ngày, thời gian (date/time) và tiền tệ (currency)<br />
n giá trị chỉ được nhập trong các giá trị cho phép (dom(A))<br />
Ví dụ:<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
2. Ràng buộc tham chiếu<br />
<br />
Khóa ngoại là Khóa chính của một quan hệ được đưa sang<br />
làm một thuộc tính của một quan hệ khác.<br />
Dùng để thể hiện mối quan hệ giữa các bảng, giúp tham chiếu<br />
dữ liệu hay kết nối các quan hệ trong một cơ sở dữ liệu với<br />
nhau.<br />
Các yêu cầu ràng buộc khóa ngoại:<br />
n không cần cùng tên với khóa chính<br />
n bắt buộc cùng kiểu với khóa chính của bảng kia<br />
n Chỉ nhận giá trị đã có tương ứng của khóa chính<br />
VD:<br />
Quan hệ tham chiếu<br />
<br />
3. Ràng buộc miền giá trị<br />
p<br />
<br />
16<br />
<br />
*. Khóa ngoại<br />
<br />
Khi cài đặt một quan hệ phải xác định thuộc tính làm khóa<br />
ó Thuộc tính được chọn gọi là khóa chính (PK - primary<br />
key)<br />
Ý nghĩa: Khóa chính dùng để xác định duy nhất một bộ<br />
trong quan hệ.<br />
Ràng buộc thuộc tính khóa – khóa chính:<br />
n Các giá trị trong thuộc tính khóa không được trùng nhau,<br />
n Các thuộc tính khóa chính phải có giá trị khác null,<br />
n Các thuộc tính khóa chính thường được ký hiệu gạch<br />
dưới<br />
Ví dụ:<br />
NHANVIEN (MANV, TENNV, HONV, NS, DCHI, GT,<br />
LUONG, PHG)<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
Ràng buộc là những quy tắc bắt buộc dữ liệu phải<br />
tuân theo nhằm đảm bảo tính tin cậy và độ chính xác<br />
của dữ liệu.<br />
Ràng buộc toàn vẹn (RBTV) là các điều kiện bất<br />
biến không được vi phạm trong một CSDL ó phải<br />
đảm bảo khi nhập dữ liệu cho quan hệ<br />
Các loại ràng buộc cơ bản:<br />
n Ràng buộc khóa (Key Constraints)<br />
n Ràng buộc miền giá trị (Domain Constraints)<br />
n Ràng buộc toàn vẹn tham chiếu (Referential<br />
Integrity Constraints).<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
22<br />
<br />
Cơ sở<br />
dữ liệu Khoa<br />
CNTH<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
23<br />
<br />
Cơ sở<br />
dữ liệu Khoa<br />
CNTH<br />
<br />
Ví dụ 2<br />
<br />
Ví dụ 1<br />
pXét<br />
<br />
pXét<br />
<br />
lược đồ quan hệ<br />
(MANV, HT, NS, GT, DC, LUONG)<br />
Giới tính của nhân viên là Nam hoặc Nữ<br />
<br />
hiện:<br />
dung: Thời gian tham gia dự án của nhân viên không quá 60 giờ<br />
nBối cảnh: LAMVIEC<br />
nBảng tầm ảnh hưởng:<br />
<br />
hiện:<br />
dung: GT của nhân viên chỉ có thể là Nam hoặc Nữ<br />
nBối cảnh: NHANVIEN<br />
nBảng tầm ảnh hưởng:<br />
<br />
NHANVIEN<br />
<br />
Sửa<br />
<br />
+<br />
<br />
-<br />
<br />
+(GT)<br />
<br />
LAMVIEC<br />
<br />
24<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
các lược đồ quan hệ<br />
DATHANG(MADH, MAKH, NGAYDH)<br />
GIAOHANG(MAGH, MADH, NGAYGH)<br />
pRBTV: Với mỗi một đơn hàng, phải có ngày đặt hàng trước ngày giao hàng<br />
<br />
nNội<br />
<br />
nNội<br />
<br />
Xóa<br />
<br />
pXét<br />
<br />
pThực<br />
<br />
pThực<br />
<br />
Thêm<br />
<br />
lược đồ quan hệ: PHANCONG( MNV, MDA, SoGio)<br />
Thời gian tham gia đề án của một nhân viên không quá 15 giờ<br />
<br />
pRBTV:<br />
<br />
nNHANVIEN<br />
pRBTV:<br />
<br />
Ví dụ 3<br />
<br />
Cơ sở<br />
dữ liệu Khoa<br />
CNTH<br />
<br />
Thêm<br />
<br />
Xóa<br />
<br />
Sửa<br />
<br />
+(SoGio)<br />
<br />
-<br />
<br />
+(SoGio)<br />
<br />
25<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
pThực<br />
<br />
hiện:<br />
dung: Với mỗi một đơn hàng, phải có ngày đặt hàng trước ngày giao<br />
hàng<br />
pBối cảnh: DATHANG, GIAOHANG<br />
pBảng tầm ảnh hưởng:<br />
pNội<br />
<br />
Cơ sở<br />
dữ liệu Khoa<br />
CNTH<br />
<br />
Sửa<br />
<br />
+<br />
<br />
+ (MGAYDH)<br />
<br />
GIAOHANG<br />
<br />
+<br />
<br />
-<br />
<br />
+ (NGAYGH)<br />
26<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Cơ sở<br />
dữ liệu Khoa<br />
CNTH<br />
<br />
* Ví dụ:<br />
<br />
pQui<br />
<br />
tắc 1: Chuyển kiểu thực thể mạnh<br />
nChuyển đổi mỗi kiểu thực thể mạnh thành một lược đồ<br />
quan hệ (tên trùng hoặc đặt mới)<br />
nQuan hệ mới gồm:<br />
üCác thuộc tính đơn giản của kiểu thực thể ban đầu<br />
üQuan hệ mới không chứa thuộc tính đa trị và suy dẫn<br />
üThuộc tính khóa giữ nguyên<br />
<br />
quy tắc chuyển đổi<br />
pVí dụ cụ thể<br />
<br />
Xóa<br />
<br />
-<br />
<br />
1. Các quy tắc chuyển đổi<br />
<br />
III. Chuyển đổi mô hình ER sang quan hệ<br />
pCác<br />
<br />
Thêm<br />
DATHANG<br />
<br />
Dem<br />
<br />
Ho<br />
<br />
Ten<br />
GT<br />
<br />
Name<br />
MaNV<br />
<br />
DChi<br />
<br />
DThoai<br />
<br />
He SL<br />
EMPLOYEE<br />
<br />
NS<br />
<br />
Luong<br />
<br />
Number<br />
<br />
Locations<br />
<br />
Name<br />
DEPARTMENT<br />
<br />
Lưu ý: Thuộc tính Locations không có trong quan hệ vì nó là thuộc tính đa trị.<br />
Number<br />
Name<br />
PROJECT<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
27<br />
<br />
tắc 2: Chuyển thuộc tính đa trị<br />
thuộc tính đa trị sinh ra một quan hệ mới<br />
pTên đặt mới phù hợp<br />
nQuan hệ mới gồm:<br />
üthuộc tính khóa của quan hệ ban đầu<br />
üthuộc tính gây ra sự đa trị<br />
üKhóa của quan hệ mới là cả 2 thuộc tính<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
28<br />
<br />
pQui<br />
<br />
11/15/18<br />
<br />
30<br />
<br />
pQui<br />
<br />
tắc 3: Chuyển Thực thể yếu (Weak Entity)<br />
thực thể yếu trong mô hình ER, tạo thành một<br />
quan hệ mới (tên cùng tên hoặc đổi mới)<br />
nQuan hệ mới gồm:<br />
üTất cả thuộc tính của thực thể yếu<br />
üThêm thuộc tính khóa của quan hệ chủ<br />
üKhóa của quan hệ mới gồm thuộc tính khóa của<br />
quan hệ chủ và thuộc tính khóa của thực thể yếu<br />
<br />
nMỗi<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Location<br />
<br />
Number<br />
<br />
nMỗi<br />
<br />
Locations<br />
<br />
Name<br />
DEPARTMENT<br />
<br />
11/15/18<br />
<br />
31<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
33<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
34<br />
<br />
Ví dụ<br />
pNHÂN<br />
<br />
VIÊN( Mã NV, Họ tên, Ngày sinh, HSL)<br />
pTHÂN NHÂN( TEN, Giới tính, Ngày sinh, Quan hệ, Mã NV)<br />
<br />
Ngày sinh<br />
<br />
Ho Tên<br />
<br />
Mã NV<br />
<br />
p<br />
<br />
Qui tắc 4: Chuyển liên kết quan hệ nhiều - nhiều<br />
liên kết quan hệ sẽ được chuyển thành một lược đồ quan hệ mới<br />
(tên của mối kết hợp sẽ là tên của lược đồ quan hệ hoặc tùy ý)<br />
nQuan hệ mới gồm:<br />
pHai khóa của kiểu thực thể tham gia vào mối liên kết.<br />
pThuộc tính của mối liên kết (nếu có)<br />
pKhóa của quan hệ mới là 2 thuộc tính khóa của thực thể ban đầu<br />
Ví dụ:<br />
nMột<br />
<br />
HSL<br />
p<br />
<br />
NHÂN VIÊN<br />
<br />
p<br />
<br />
Qui tắc 5: Chuyển quan hệ một - nhiều<br />
Đặt khóa của thực thể bên phía một và các thuộc tính của<br />
mối liên kết vào quan hệ của thực thể bên phía nhiều.<br />
Ví dụ:<br />
<br />
n<br />
p<br />
<br />
MANV<br />
<br />
NS<br />
<br />
LUONG<br />
<br />
DCHI<br />
<br />
TENPHG<br />
<br />
MAPHG<br />
<br />
HONV<br />
<br />
1<br />
<br />
NHANVIEN<br />
<br />
TENNV<br />
<br />
Có<br />
<br />
(1,n)<br />
<br />
(1,1)<br />
<br />
Lam_viec<br />
<br />
PHONGBAN<br />
<br />
GT<br />
<br />
n<br />
<br />
THÂN NHÂN<br />
<br />
Tên<br />
<br />
Giới tính<br />
<br />
Ngày sinh<br />
<br />
Quan hệ<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
35<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
36<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
39<br />
<br />
2. Ví dụ áp dụng<br />
pQui<br />
<br />
Qui tắc 6: Chuyển quan hệ một – một<br />
Đặt khóa của thực thể bên phía tùy chọn vào làm thuộc tính<br />
ở bên phía bắt buộc<br />
n Nếu liên kết có thuộc tính thì thuộc tính đặt trong quan hệ<br />
bên phía bắt buộc<br />
p Ví dụ:<br />
p<br />
<br />
n<br />
<br />
MANV<br />
<br />
NS<br />
<br />
LUONG<br />
<br />
DCHI<br />
<br />
TENPHG<br />
<br />
1<br />
<br />
NHANVIEN<br />
<br />
quản lý<br />
<br />
1<br />
<br />
pVí<br />
<br />
ra mối quan hệ (R) mới (đặt tên tùy ý)<br />
hệ mới gồm:<br />
pThuộc tính khóa của các thực thể tham gia liên kết<br />
pThuộc tính của mỗi liên kết(nếu có)<br />
pKhóa là tất cả các thuộc tính khóa<br />
<br />
dụ : Xây dựng các lược đồ quan hệ từ mô hình ER<br />
<br />
nTạo<br />
<br />
nQuan<br />
<br />
pVí<br />
<br />
MAPHG<br />
<br />
Số tầng<br />
<br />
NHÀ<br />
<br />
1<br />
<br />
Mã phòng<br />
<br />
Có<br />
<br />
n<br />
<br />
Tên phòng<br />
<br />
PHÒNG<br />
<br />
1<br />
<br />
1<br />
<br />
Người quản ly<br />
<br />
SUPPLIER<br />
<br />
PHONGBAN<br />
<br />
Số nhà<br />
<br />
dụ:<br />
SuppID<br />
<br />
HONV<br />
TENNV<br />
<br />
tắc 7: Chuyển cho mối liên kết có bậc >2,<br />
<br />
QUANTITY<br />
<br />
ProjectID<br />
<br />
SUPPLY<br />
<br />
Chứa<br />
<br />
Làm trưởng<br />
phòng<br />
<br />
PROJECT<br />
1<br />
<br />
GT<br />
<br />
PART<br />
<br />
n<br />
<br />
SINH VIÊN<br />
<br />
PartID<br />
<br />
StartDate<br />
Mã SV<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
42<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Họ tên<br />
<br />
p Qua<br />
<br />
Tên<br />
<br />
Ngày sinh Giới tính<br />
<br />
HSL<br />
<br />
Địa chỉ<br />
<br />
Lương<br />
<br />
Tên<br />
<br />
Làm việc cho<br />
<br />
Mã số<br />
Ngoại ngữ<br />
<br />
45<br />
<br />
NHÂN VIÊN<br />
1<br />
<br />
Mã số<br />
<br />
Địa điểm<br />
<br />
1<br />
<br />
ĐƠN VỊ<br />
<br />
n<br />
m<br />
<br />
1<br />
<br />
Kiểm soát<br />
<br />
Làm việc<br />
<br />
n<br />
<br />
n<br />
Số giờ<br />
<br />
DỰ ÁN<br />
T/g bắt đầu<br />
Tên<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Mã số<br />
<br />
11/15/18<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
Tên SV<br />
<br />
Giới tính<br />
<br />
Đối tượng<br />
11/15/18<br />
<br />
Tên lớp<br />
47<br />
<br />
Ví dụ 3<br />
<br />
Ví dụ : Xây dựng các lược đồ quan hệ từ mô hình ER<br />
Họ đệm<br />
<br />
11/15/18<br />
<br />
Địa điểm<br />
<br />
48<br />
<br />
quá trình khảo sát, điều tra hoạt động của một trường đại học ta rút ra các quy<br />
tắc quản lý sau:<br />
nMột trường chia làm nhiều khoa, mỗi khoa gồm các thông tin: mã khoa, tên khoa<br />
và địa điểm. Mỗi khoa có thể đặt ở nhiều nơi khác nhau<br />
nMỗi khoa cung cấp nhiều môn học. Mỗi môn học thuộc về 1 khoa (thuộc quyền<br />
quản lý của 1 khoa). Mỗi môn học gồm các thông tin: Mã môn học, tên môn học,<br />
học kỳ, số trình, số tiết (mỗt trình có 15 tiết)<br />
nMỗi khoa thuê nhiều giáo viên giảng dạy. Nhưng mỗi giáo viên chỉ làm việc cho 1<br />
khoa. Mỗi khoa có 1 chủ nhiệm khoa, đó là một giáo viên. Mỗi giáo viên có thể dạy<br />
nhiều nhất 4 môn học và có thể không dạy môn học nào. Mỗi giáo viên gồm: mã<br />
GV, họ tên, ngày sinh, giới tính, trình độ, chuyên môn.<br />
nMột khoa quản lý nhiều lớp, mỗi lớp có nhiều sinh viên, một sinh viên chỉ thuộc<br />
một lớp. Mỗi lớp gồm: mã lớp, tên lớp, sĩ số, năm bắt đâu, năm kết thúc. Mỗi sinh<br />
viên học 4 năm ra trường.<br />
nMỗi sinh viên có thể học nhiều môn học, nhưng ít nhất là 1 môn. Khi SV học phải<br />
lưu lại điểm của SV đó. Mỗi môn học có thể có nhiều sinh viên học, có thể không<br />
có sinh viên nào. Mỗi sinh viên gồm các thông tin: mã sinh viên, họ tên, giới tính,<br />
quê quán, địa chỉ mail.<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
49<br />
<br />
pYêu<br />
<br />
cầu:<br />
định thực thể và các thuộc tính<br />
nXác định các mối quan hệ giữa các thực thể<br />
nVẽ mô hình ER của bài toán<br />
nÁp dụng nguyên tắc để xây dựng mô hình CSDL<br />
quan hệ<br />
nCài đặt bằng hệ quản trị CSDL cụ thể<br />
nXác<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
50<br />
<br />
Bài tập Áp dụng<br />
pVí<br />
<br />
dụ 3: Cho mô hình quan niệm dữ liệu của hệ thống quản lý bán hàng của công ty ABC. Mô tả về hệ thống<br />
như sau:<br />
pCông ty kinh doanh nhiều loại mặt hàng gia dụng theo phƣơng thức bán sỉ và giao hàng tận nơi, thông qua<br />
điện thoại, mạng Internet, hoặc trực tiếp đặt hàng từ khách mua.<br />
pThông qua nhu cầu, khách hàng yêu cầu đặt hàng, nhân viên phụ trách của công ty sẽ lập phiếu đặt hàng cho<br />
khách với các sản phẩm yêu cầu. Thông tin đơn đặt hàng bao gồm số đơn đặt hàng, ngày, giờ, mã sản phẩm,<br />
số lượng, đơn giá cùng với thông tin của khách hàng nhƣ họ tên khách hàng, địa chỉ, điện thoại, email. Mỗi<br />
sản phẩm có một mã số, một mô tả sản phẩm, công dụng, giá bán thống nhất.<br />
pBộ phận phụ trách các đơn đặt hàng gồm 5 nhân viên, mỗi nhân viên có mã số, tên nhân viên, điện tthoại,<br />
chức vụ đƣợc ghi nhận trên đơn đặt hàng. Khi đơn đặt hàng đƣợc giải quyết, chính nhân viên đó sẽ ghi hoá<br />
đơn cho khách và hoá đơn sẽ đƣợc chuyển xuống bộ phận kho để đóng gói và giao hàng cho khách. Khi có<br />
vài sản phẩm bị thiếu, cùng với hoá đơn của sản phẩm đƣợc gởi, nhân viên sẽ có thêm ghi chú cho khách rõ.<br />
Đối với đơn đặt hàng chƣa giải quyết đƣợc hết thì phải xếp chờ. Ngay khi bộ phận kho nhập vào sản phẩm<br />
mới thì đơn hàng sẽ đƣợc giải quyết ngay theo thứ tự.<br />
<br />
pThiết<br />
<br />
kế cơ sở dữ liệu từ tài liệu nguồn theo dõi bán<br />
<br />
hàng<br />
<br />
BUỔI SAU<br />
-CÁC NHÓM NỘP PHÁT BIỂU BÀI<br />
TOÁN VÀ MÔ HÌNH THỰC THỂ<br />
-LÀM BÀI TẬP “QLY ĐIỂM SINH VIÊN”<br />
<br />
CSDL<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
51<br />
<br />
Yêu cầu buổi sau<br />
pThực<br />
<br />
hiện trên Bài tập lớn<br />
pYêu cầu:<br />
nPhát biểu bài toán<br />
nXác định thực thể và các thuộc tính<br />
nXác định các mối quan hệ giữa các thực<br />
thể<br />
nVẽ mô hình ER của bài toán<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
56<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
54<br />
<br />
Chủ động – Tích cực Học tập<br />
<br />
11/15/18<br />
<br />
55<br />
<br />