SlideShare a Scribd company logo
1 of 42
Session 2
E-R (Entity Relationship)
Model and Normalization
RDBMS and Data Management/ Session 2/2 of 15
Mục tiêu bài học
 Định nghĩa và mô tả về mô hình hóa dữ liệu.
 Nhận biết và mô tả các thành phần mô hình
E-R
 Nhận biết các quan hệ giữa các thực thể
 Giải thích về lược đồ E-R, các ký hiệu sử dụng
để vẽ và thể hiện các quan hệ
 Mô tả về các dạng chuẩn
 Các toán tử quan hệ
RDBMS and Data Management/ Session 2/3 of 15
Data Modeling
 Data Model - là nhóm các công cụ lý thuyết mô tả
dữ liệu, các mối quan hệ và ngữ nghĩa của chúng.
Mô hình dữ liệu cũng bao gồm các ràng buộc toàn
vẹn mà dữ liệu phải tuân theo.
 Mô hình hóa dữ liệu có thể được chia làm ba bước
chính sau:
 Conceptual Data Modeling (khái niệm)
 Logical Data Modeling
 Physical Data Modeling
RDBMS and Data Management/ Session 2/4 of 15
Data Modeling
RDBMS and Data Management/ Session 2/5 of 15
Entity-Relationship (ER) model 1-4
 Các mô hình dữ liệu được phân thành ba nhóm khác nhau
 Object-based logical models
 Record-based logical models
 Physical models
 Mô hình Entity-Relationship (E-R) thuộc về nhóm đầu tiên. Mô hình
dựa trên ý tưởng đơn giản: Dữ liệu có thể được nhận biết như là các
đối tượng trong thế giới thực gọi là thực thể và các mối quan hệ tồn
tại giữa chúng.
 Mô hình E-R gồm 5 thành phần cơ bản:
 Entity (thực thể)
 Relationship (quan hệ)
 Attributes (thuộc tính)
 Entity Set (tập thực thể)
 Relationship Set (tập quan hệ)
RDBMS and Data Management/ Session 2/6 of 15
Entity-Relationship (ER) model 1-4















Accounts
Production
Human Resource
Logistics
works in
Employee
Entity Set
Employee
Entities
Department
Entity Set
Department
Entities
Relationship
Set
RDBMS and Data Management/ Session 2/7 of 15
Entity-Relationship (ER) model 2-4
 Mối quan hệ gắn kết một hay nhiều thực
thể với nhau, được phân làm 3 loại:
 Self relationships: Các mối quan hệ giữa các
thực thể trong cùng tập thực thể.
RDBMS and Data Management/ Session 2/8 of 15
Entity-Relationship (ER) model 2-4
 Binary relationships: Các mối quan hệ tồn
tại giữa các thực thể của hai tập thực thể khác
nhau.
RDBMS and Data Management/ Session 2/9 of 15
Entity-Relationship (ER) model 2-4
 Ternary relationships: Mối quan hệ tồn tại
giữa ba thực thể của các tập thực thể khác
nhau.
RDBMS and Data Management/ Session 2/10 of 15
Entity-Relationship (ER) model 3-4
 Các mối quan hệ có thể được phân loại theo yếu tố ánh xạ
như sau:
 One-to-One: Loại ánh xạ này tồn tại khi một thực thể của một
tập thực thể có thể gắn kết chỉ với một thực thể của tập thực thể
khác.
f
Vehicle
Entity Set
registration
Registration
Entity Set
RDBMS and Data Management/ Session 2/11 of 15
Entity-Relationship (ER) model 3-4
 Các mối quan hệ có thể được phân loại theo yếu tố ánh xạ
như sau:
 One-to-Many: Loại ánh xạ này tồn tại khi một thực thể của tập
thực thể có thể được gắn kết với nhiều hơn một thực thể của một
tập thực thể khác.
f
Vehicle
Entity Set
f
f
Vehicle
Entity Set
RDBMS and Data Management/ Session 2/12 of 15
 Many-to-One: Loại ánh xạ nay tồn tại khi nhiều thực thể của một
tập thực thể kết hợp với một thực thể của một tập thực thể khác.
Sự kết hợp này được thực hiện không kể thực thể kể sau đã kết
hợp với các thực thể khác hay không.
f
h
f
Vehicle
Entity set
F
Location
Entity set
Entity-Relationship (ER) model 4-4
RDBMS and Data Management/ Session 2/13 of 15
 Many-to-Many: Loại ánh xạ này tồn tại khi một số
thực thể của tập thực thể có thể kết hợp với một số
thực thể của tập thực thể khác.
Account
Entity Set


Customer
Entity Set
Entity-Relationship (ER) model 4-4
RDBMS and Data Management/ Session 2/14 of 15
 The E-R diagram is a graphical representation
of the E-R model.
 The symbols used for the various components
can be seen in the following table:
Entity-Relationship Diagrams
RDBMS and Data Management/ Session 2/15 of 15
Entity-Relationship Diagrams
RDBMS and Data Management/ Session 2/16 of 15
Entity-Relationship Diagrams
 Steps to construct an E-R diagram are:
 Tập hợp tất cả các dữ liệu cần được mô hình hóa
 Xác định dữ liệu có thể được mô hình hóa như các thực thể
thực tế
 Nhận ra các thuộc tính cho mỗi thực thể
 Phân loại các tập thực thể thành các tập thực thể mạnh hoặc
yếu
 Phân loại các thuộc tính thực thể thành thuộc tính khóa,
thuộc tính đa trị, thuộc tính phức hợp, thuộc tính dẫn xuất,
..v..v.
 Nhận ra các quan hệ giữa các thực thể khác nhau.
 Sử dụng các ký hiệu vẽ các thực thể, thuộc tính và các mối
quan hệ của chúng. Sử dụng các ký hiệu thích hợp trong khi
vẽ các thuộc tính.
RDBMS and Data Management/ Session 2/17 of 15
Customer
CusName
CusAddres
s
CusGende
r
CusPhone
CusEmail
CusUser
CusPass
SAnswer
Registerdat
e
Hav
e
Classify
N
1
ClassID
ClassName
Description
CusID
Status
RDBMS and Data Management/ Session 2/18 of 15
Customer
CusName
CusAddress
CusGender
CusPhone
CusEmail
CusUser
CusPass
SAnswer
Registerdate
Order
1
Have
N
OrdID
OrderDate
ShipAddress
Requiredate
Date
ShippedDate
ShipName
ShipPhone
Status
Have
Classify
N
1
ClassID
ClassName
Description
CusID
Status
RDBMS and Data Management/ Session 2/19 of 15
Normalization
 Chuẩn hóa là quá trình tách bảng (phân rã) thành các
bảng nhỏ hơn dựa vào các phụ thuộc hàm mà không
làm mất thông tin.
 Các dạng chuẩn là các chỉ dẫn để thiết kế các bảng
trong CSDL.
 Mục đích của chuẩn hóa là loại bỏ các dư thừa vì
 Yêu cầu về không gian lưu trữ
 Tránh các lỗi khi thao tác dữ liệu (Insert, Delete,
Update).
 Chú ý: chuẩn hóa làm tăng thời gian truy vấn.
RDBMS and Data Management/ Session 2/20 of 15
Các dạng chuẩn(Normal forms)
Bảng với
các thuộc
tính đa trị
Chuẩn 4
(4NF)
Chuẩn 1
(1NF)
Chuẩn 2
(2NF)
Chuẩn
Boyce–Codd
(BCNF)
Chuẩn 3
(3NF)
Chuẩn 5
(5NF)
Loại bỏ các
thuộc tính
đa trị
Loại bỏ các
phụ thuộc
bộ phận
Loại bỏ các
phụ thuộc
bắc cầu
Chỉ còn các phụ
thuộc X  A
mà X là khóa
Loại bỏ các
phụ thuộc
đa trị
Loại bỏ các
phụ thuộc
nối
RDBMS and Data Management/ Session 2/21 of 15
1NF (1)
 Ban đầu, Codd (1972) đã mô tả ba dạng
chuẩn (1NF, 2NF và 3NF), tất cả dựa trên sự
phụ thuộc giữa các thuộc tính của quan hệ.
 First Normal Form - Để đạt được dạng chuẩn một:
 Tạo ra các bảng riêng biệt cho mỗi nhóm dữ
liệu liên quan.
 Các cột của bảng phải có các giá trị nguyên tố
(atomic values)
 Tất cả các thuộc tính khóa phải được nhận
dạng
RDBMS and Data Management/ Session 2/22 of 15
1NF (2)
MASV HOTEN ĐIACHI
MA
MON
TEN
MON
TENGV PHONG ĐIEM
A01 Lê Na 12 Thái Hà
M01 CSDL Mai P13 8
M02 Anh 2 Lan P25 5
A03 Trần An 56 Mã Mây M01 CSDL Mai P13 6
A02 Hà Nam 34 Cầu Gỗ
M04 Toán 1 Nam P40 10
M02 Anh 2 Lan P25 7
M03 Vi mô Chi P30 9
Đây không phải là dạng chuẩn 1NF vì thuộc tính
MAMON,TENMON, TENGV, PHONG, DIEM có miền giá trị
"đa trị".
RDBMS and Data Management/ Session 2/23 of 15
1NF (3)
Nhận xét: Hai bảng quan hệ trên đều cùng quản lý một mảng thông tin của
một nhóm đối tượng, có cấu trúc logic như nhau nhưng cấu trúc vật lý khác
nhau. Bảng 1 quan hệ có 3 phần tử, bảng 2 quan hệ có 6 phần tử. Chúng ta
có thể đưa mọi quan hệ về dạng 1NF.
MASV HOTEN ĐIACHI
MA
MON
TEN
MON
TENGV PHONG ĐIEM
A01 Lê Na 12 Thái Hà M01 CSDL Mai P13 8
A01 Lê Na 12 Thái Hà M02 Anh 2 Lan P25 5
A03 Trần An 56 Mã Mây M01 CSDL Mai P13 6
A02 Hà Nam 34 Cầu Gỗ M04 Toán 1 Nam P40 10
A02 Hà Nam 34 Cầu Gỗ M02 Anh 2 Lan P25 7
A02 Hà Nam 34 Cầu Gỗ M03 Vi mô Chi P30 9
RDBMS and Data Management/ Session 2/24 of 15
Dạng chuẩn 2 - 2NF (1)
 Một quan hệ ở 2NF nếu quan hệ đó đã ở dạng 1NF và các
thuộc tính không khóa phụ thuộc hoàn toàn vào khóa.
 Bảng R có các phụ thuộc hàm sau:
 (1) Masv  Hoten, Diachi
 (2) Mamon  Tenmon, Tengv, Phong
 (3) Masv, Mamon  Điem
 (4) Tengv  Phong
 Khóa chính: Masv, Mamon.
 Tenmon, Hoten, Diachi là các thuộc tính không khóa và
chỉ phụ thuộc vào một phần của khóa  chưa đạt 2 NF.
RDBMS and Data Management/ Session 2/25 of 15
MASV HOTEN ĐIACHI
MA
MON
TEN
MON
TENGV PHONG ĐIEM
A01 Lê Na 12 Thái Hà M01 CSDL Mai P13 8
A01 Lê Na 12 Thái Hà M02 Anh 2 Lan P25 5
A03 Trần An 56 Mã Mây M01 CSDL Mai P13 6
A02 Hà Nam 34 Cầu Gỗ M04 Toán 1 Nam P40 10
A02 Hà Nam 34 Cầu Gỗ M02 Anh 2 Lan P25 7
A02 Hà Nam 34 Cầu Gỗ M03 Vi mô Chi P30 9
MASV HOTEN ĐIACHI
A01 Lê Na 12 Thái Hà
A03 Trần An 56 Mã Mây
A02 Hà Nam 34 Cầu Gỗ
MA
MON
TEN
MON
TENGV PHONG
M01 CSDL Mai P13
M02 Anh 2 Lan P25
M04 Toán 1 Nam P40
M03 Vi mô Chi P30
MASV
MA
MON
ĐIEM
A01 M01 8
A01 M02 5
A03 M01 6
A02 M04 10
A02 M02 7
A02 M03 9
R1 R3
R2
RDBMS and Data Management/ Session 2/26 of 15
Dạng chuẩn 2 - 2NF (2)
 Một quan hệ ở dạng 2NF nếu thỏa mãn 1 trong các điều
kiện sau
 Khóa chính chỉ gồm 1 thuộc tính.
 Bảng không có các thuộc tính không khóa.
 Tất cả các thuộc tính không khóa phụ thuộc hoàn toàn
vào tập các thuộc tính khóa chính.
 Gợi ý
 Chỉ kiểm tra các quan hệ có đạt 2NF nếu quan hệ đó có
khoá chính gồm 2 thuộc tính trở lên.
 Để chuyển quan hệ từ dạng 1NF sang dạng 2NF, ta
dùng phép chiếu.
RDBMS and Data Management/ Session 2/27 of 15
Các lỗi khi ở dạng 2NF
 Lược đồ R2(Mamon, Tenmon, Tengv, Phong) gồm các
phụ thuộc hàm:
 (2) Mamon  Tenmon, Tengv, Phong
 (4) Tengv  Phong
 R2 đạt 2NF.
 Vấn đề
 Liệu có thể phân phòng cho 1 giáo viên khi giáo viên
đó chưa dạy môn nào?
 Khi xóa 1 môn học, liệu có làm mất thông tin về giáo
viên và phòng?
 Khi đổi phòng cho 1 giáo viên thì phải cập nhật lại ở
bao nhiêu dòng?
RDBMS and Data Management/ Session 2/28 of 15
Dạng chuẩn 3 – 3NF
 Một quan hệ ở 3NF nếu quan hệ đó đã ở 2NF và không có
các phụ thuộc bắc cầu.
 Một lược đồ quan hệ R ở 3NF nếu với mọi phụ thuộc
X  A đúng trong R và A  X thì hoặc X là khóa bao
hàm hoặc A là nguyên tố.
 A là thuộc tính nguyên tố (thuộc tính khóa) nếu A là
phần tử của một khóa của R (R có thể có nhiều khóa),
ngược lại A là phi nguyên tố.
 Giả sử ta có quan hệ svien (masv, hoten, khuvuc,
congdiem)
Ta thấy nếu 1 thuộc tính được xác định bởi 1 thuộc tính không
khoá, nó gọi là thuộc tính bắc cầu. Vậy congdiem phụ thuộc
vào khuvuc. chia thành 2 quan hệ (3NF): svien (masv,
hoten, khuvuc) và khu (khuvuc, congdiem)
RDBMS and Data Management/ Session 2/29 of 15
MASV HOTEN ĐIACHI
A01 Lê Na 12 Thái Hà
A03 Trần An 56 Mã Mây
A02 Hà Nam 34 Cầu Gỗ
MA
MON
TEN
MON
TENGV PHONG
M01 CSDL Mai P13
M02 Anh 2 Lan P25
M04 Toán 1 Nam P40
M03 Vi mô Chi P30
MASV
MA
MON
ĐIEM
A01 M01 8
A01 M02 5
A03 M01 6
A02 M04 10
A02 M02 7
A02 M03 9
R1 R3
R2
MA
MON
TEN
MON
M01 CSDL
M02 Anh 2
M04 Toán 1
M03 Vi mô
TENGV PHONG
Mai P13
Lan P25
Nam P40
Chi P30
R2 R4
Mamon  Tenmon, Tengv, Phong
Tengv  Phong
MASV HOTEN ĐIACHI
A01 Lê Na 12 Thái Hà
A03 Trần An 56 Mã Mây
A02 Hà Nam 34 Cầu Gỗ
R1
MASV
MA
MON
ĐIEM
A01 M01 8
A01 M02 5
A03 M01 6
A02 M04 10
A02 M02 7
A02 M03 9
R3
RDBMS and Data Management/ Session 2/30 of 15
Relational Operators
 Mô hình quan hệ được dựa trên cơ sở đại số
quan hệ. Đại số quan hệ bao gồm tập hợp các
phép toán hoạt động trên các quan hệ.
 Mỗi toán tử giữ 1 hoặc 2 quan hệ như đầu vào
của nó và kết quả quan hệ mới là đầu ra.
 SELECT: This operator is used to extract data that
satisfies a given condition. The lowercase Greek letter
sigma, “σ”, is used to denote selection.
RDBMS and Data Management/ Session 2/31 of 15
Select
 Phép toán này rút ra các bản ghi thỏa
mãn điều kiện nào đấy.
 Gọi E là một điều kiện nào đó bao
gồm:
 Các toán hạng (hằng, tên thuộc tính, với
hằng chuỗi ta bao trong dấu nháy đơn
hoặc kép)
 Các quan hệ số học (<, =, >, , , )
 Các phép toán logic: và, hoặc và phủ định.
RDBMS and Data Management/ Session 2/32 of 15
Project
 PROJECT: This operator is used to project
certain details of a relational table. It only
displays the required details leaving out
certain columns. The PROJECT operator is
denoted by the Greek letter pi, “π”.
 phép chiếu là ta nhận được một quan hệ
từ một quan hệ đã cho bằng cách bỏ bớt
đi một số thuộc tính nào đó.
 Ví dụ có quan hệ svien (masv, ho, ten,
gtinh, nsinh, dchi, diemvt) ta lấy ra bảng
sv (masv, ho, ten, diemvt)
RDBMS and Data Management/ Session 2/33 of 15
Product
 PRODUCT: This operator is denoted by
“x”. It helps combine information from
two relational tables.
 Phép nhân kết hợp mỗi bản ghi của
bảng 1 với tất cả các bản ghi của bảng
2 tức là nó tạo ra tất cả các kết hợp có
thể có giữa các bản ghi của 2 bảng
RDBMS and Data Management/ Session 2/34 of 15
Union (1)
 UNION: The UNION operator collects data
from different tables and presents a unified
version of the complete data. The union
operation is represented by the symbol, “U”.
 Cho R và S là hai quan hệ trên cùng tập thuộc
tính U (ta gọi các quan hệ R và S là tương
thích). Khi đó hợp của quan hệ R và S là một
quan hệ H trên U, bao gồm các phần tử thuộc
R hoặc thuộc S. Hợp của R và S được ký hiệu
là R + S: R + S = {t | t  R hoặc t  S}
RDBMS and Data Management/ Session 2/35 of 15
Union (2)
A B C A B C
a1 b1 c1 x1 y1 z1
a2 b2 c2 a1 b1 c1
a3 b3 c3 x2 y2 x2
A B C
a1 b1 c1
a2 b2 c2
a3 b3 c3
x1 y1 z1
x2 y2 z2
quan hệ H = R + S là:
Cho hai quan hệ R và S như sau:
RDBMS and Data Management/ Session 2/36 of 15
Intersection(1)
 INTERSECT: This operator generates data
that holds true in all the tables it is applied
on. It is based on the intersection set
theory and is represented by the “∩”
symbol.
 Cho R và S là hai quan hệ trên cùng tập
thuộc tính U. Khi đó giao của quan hệ R và
S là một quan hệ G trên U, bao gồm các
phần tử thuộc R và thuộc S. Giao của R và
S được kí hiệu là G=R*S:
R*S = {t | t  R và t  S}
RDBMS and Data Management/ Session 2/37 of 15
Intersection (2)
A B C A B C
a1 b1 c1 x1 y1 z1
a2 b2 c2 a1 b1 c1
a3 b3 c3 x2 y2 x2
Cho hai quan hệ R và S như sau: quan hệ G = R.S là:
A B C
a1 b1 c
1
RDBMS and Data Management/ Session 2/38 of 15
DIFFERENCE (1)
 DIFFERENCE: This operator, symbolized
as “-”. It generates data from different
tables, that holds true in one table and not
the other.
 Hiệu của 2 quan hệ R và S trên cùng tập
thuộc tính U là một quan hệ T trên U, bao
gồm các phần tử thuộc R và không thuộc
S. Hiệu của R và S được kí hiệu là R - S:
R - S = {t | t  R và t  S}
RDBMS and Data Management/ Session 2/39 of 15
DIFFERENCE (2)
A B C A B C
a1 b1 c1 x1 y1 z1
a2 b2 c2 a1 b1 c1
a3 b3 c3 x2 y2 x2
Cho hai quan hệ R và S như sau: quan hệ T = R-S là:
A B C
a2 b2 C2
a3 b3 c3
RDBMS and Data Management/ Session 2/40 of 15
JOIN (1)
 JOIN: The join operation is an
enhancement to the product operation. It
allows a selection to be performed on the
product of tables.
 Cho hai quan hệ R(U), S(V). Phép kết nối
tự nhiên (Natural Join) của hai quan hệ R
và S là quan hệ được ký hiệu là P = R
|><| S trên lược đồ quan hệ U  V
gồm các phần tử t mà chiếu của t lên U
là phần tử thuộc R còn chiếu của t lên V
là phần tử thuộc S:
P = {t | t.U  R và t.V S}
RDBMS and Data Management/ Session 2/41 of 15
Phần
tử
HOTEN GIOITINH
t1 Nguyễn Văn Tuấn Nam
t2 Nguyễn Huy Khôi Nam
t3 Lê Thị Hoa Nữ
t4 Lê Thị Hiền Nữ
t5 Phạm Thị Đào Nữ
Phần
tử
HOTEN TUOI
t1 Nguyễn Văn Tuấn 30
t2 Nguyễn Huy Khôi 32
t3 Lê Thị Hoa 25
t4 Lê Thị Hiền 28
t5 Phạm Thị Đào 22
Phần tử HOTEN TUOI GIOITINH
t1 Nguyễn Văn Tuấn 30 Nam
t2 Nguyễn Huy Khôi 32 Nam
t3 Lê Thị Hoa 25 Nữ
t4 Lê Thị Hiền 28 Nữ
t5 Phạm Thị Đào 22 Nữ
RDBMS and Data Management/ Session 2/42 of 15
DIVIDE
 DIVIDE: The division operation, denoted
by “÷”, is suited to queries that include the
phrase “for all”.
 Các thuộc tính của bảng chia luôn là tập
con của bảng bị chia

More Related Content

Similar to Bài 2 1 Mô hình hóa dl.ppt

Chap03.ppsx
Chap03.ppsxChap03.ppsx
Chap03.ppsxTonMnh13
 
13929219602082.ppt
13929219602082.ppt13929219602082.ppt
13929219602082.pptminh dang
 
ERD - Database Design
ERD - Database DesignERD - Database Design
ERD - Database Designyht4ever
 
Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...
Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...
Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...BangNgoVanCong
 
W03_Thietkecosodulieulogic.pptx
W03_Thietkecosodulieulogic.pptxW03_Thietkecosodulieulogic.pptx
W03_Thietkecosodulieulogic.pptxHnginh10297
 
Bài giảng cơ sở dữ liệu
Bài giảng cơ sở dữ liệuBài giảng cơ sở dữ liệu
Bài giảng cơ sở dữ liệutrieulongweb
 
Chuong 1_Gioo thieu DB.pdf
Chuong 1_Gioo thieu DB.pdfChuong 1_Gioo thieu DB.pdf
Chuong 1_Gioo thieu DB.pdfCriz20
 
csdl - buoi1
csdl - buoi1csdl - buoi1
csdl - buoi1kikihoho
 
Csdliuihc 111212222339-phpapp02
Csdliuihc 111212222339-phpapp02Csdliuihc 111212222339-phpapp02
Csdliuihc 111212222339-phpapp02nguyen minh
 
Bài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPT
Bài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPTBài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPT
Bài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPTMasterCode.vn
 
Chương 2. Các khái niệm trong CSDL
Chương 2. Các khái niệm trong CSDL Chương 2. Các khái niệm trong CSDL
Chương 2. Các khái niệm trong CSDL Hoa Le
 
BTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptx
BTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptxBTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptx
BTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptxNguyn616695
 
Introduction to data statistics with r - Part I (in Vietnamese)
Introduction to data statistics with r - Part I (in Vietnamese)Introduction to data statistics with r - Part I (in Vietnamese)
Introduction to data statistics with r - Part I (in Vietnamese)Quang Nguyen
 

Similar to Bài 2 1 Mô hình hóa dl.ppt (20)

Chap03.ppsx
Chap03.ppsxChap03.ppsx
Chap03.ppsx
 
13929219602082.ppt
13929219602082.ppt13929219602082.ppt
13929219602082.ppt
 
Các mô hình dữ liệu
Các mô hình dữ liệuCác mô hình dữ liệu
Các mô hình dữ liệu
 
ERD - Database Design
ERD - Database DesignERD - Database Design
ERD - Database Design
 
Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...
Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...
Mô hình dữ liệu quan hệ Các khái niệm của mô hình quan hệ Ràng buộc toàn vẹn ...
 
W03_Thietkecosodulieulogic.pptx
W03_Thietkecosodulieulogic.pptxW03_Thietkecosodulieulogic.pptx
W03_Thietkecosodulieulogic.pptx
 
Bài giảng cơ sở dữ liệu
Bài giảng cơ sở dữ liệuBài giảng cơ sở dữ liệu
Bài giảng cơ sở dữ liệu
 
Chap03
Chap03Chap03
Chap03
 
Giaoandientu bai10lop12
Giaoandientu bai10lop12Giaoandientu bai10lop12
Giaoandientu bai10lop12
 
Chuong 1_Gioo thieu DB.pdf
Chuong 1_Gioo thieu DB.pdfChuong 1_Gioo thieu DB.pdf
Chuong 1_Gioo thieu DB.pdf
 
csdl - buoi1
csdl - buoi1csdl - buoi1
csdl - buoi1
 
Csdliuihc 111212222339-phpapp02
Csdliuihc 111212222339-phpapp02Csdliuihc 111212222339-phpapp02
Csdliuihc 111212222339-phpapp02
 
GIÁO TRÌNH ACCESS 2003
GIÁO TRÌNH ACCESS 2003GIÁO TRÌNH ACCESS 2003
GIÁO TRÌNH ACCESS 2003
 
C3 1
C3 1C3 1
C3 1
 
Bài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPT
Bài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPTBài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPT
Bài 6: Thiết kế cơ sở dữ liệu - Giáo trình FPT
 
Chuong 3 ER
Chuong 3 ERChuong 3 ER
Chuong 3 ER
 
Giaoandientu bai10lop12
Giaoandientu bai10lop12Giaoandientu bai10lop12
Giaoandientu bai10lop12
 
Chương 2. Các khái niệm trong CSDL
Chương 2. Các khái niệm trong CSDL Chương 2. Các khái niệm trong CSDL
Chương 2. Các khái niệm trong CSDL
 
BTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptx
BTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptxBTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptx
BTL_L07_NHÓM-6_Đề-Tài-11-ppt.pptx
 
Introduction to data statistics with r - Part I (in Vietnamese)
Introduction to data statistics with r - Part I (in Vietnamese)Introduction to data statistics with r - Part I (in Vietnamese)
Introduction to data statistics with r - Part I (in Vietnamese)
 

Bài 2 1 Mô hình hóa dl.ppt

  • 1. Session 2 E-R (Entity Relationship) Model and Normalization
  • 2. RDBMS and Data Management/ Session 2/2 of 15 Mục tiêu bài học  Định nghĩa và mô tả về mô hình hóa dữ liệu.  Nhận biết và mô tả các thành phần mô hình E-R  Nhận biết các quan hệ giữa các thực thể  Giải thích về lược đồ E-R, các ký hiệu sử dụng để vẽ và thể hiện các quan hệ  Mô tả về các dạng chuẩn  Các toán tử quan hệ
  • 3. RDBMS and Data Management/ Session 2/3 of 15 Data Modeling  Data Model - là nhóm các công cụ lý thuyết mô tả dữ liệu, các mối quan hệ và ngữ nghĩa của chúng. Mô hình dữ liệu cũng bao gồm các ràng buộc toàn vẹn mà dữ liệu phải tuân theo.  Mô hình hóa dữ liệu có thể được chia làm ba bước chính sau:  Conceptual Data Modeling (khái niệm)  Logical Data Modeling  Physical Data Modeling
  • 4. RDBMS and Data Management/ Session 2/4 of 15 Data Modeling
  • 5. RDBMS and Data Management/ Session 2/5 of 15 Entity-Relationship (ER) model 1-4  Các mô hình dữ liệu được phân thành ba nhóm khác nhau  Object-based logical models  Record-based logical models  Physical models  Mô hình Entity-Relationship (E-R) thuộc về nhóm đầu tiên. Mô hình dựa trên ý tưởng đơn giản: Dữ liệu có thể được nhận biết như là các đối tượng trong thế giới thực gọi là thực thể và các mối quan hệ tồn tại giữa chúng.  Mô hình E-R gồm 5 thành phần cơ bản:  Entity (thực thể)  Relationship (quan hệ)  Attributes (thuộc tính)  Entity Set (tập thực thể)  Relationship Set (tập quan hệ)
  • 6. RDBMS and Data Management/ Session 2/6 of 15 Entity-Relationship (ER) model 1-4                Accounts Production Human Resource Logistics works in Employee Entity Set Employee Entities Department Entity Set Department Entities Relationship Set
  • 7. RDBMS and Data Management/ Session 2/7 of 15 Entity-Relationship (ER) model 2-4  Mối quan hệ gắn kết một hay nhiều thực thể với nhau, được phân làm 3 loại:  Self relationships: Các mối quan hệ giữa các thực thể trong cùng tập thực thể.
  • 8. RDBMS and Data Management/ Session 2/8 of 15 Entity-Relationship (ER) model 2-4  Binary relationships: Các mối quan hệ tồn tại giữa các thực thể của hai tập thực thể khác nhau.
  • 9. RDBMS and Data Management/ Session 2/9 of 15 Entity-Relationship (ER) model 2-4  Ternary relationships: Mối quan hệ tồn tại giữa ba thực thể của các tập thực thể khác nhau.
  • 10. RDBMS and Data Management/ Session 2/10 of 15 Entity-Relationship (ER) model 3-4  Các mối quan hệ có thể được phân loại theo yếu tố ánh xạ như sau:  One-to-One: Loại ánh xạ này tồn tại khi một thực thể của một tập thực thể có thể gắn kết chỉ với một thực thể của tập thực thể khác. f Vehicle Entity Set registration Registration Entity Set
  • 11. RDBMS and Data Management/ Session 2/11 of 15 Entity-Relationship (ER) model 3-4  Các mối quan hệ có thể được phân loại theo yếu tố ánh xạ như sau:  One-to-Many: Loại ánh xạ này tồn tại khi một thực thể của tập thực thể có thể được gắn kết với nhiều hơn một thực thể của một tập thực thể khác. f Vehicle Entity Set f f Vehicle Entity Set
  • 12. RDBMS and Data Management/ Session 2/12 of 15  Many-to-One: Loại ánh xạ nay tồn tại khi nhiều thực thể của một tập thực thể kết hợp với một thực thể của một tập thực thể khác. Sự kết hợp này được thực hiện không kể thực thể kể sau đã kết hợp với các thực thể khác hay không. f h f Vehicle Entity set F Location Entity set Entity-Relationship (ER) model 4-4
  • 13. RDBMS and Data Management/ Session 2/13 of 15  Many-to-Many: Loại ánh xạ này tồn tại khi một số thực thể của tập thực thể có thể kết hợp với một số thực thể của tập thực thể khác. Account Entity Set   Customer Entity Set Entity-Relationship (ER) model 4-4
  • 14. RDBMS and Data Management/ Session 2/14 of 15  The E-R diagram is a graphical representation of the E-R model.  The symbols used for the various components can be seen in the following table: Entity-Relationship Diagrams
  • 15. RDBMS and Data Management/ Session 2/15 of 15 Entity-Relationship Diagrams
  • 16. RDBMS and Data Management/ Session 2/16 of 15 Entity-Relationship Diagrams  Steps to construct an E-R diagram are:  Tập hợp tất cả các dữ liệu cần được mô hình hóa  Xác định dữ liệu có thể được mô hình hóa như các thực thể thực tế  Nhận ra các thuộc tính cho mỗi thực thể  Phân loại các tập thực thể thành các tập thực thể mạnh hoặc yếu  Phân loại các thuộc tính thực thể thành thuộc tính khóa, thuộc tính đa trị, thuộc tính phức hợp, thuộc tính dẫn xuất, ..v..v.  Nhận ra các quan hệ giữa các thực thể khác nhau.  Sử dụng các ký hiệu vẽ các thực thể, thuộc tính và các mối quan hệ của chúng. Sử dụng các ký hiệu thích hợp trong khi vẽ các thuộc tính.
  • 17. RDBMS and Data Management/ Session 2/17 of 15 Customer CusName CusAddres s CusGende r CusPhone CusEmail CusUser CusPass SAnswer Registerdat e Hav e Classify N 1 ClassID ClassName Description CusID Status
  • 18. RDBMS and Data Management/ Session 2/18 of 15 Customer CusName CusAddress CusGender CusPhone CusEmail CusUser CusPass SAnswer Registerdate Order 1 Have N OrdID OrderDate ShipAddress Requiredate Date ShippedDate ShipName ShipPhone Status Have Classify N 1 ClassID ClassName Description CusID Status
  • 19. RDBMS and Data Management/ Session 2/19 of 15 Normalization  Chuẩn hóa là quá trình tách bảng (phân rã) thành các bảng nhỏ hơn dựa vào các phụ thuộc hàm mà không làm mất thông tin.  Các dạng chuẩn là các chỉ dẫn để thiết kế các bảng trong CSDL.  Mục đích của chuẩn hóa là loại bỏ các dư thừa vì  Yêu cầu về không gian lưu trữ  Tránh các lỗi khi thao tác dữ liệu (Insert, Delete, Update).  Chú ý: chuẩn hóa làm tăng thời gian truy vấn.
  • 20. RDBMS and Data Management/ Session 2/20 of 15 Các dạng chuẩn(Normal forms) Bảng với các thuộc tính đa trị Chuẩn 4 (4NF) Chuẩn 1 (1NF) Chuẩn 2 (2NF) Chuẩn Boyce–Codd (BCNF) Chuẩn 3 (3NF) Chuẩn 5 (5NF) Loại bỏ các thuộc tính đa trị Loại bỏ các phụ thuộc bộ phận Loại bỏ các phụ thuộc bắc cầu Chỉ còn các phụ thuộc X  A mà X là khóa Loại bỏ các phụ thuộc đa trị Loại bỏ các phụ thuộc nối
  • 21. RDBMS and Data Management/ Session 2/21 of 15 1NF (1)  Ban đầu, Codd (1972) đã mô tả ba dạng chuẩn (1NF, 2NF và 3NF), tất cả dựa trên sự phụ thuộc giữa các thuộc tính của quan hệ.  First Normal Form - Để đạt được dạng chuẩn một:  Tạo ra các bảng riêng biệt cho mỗi nhóm dữ liệu liên quan.  Các cột của bảng phải có các giá trị nguyên tố (atomic values)  Tất cả các thuộc tính khóa phải được nhận dạng
  • 22. RDBMS and Data Management/ Session 2/22 of 15 1NF (2) MASV HOTEN ĐIACHI MA MON TEN MON TENGV PHONG ĐIEM A01 Lê Na 12 Thái Hà M01 CSDL Mai P13 8 M02 Anh 2 Lan P25 5 A03 Trần An 56 Mã Mây M01 CSDL Mai P13 6 A02 Hà Nam 34 Cầu Gỗ M04 Toán 1 Nam P40 10 M02 Anh 2 Lan P25 7 M03 Vi mô Chi P30 9 Đây không phải là dạng chuẩn 1NF vì thuộc tính MAMON,TENMON, TENGV, PHONG, DIEM có miền giá trị "đa trị".
  • 23. RDBMS and Data Management/ Session 2/23 of 15 1NF (3) Nhận xét: Hai bảng quan hệ trên đều cùng quản lý một mảng thông tin của một nhóm đối tượng, có cấu trúc logic như nhau nhưng cấu trúc vật lý khác nhau. Bảng 1 quan hệ có 3 phần tử, bảng 2 quan hệ có 6 phần tử. Chúng ta có thể đưa mọi quan hệ về dạng 1NF. MASV HOTEN ĐIACHI MA MON TEN MON TENGV PHONG ĐIEM A01 Lê Na 12 Thái Hà M01 CSDL Mai P13 8 A01 Lê Na 12 Thái Hà M02 Anh 2 Lan P25 5 A03 Trần An 56 Mã Mây M01 CSDL Mai P13 6 A02 Hà Nam 34 Cầu Gỗ M04 Toán 1 Nam P40 10 A02 Hà Nam 34 Cầu Gỗ M02 Anh 2 Lan P25 7 A02 Hà Nam 34 Cầu Gỗ M03 Vi mô Chi P30 9
  • 24. RDBMS and Data Management/ Session 2/24 of 15 Dạng chuẩn 2 - 2NF (1)  Một quan hệ ở 2NF nếu quan hệ đó đã ở dạng 1NF và các thuộc tính không khóa phụ thuộc hoàn toàn vào khóa.  Bảng R có các phụ thuộc hàm sau:  (1) Masv  Hoten, Diachi  (2) Mamon  Tenmon, Tengv, Phong  (3) Masv, Mamon  Điem  (4) Tengv  Phong  Khóa chính: Masv, Mamon.  Tenmon, Hoten, Diachi là các thuộc tính không khóa và chỉ phụ thuộc vào một phần của khóa  chưa đạt 2 NF.
  • 25. RDBMS and Data Management/ Session 2/25 of 15 MASV HOTEN ĐIACHI MA MON TEN MON TENGV PHONG ĐIEM A01 Lê Na 12 Thái Hà M01 CSDL Mai P13 8 A01 Lê Na 12 Thái Hà M02 Anh 2 Lan P25 5 A03 Trần An 56 Mã Mây M01 CSDL Mai P13 6 A02 Hà Nam 34 Cầu Gỗ M04 Toán 1 Nam P40 10 A02 Hà Nam 34 Cầu Gỗ M02 Anh 2 Lan P25 7 A02 Hà Nam 34 Cầu Gỗ M03 Vi mô Chi P30 9 MASV HOTEN ĐIACHI A01 Lê Na 12 Thái Hà A03 Trần An 56 Mã Mây A02 Hà Nam 34 Cầu Gỗ MA MON TEN MON TENGV PHONG M01 CSDL Mai P13 M02 Anh 2 Lan P25 M04 Toán 1 Nam P40 M03 Vi mô Chi P30 MASV MA MON ĐIEM A01 M01 8 A01 M02 5 A03 M01 6 A02 M04 10 A02 M02 7 A02 M03 9 R1 R3 R2
  • 26. RDBMS and Data Management/ Session 2/26 of 15 Dạng chuẩn 2 - 2NF (2)  Một quan hệ ở dạng 2NF nếu thỏa mãn 1 trong các điều kiện sau  Khóa chính chỉ gồm 1 thuộc tính.  Bảng không có các thuộc tính không khóa.  Tất cả các thuộc tính không khóa phụ thuộc hoàn toàn vào tập các thuộc tính khóa chính.  Gợi ý  Chỉ kiểm tra các quan hệ có đạt 2NF nếu quan hệ đó có khoá chính gồm 2 thuộc tính trở lên.  Để chuyển quan hệ từ dạng 1NF sang dạng 2NF, ta dùng phép chiếu.
  • 27. RDBMS and Data Management/ Session 2/27 of 15 Các lỗi khi ở dạng 2NF  Lược đồ R2(Mamon, Tenmon, Tengv, Phong) gồm các phụ thuộc hàm:  (2) Mamon  Tenmon, Tengv, Phong  (4) Tengv  Phong  R2 đạt 2NF.  Vấn đề  Liệu có thể phân phòng cho 1 giáo viên khi giáo viên đó chưa dạy môn nào?  Khi xóa 1 môn học, liệu có làm mất thông tin về giáo viên và phòng?  Khi đổi phòng cho 1 giáo viên thì phải cập nhật lại ở bao nhiêu dòng?
  • 28. RDBMS and Data Management/ Session 2/28 of 15 Dạng chuẩn 3 – 3NF  Một quan hệ ở 3NF nếu quan hệ đó đã ở 2NF và không có các phụ thuộc bắc cầu.  Một lược đồ quan hệ R ở 3NF nếu với mọi phụ thuộc X  A đúng trong R và A  X thì hoặc X là khóa bao hàm hoặc A là nguyên tố.  A là thuộc tính nguyên tố (thuộc tính khóa) nếu A là phần tử của một khóa của R (R có thể có nhiều khóa), ngược lại A là phi nguyên tố.  Giả sử ta có quan hệ svien (masv, hoten, khuvuc, congdiem) Ta thấy nếu 1 thuộc tính được xác định bởi 1 thuộc tính không khoá, nó gọi là thuộc tính bắc cầu. Vậy congdiem phụ thuộc vào khuvuc. chia thành 2 quan hệ (3NF): svien (masv, hoten, khuvuc) và khu (khuvuc, congdiem)
  • 29. RDBMS and Data Management/ Session 2/29 of 15 MASV HOTEN ĐIACHI A01 Lê Na 12 Thái Hà A03 Trần An 56 Mã Mây A02 Hà Nam 34 Cầu Gỗ MA MON TEN MON TENGV PHONG M01 CSDL Mai P13 M02 Anh 2 Lan P25 M04 Toán 1 Nam P40 M03 Vi mô Chi P30 MASV MA MON ĐIEM A01 M01 8 A01 M02 5 A03 M01 6 A02 M04 10 A02 M02 7 A02 M03 9 R1 R3 R2 MA MON TEN MON M01 CSDL M02 Anh 2 M04 Toán 1 M03 Vi mô TENGV PHONG Mai P13 Lan P25 Nam P40 Chi P30 R2 R4 Mamon  Tenmon, Tengv, Phong Tengv  Phong MASV HOTEN ĐIACHI A01 Lê Na 12 Thái Hà A03 Trần An 56 Mã Mây A02 Hà Nam 34 Cầu Gỗ R1 MASV MA MON ĐIEM A01 M01 8 A01 M02 5 A03 M01 6 A02 M04 10 A02 M02 7 A02 M03 9 R3
  • 30. RDBMS and Data Management/ Session 2/30 of 15 Relational Operators  Mô hình quan hệ được dựa trên cơ sở đại số quan hệ. Đại số quan hệ bao gồm tập hợp các phép toán hoạt động trên các quan hệ.  Mỗi toán tử giữ 1 hoặc 2 quan hệ như đầu vào của nó và kết quả quan hệ mới là đầu ra.  SELECT: This operator is used to extract data that satisfies a given condition. The lowercase Greek letter sigma, “σ”, is used to denote selection.
  • 31. RDBMS and Data Management/ Session 2/31 of 15 Select  Phép toán này rút ra các bản ghi thỏa mãn điều kiện nào đấy.  Gọi E là một điều kiện nào đó bao gồm:  Các toán hạng (hằng, tên thuộc tính, với hằng chuỗi ta bao trong dấu nháy đơn hoặc kép)  Các quan hệ số học (<, =, >, , , )  Các phép toán logic: và, hoặc và phủ định.
  • 32. RDBMS and Data Management/ Session 2/32 of 15 Project  PROJECT: This operator is used to project certain details of a relational table. It only displays the required details leaving out certain columns. The PROJECT operator is denoted by the Greek letter pi, “π”.  phép chiếu là ta nhận được một quan hệ từ một quan hệ đã cho bằng cách bỏ bớt đi một số thuộc tính nào đó.  Ví dụ có quan hệ svien (masv, ho, ten, gtinh, nsinh, dchi, diemvt) ta lấy ra bảng sv (masv, ho, ten, diemvt)
  • 33. RDBMS and Data Management/ Session 2/33 of 15 Product  PRODUCT: This operator is denoted by “x”. It helps combine information from two relational tables.  Phép nhân kết hợp mỗi bản ghi của bảng 1 với tất cả các bản ghi của bảng 2 tức là nó tạo ra tất cả các kết hợp có thể có giữa các bản ghi của 2 bảng
  • 34. RDBMS and Data Management/ Session 2/34 of 15 Union (1)  UNION: The UNION operator collects data from different tables and presents a unified version of the complete data. The union operation is represented by the symbol, “U”.  Cho R và S là hai quan hệ trên cùng tập thuộc tính U (ta gọi các quan hệ R và S là tương thích). Khi đó hợp của quan hệ R và S là một quan hệ H trên U, bao gồm các phần tử thuộc R hoặc thuộc S. Hợp của R và S được ký hiệu là R + S: R + S = {t | t  R hoặc t  S}
  • 35. RDBMS and Data Management/ Session 2/35 of 15 Union (2) A B C A B C a1 b1 c1 x1 y1 z1 a2 b2 c2 a1 b1 c1 a3 b3 c3 x2 y2 x2 A B C a1 b1 c1 a2 b2 c2 a3 b3 c3 x1 y1 z1 x2 y2 z2 quan hệ H = R + S là: Cho hai quan hệ R và S như sau:
  • 36. RDBMS and Data Management/ Session 2/36 of 15 Intersection(1)  INTERSECT: This operator generates data that holds true in all the tables it is applied on. It is based on the intersection set theory and is represented by the “∩” symbol.  Cho R và S là hai quan hệ trên cùng tập thuộc tính U. Khi đó giao của quan hệ R và S là một quan hệ G trên U, bao gồm các phần tử thuộc R và thuộc S. Giao của R và S được kí hiệu là G=R*S: R*S = {t | t  R và t  S}
  • 37. RDBMS and Data Management/ Session 2/37 of 15 Intersection (2) A B C A B C a1 b1 c1 x1 y1 z1 a2 b2 c2 a1 b1 c1 a3 b3 c3 x2 y2 x2 Cho hai quan hệ R và S như sau: quan hệ G = R.S là: A B C a1 b1 c 1
  • 38. RDBMS and Data Management/ Session 2/38 of 15 DIFFERENCE (1)  DIFFERENCE: This operator, symbolized as “-”. It generates data from different tables, that holds true in one table and not the other.  Hiệu của 2 quan hệ R và S trên cùng tập thuộc tính U là một quan hệ T trên U, bao gồm các phần tử thuộc R và không thuộc S. Hiệu của R và S được kí hiệu là R - S: R - S = {t | t  R và t  S}
  • 39. RDBMS and Data Management/ Session 2/39 of 15 DIFFERENCE (2) A B C A B C a1 b1 c1 x1 y1 z1 a2 b2 c2 a1 b1 c1 a3 b3 c3 x2 y2 x2 Cho hai quan hệ R và S như sau: quan hệ T = R-S là: A B C a2 b2 C2 a3 b3 c3
  • 40. RDBMS and Data Management/ Session 2/40 of 15 JOIN (1)  JOIN: The join operation is an enhancement to the product operation. It allows a selection to be performed on the product of tables.  Cho hai quan hệ R(U), S(V). Phép kết nối tự nhiên (Natural Join) của hai quan hệ R và S là quan hệ được ký hiệu là P = R |><| S trên lược đồ quan hệ U  V gồm các phần tử t mà chiếu của t lên U là phần tử thuộc R còn chiếu của t lên V là phần tử thuộc S: P = {t | t.U  R và t.V S}
  • 41. RDBMS and Data Management/ Session 2/41 of 15 Phần tử HOTEN GIOITINH t1 Nguyễn Văn Tuấn Nam t2 Nguyễn Huy Khôi Nam t3 Lê Thị Hoa Nữ t4 Lê Thị Hiền Nữ t5 Phạm Thị Đào Nữ Phần tử HOTEN TUOI t1 Nguyễn Văn Tuấn 30 t2 Nguyễn Huy Khôi 32 t3 Lê Thị Hoa 25 t4 Lê Thị Hiền 28 t5 Phạm Thị Đào 22 Phần tử HOTEN TUOI GIOITINH t1 Nguyễn Văn Tuấn 30 Nam t2 Nguyễn Huy Khôi 32 Nam t3 Lê Thị Hoa 25 Nữ t4 Lê Thị Hiền 28 Nữ t5 Phạm Thị Đào 22 Nữ
  • 42. RDBMS and Data Management/ Session 2/42 of 15 DIVIDE  DIVIDE: The division operation, denoted by “÷”, is suited to queries that include the phrase “for all”.  Các thuộc tính của bảng chia luôn là tập con của bảng bị chia