c10 Chuanhoacsdl

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 42

Chng 10: Chun ha

(Normalization)

1
Ni dung
nh ngha chun ha
Cc dng chun ha

2
Chun ha
Chun ha l k thut dng to ra mt tp cc
quan h c cc c im mong mun da vo cc
yu cu v d liu ca 1 x nghip
Chun ha l 1 cch tip cn t di ln (bottom-up
approach) thit k CSDL, bt u t cc mi lin
h gia cc thuc tnh

3
Chun ha
Mc ch: loi b cc bt thng ca 1 quan h c c
cc quan h c cu trc tt hn, nh hn
Quan h c cu trc tt (well-structured relation): l quan
h c s d tha d liu l ti thiu v cho php ngi dng
thm, sa, xa m khng gy ra mu thun d liu
Quan h c chun ha l quan h trong mi min ca
mt thuc tnh ch cha nhng gi tr nguyn t. Do mi
gi tr trong quan h cng l nguyn t. Quan h c cha cc
min tr l khng nguyn t gi l quan h khng chun ha.
Mt quan h c chun ha c th c tch thnh nhiu
quan h chun ha khc v khng lm mt thng tin.
4
Chun ha
V d :
MANHACC MATHANG
MAMH SOLUONG MANHACC MAMH SOLUONG
1 100 1 1 100 1
200 2 1 200 2
300 1 1 300 1

2 100 4 2 100 4
200 2 2 200 2

3 400 5 3 400 5
500 1 3 500 1

5
Quan h khng chun ha Quan h chun ha
Chun ha
Qu trnh chun ha c thc hin qua nhiu bc. Mi
bc tng ng mt dng chun
Cc dng chun:
Dng chun 1(1NF first normal form)
Dng chun 2(2NF- second normal form)
Dng chun 3(3NF third normal form)
Dng chun BCNF Boyce Codd
Dng chun 4NF

6
Bng cha chun ha
Bng khng dng chun 1 (hay cha chun ha) nu n cha mt
hoc nhiu nhm lp li hoc cc gi tr phc hp
Nhm lp li (Repeating group): mt nhm nhiu hng c th c
cng chung mt thuc tnh
Bng cha chun ha
MASV HOVATEN KHOA TENMONHOC DIEMTHI
99023 NGUYENTHITHU CONG NGHE THONG TIN KY THUAT LAP TRINH 6
TOAN ROI RAC 8

CO SO DU LIEU 4

99030 LE VAN THANH DIEN TU VI XULY 4

Bng chun ha dng chun 1


MASV HOVATEN KHOA TENMONHOC DIEMTHI
99023 NGUYENTHITHU CONG NGHE THONG TIN KY THUAT LAP TRINH 6
99023 NGUYENTHITHU CONG NGHE THONG TIN TOAN ROI RAC 8
7
99023 NGUYENTHITHU CONG NGHE THONG TIN CO SO DU LIEU 4
99030 LE VAN THANH DIEN TU VI XULY 4
Chun ha
V d :

8
Dng chun 1
(1NF first normal form)
Bng dng chun 1 nu
C kha chnh
Khng c nhm lp li
Bng 1NF nu mi thuc tnh ca R u cha cc gi tr
nguyn t (khng c thuc tnh a tr)
MONHOC(MaMH, TenMH)

MaMH TenMH
T1 Ton
AV Anh vn

9
Bin i v dng chun 1
Qu trnh chun ha gm 3 bc:
Loi b cc nhm lp li
Xc nh kha chnh ca bng
Xc nh tt c cc ph thuc (dependencies) trong bng
Lc ph thuc (dependency diagram): gip m t tt
c cc ph thuc trong bng

10
V d quan h c thuc tnh a tr
(multivalued attributes)
Quan h Employee_Course
Emp_ID Name Dept_Name Salary Course_Titl Date_Complete
e d
100 M.Simpson Marketing 48000 SPSS 6/19/2001
Surveys 12/12/2002
140 A.Beeton Acounting 52000 Tax Acc 12/8/2003

110 C.Lureco Info System 43000 SPSS 1/12/2003


C++ 2/6/2004
190 L.Davis Finance 55000

150 S.Martin Marketing 42000 SPSS 6/16/2002


Java 5/7/2004 11
V d quan h c thuc tnh a tr
(multivalued attributes)
Emp_I Name Dept_Nam Salar Course_Title Date_Complete
D e y d

100 M.Simpson Marketing 48000 SPSS 6/19/2001


100 M.Simpson Marketing 48000 Surveys 12/12/2002
140 A.Beeton Acounting 52000 Tax Acc 12/8/2003

110 C.Lureco Info System 43000 SPSS 1/12/2003


110 C.Lureco Info System 43000 C++ 2/6/2004
190 L.Davis Finance 55000
150 S.Martin Marketing 42000 SPSS 6/16/2002
150 S.Martin Marketing 42000 Java 5/7/2004

Dng chun 1
12
Kha l EmpID + CourseTitle
V d quan h c thuc tnh a tr
(multivalued attributes)
Xc nh tt c cc ph thuc (dependencies) trong bng

Dng chun 1
13
Kha l EmpID + EMP_NUM
Dng chun 1
(1NF Normal First Form)
Nhn xt:
Dng chun 1 vn c th c cc bt thng khi cp nht
V d: trong lc Employee_Course, s c cc bt thng
sau:
Thm 1 nhn vin mi cha tham gia kha hc no vi
phm quy lut bo ton thc th
Thay i tn phng phi thay i hng lot thng tin
ny cho tt c cc nhn vin ca phng
Xa 1 course m ch c 1 nhn vin hc, thng tin course
s b xa theo

14
Ph thuc hm y
(Full functional dependency)
XA l ph thuc hm y nu khng tn ti Y X
cho YA
S m t

V d 2: Cho Q(ABC) v F={ A B; A C; AB


C}
A B: A C l cc ph thuc hm y .
AB C khng l ph thuc hm y v c A C.
Ch rng, mt ph thuc hm m v tri ch c mt
thuc tnh l ph thuc hm y
15
Ph thuc hm y
(Full functional dependency)
XA l ph thuc hm y nu khng tn ti Y X
cho YA
S m t

V d 3: quan h Employee_Course
Kha l Emp_ID,Course
Emp_ID, Course Grade l ph thuc hm y
Emp_ID Name, Dept_Name l ph thuc hm y
Emp_ID, Course Name, Dept_Name l ph thuc hm
khng y
Emp_ID Name, Dept_Name
Emp_ID {Emp_ID, Course } 16
Ph thuc hm y
(Full functional dependency)
Ph thuc hm ring phn (partial FD) XA, tn ti
Y X sao cho YA

V d 1:
customer-name, loan-number customer-name
customer-name customer-name
17
Dng chun 2
(2NF second Normal Form)
Lc quan h R dng 2NF i vi tp ph thuc hm F nu:
R dng chun 1
Mi thuc tnh khng kha u ph thuc y vo mi kha
ca R
Nu quan h R ch c cc kha n th ng nhin quan h ny
dng chun 2

18
Bin i thnh 2NF
Loi b cc ph thuc hm ring phn v to thm cc quan
h mi tng ng vi cc ph thuc hm ring phn
Quan h EMP_PROJ khng t dng chun 2

19
Bin i thnh 2NF

20
Dng chun 2
Quan h 2NF vn c th c cc bt thng khi cp nht
V d: xt quan h EMPLOYEE chun 2NF
Khi thm 1 loi cng vic mi m cng vic ny cha c
nhn vin no lm s vi phm rng buc kho chnh
Khi sa i lng gi (CHR_HOUR) ca 1 loi cng vic
m c nhiu nhn vin ang cng lm
Khi xo 1 nhn vin ang lm cng vic m ch c nhn
vin lm th s lm mt lun thng tin v cng vic

21
Dng chun 2

Thut ton kim tra dng chun 2


Vo: lc quan h Q, tp ph thuc hm F
Ra: khng nh Q t chun 2 hay khng t chun 2.
Bc 1: Tm tt c kha ca Q
Bc 2: Vi mi kha K, tm bao ng ca tt c tp con tht
s S ca K.
Bc 3: Nu c bao ng S+ cha thuc tnh khng kha th
Q khng t chun 2. Ngc li th Q t chun 2

22
Dng chun 2
V d 1: Cho lc quan h Q(A,B,C,D) v tp ph thuc hm
F={ABC; BD; BCA}. Hi Q c t chun 2 khng?
Gii:
TN={B}, TG={AC}

Kha l K1=AB v K2=BC. Ta thy BK1, BD,D l thuc tnh


khng kha thuc tnh khng kha khng ph thuc y vo
kha Q khng t chun 2.
23
Dng chun 2
Quan h sau t chun 2.
Q(G,M,V,N,H,P) F={GM; GN; GH; GP; MV; NHPM}
Gii:
TN={G} TG={M,N,H,P}

24
Dng chun 2
H qu:
Nu Q t chun 1 v tp thuc tnh khng kha ca Q bng
rng th Q t chun 2
Nu tt c kha ca quan h ch gm mt thuc tnh th quan h
t nht t chun 2.
V d 4: Q(A,B,C,D,E,H) F={A E; C D; E DH}
Gii:

TN={ACB} TG={E}

Kha ca Q l K = {ABC}.CK, CD, D l thuc tnh khng kha D


25
ph thuc khng y vo kha nn Q khng t chun 2.
Ph thuc bc cu
(Transitive dependency)

Q l lc quan h, X,Y l hai tp con ca Q+, A l mt


thuc tnh. Ni rng A ph thuc bc cu vo X nu c ba
iu sau tha: XA c gi l ph thuc bc cu nu tn
ti Y cho
XY, YA,
YX
V A XY
Nguyn nhn gy ra cc bt thng khi cp nht bng 2NF l
do c cc thuc tnh khng kha ph thuc bc cu vo kha
ca quan h

26
Dng chun 3
(3NF third normal form)
nh ngha 1: Lc quan h R 3NF i vi tp ph
thuc hm F nu:
R dng 2NF
Mi thuc tnh khng kha u khng ph thuc bc cu
vo kha chnh ca R
nh ngha 2: Lc quan h R 3NF i vi tp ph
thuc hm F nu R dng chun 1 v mi ph thuc hm
XA vi A X th X l 1 siu kho ca R hoc A l 1 thuc
tnh kho
Biu din bng s

27
Dng chun 3
Quan h 3NF vn c th c cc bt thng khi cp nht
V d: xt lc quan h EMPLOYEE_TEACHER(EmpId,
Course, Teacher)
C 2 ph thuc hm:
EmpId, Course Teacher
Teacher Course
Thuc dng 3NF, bt thng xy ra teacher thay i mn dy

28
Dng chun 3
H qu
H qu 1: Nu Q t chun 3 th Q t chun 2
H qu 2: Nu Q khng c thuc tnh khng kha th Q t
chun 3.
nh l
Q l lc quan h
F l tp cc ph thuc hm c v phi mt thuc tnh.
Q t chun 3 nu v ch nu mi ph thuc hm XAF vi
AX u c X l siu kha hay A l thuc tnh kha

29
Dng chun 3
Thut ton kim tra dng chun 3
Vo: lc quan h Q, tp ph thuc hm F
Ra: khng nh Q t chun 3 hay khng t chun 3.
Bc 1: Tm tt c kha ca Q
Bc 2: T F to tp ph thuc hm tng ng F1tt c v
phi mt thuc tnh.
Bc 3: Nu mi ph thuc hm X A F1tt vi AX u
c X l siu kha hoc A l thuc tnh kho th Q t chun 3
ngc li Q khng t chun 3

30
Dng chun 3
V d 5: Cho lc quan h Q(A,B,C,D) F={ABC; DB;
CABD}. Hi Q c t chun 3 khng?
Gii: TN= TG={ABCD}

K1 = {AB}; K2 = {AD}; K3={C} l cc kha mi ph thuc hm XAF u c A31l


thuc tnh kha. Vy Q t chun 3
Dng chun Boyce-Codd
(BCNF)
Mt quan h dng BCNF nu mi determinant (nh thuc) u
l candidate key
Cho 1 lc quan h R(U,F) vi U l tp thuc tnh, F l tp ph
thuc hm. Lc dng chun BCNF nu vi mi ph thuc
hm X Y F nu 1 trong 2 iu kin sau l ng:
Y X ( ph thuc hm tm thng)
X l siu kha ca R

Quan h ny t chun 3NF


nhng khng t chun BCNF

32
Dng chun Boyce-Codd
(BCNF)
H qu
H qu 1: Nu Q t chun BC th Q t chun 3 (hin
nhin do nh ngha)
H qu 2: Mi lc c hai thuc tnh u t chun BC
(xt ph thuc hm c th c ca Q )
nh l
Q l lc quan h
F l tp cc ph thuc hm c v phi mt thuc tnh.
Q t chun BC nu v ch nu mi ph thuc hm XA
vi A X u c X l siu kha

33
Dng chun Boyce-Codd
(BCNF)
Thut ton kim tra dng chun BC
Vo: lc quan h Q, tp ph thuc hm F
Ra: khng nh Q t chun BC hay khng t chun BC.
Bc 1: Tm tt c kha ca Q

Bc 2: T F to tp ph thuc hm tng ng F 1tt c v


phi mt thuc tnh
Bc 3: Nu mi ph thuc hm X A F1tt vi AX u
c X l siu kha th Q t chun BC ngc li Q khng t
chun BC

34
Dng chun Boyce-Codd
(BCNF)
V d: Q(A,B,C,D,E,I) F={ACDEBI;CEAD}. Hi Q c t
chun BC khng?
Gii: TN={C} TG={ADE}

F F1tt={ACDE,ACDB,ACDI,CEA,CED}
Mi ph thuc hm ca F1tt u c v tri l siu kha Q t dng chun BC
35
Dng chun Boyce-Codd
(BCNF)
V d 8: Q(SV,MH,THAY)F = {SV,MH THAY;THAY
MH}
Quan h trn t chun 3 nhng khng t chun BC..
V d 9:
Chng hn cho Q(A,B,C,D) v F={AB C; D B; C ABD}
th Q l 3NF nhng khng l BCNF
Nu F={B D,A C,C ABD} l 2 NF nhng khng l 3 NF

36
Chuyn i thnh BCNF
Mt quan h BCNF th n cng dng 3NF
C th bin i trc tip bng t 1NF thnh BCNF, m khng
cn phi qua cc bc chun ha 2NF, 3NF
Loi b cc nh thuc khng phi l siu kho
To cc quan h mi tng ng vi cc nh thuc sao
cho nh thuc tr thnh siu kho ca quan h mi

37
So snh 3NF v BCNF
BCNF c xem l trng hp c bit ca 3NF
Vi quan h c nhiu candidate key phc hp th BCNF s
trnh c hai bt thng c th xy ra 3NF
1 phn ca kha xc nh 1 phn ca kha khc
Ct khng kha xc nh 1 phn ca kha

38
Candidate key v BCNF
Mt quan nim sai lm khi cho rng mt bng vi nhiu
candidate key s vi phm chun BCNF.
Nhiu candidate key khng vi phm BCNF hay 3NF, khng
cn phi phn chia bng ch v n c nhiu candidate key

39
Candidate key v BCNF
V d
Xt lc ph thuc sau:
Tch bng trn thnh 2
bng sau:
TABLE1(MaMon,MaSV,
Diem)
TABLE2(MaSV, Email)
M_SV M_Mn Email Diem

Hai candidate key: Ma_SV+Ma_Mon; Email+Ma_Mon


Ch c 1 thuc tnh khng kha l Diem
Bt thng 1: 1 phn ca kha ny xc nh 1 phn ca kha khc.
Bng thuc 3NF nhng khng l BCNF
Lm th no chun ha thnh BCNF???
40
Thut ton kim tra dng chun ca
mt lc quan h
Vo: lc quan h Q, tp ph thuc hm F
Ra: khng nh Q t chun g?
Bc 1: Tm tt c kha ca Q
Bc 2: Kim tra chun BC nu ng th Q t chun BC, kt thc
thut ton ngc li qua bc 3
Bc 3: Kim tra chun 3 nu ng th Q t chun 3, kt thc
thut ton ngc li qua bc 4
Bc 4: Kim tra chun 2 nu ng th Q t chun 2, kt thc
thut ton ngc li Q t chun 1
nh ngha: Dng chun ca mt lc c s d liu l dng
chun thp nht trong cc dng chun ca cc lc quan h
con.
41
Bi tp
1.Cho bit dng chun cao nht ca cc LDQH sau:
a) Q(ABCDEG) F = {A ->BC, C->DE, E->G}
b) Q(ABCDEGH) F = {C->AB, D->E, B->G}
c) Q(ABCDEGH) F = {A->BC, D->E, H->G}
d) Q(ABCDEG) F = {AB->C, C->B, ABD->E, G->A}
e) Q(ABCDEGHI) F = {AC->B, BI->ACD, ABC->D
H->I , ACE->BCG, CG->A}
2.Cho Q(CDEGHK) v F = {CK->H, C->D,E->C, E->G, CK-
>E}
a) Chng minh EK->DH
b) Tm tt c cc kha ca Q
c) Xc nh dng chun cao nht ca Q 42

You might also like