33
Chương 5: Mô hình dữ liệu quan hệ - Lý thuyết thiết kế Phần 4: Chuẩn hóa và các dạng chuẩn (Normalization & Normal Forms)

s9 - Chuong5 - Tk Csdl Qh-part2

Embed Size (px)

DESCRIPTION

s9 - Chuong5

Citation preview

  • Chng 5: M hnh d liu quan h - L thuyt thit kPhn 4: Chun ha v cc dng chun (Normalization & Normal Forms)

  • */33Mc chGip nm c cc khi nim v vn : Cc dng chun (Normal Forms): 1NF, 2NF, 3NF, BCNFBao ng (Closure)Gii thut tm tt c cc khaTi sao v lm th no chun ha

  • */33Cc ni dung chnhCc dng chunBao ngThut ton tm ton b cc khaTp ph thuc hm ti thiuCc phng php chun ha

  • */331. Chun ha v cc dng chunnh ngha cc dng chunDng chun 1 (1NF - First NF)Dng chun 2 (2NF - Second NF)Dng chun 3 (3NF - Third NF)Dng chun Boyce-Codd (BCNF - Boyce-Codd NF)Cc phng php chun haPhp tch (Decomposition)Php ghp (Composition)

  • */331. Dng chun 1 (1NF)nh ngha:Gi tr nguyn t (Atomic Value): L gi tr m khng th b chia nh hn c naMt thuc tnh l nguyn t nu min gi tr ca n l nguyn t. Thuc tnh nguyn t cng cn c gi l thuc tnh n. Dng chun 1: mt LQH R l dng chun 1 nu nh mi thuc tnh ca n u nhn gi tr nguyn t.Lu : sau ny mc nh ta coi cc LQH u dng chun 1.

  • */331. Dng chun 2 (2NF)nh ngha: mt LQH R l dng chun 2 nu n tha mn 2 iu kin:R dng chun 1Mi thuc tnh khng kha ca R u ph thuc hm y vo kha ca R

    Vd1: cho QH R(A,B,C,D) vi tp cc PTH F:AB C; B D; Hi R c dng chun 2 khng?

  • */331. Dng chun 2Vd2: cho QH R(A,B,C,D) vi tp cc PTH F:A B; B C; C D; Hi R c dng chun 2 khng?

    Vd3: QH Student(ID, Name, Class, Dept, Subject, Mark) vi cc PTH F:ID Name,Class;Class Dept;ID, Subject Mark Hi Student c dng chun 2 khng?

  • */331. Dng chun 3 (3NF)nh ngha: c 2 cch tng ng /n dng chun 3:Cch th nht: 1 QH R l dng chun 3 nu tha mn:R dng chun 2Mi thuc tnh khng kha ca R u ph thuc hm trc tip vo kha

  • 1. Dng chun 3nh ngha:Cch th hai: 1 QH R l dng chun 3 nu tha mn:R dng chun 1Vi mi PTH c dng XA thuc R (vi X l mt tp cc thuc tnh, cn A l mt thuc tnh) th Hoc X l mt siu kha, hoc A l thuc tnh kha.*/33

  • */331. Dng chun 3Vd2: Xt QH R(A,B,C,D) vi tp cc PTH F:A B; B C; C D;Hi R c dng chun 2, chun 3 khng?

    Vd4: Xt QH R(A,B,C,D) vi tp cc PTH F:AB C; CD A; Hi R c dng chun 2, chun 3 khng?

  • */331. Dng chun Boyce-Codd (BCNF)nh ngha: mt L QH R l dng chun BC nu n tha mn:R dng chun 1,Vi mi PTH c dngXA in R (vi X l mt tp thuc tnh, v A l mt thuc tnh) th X l siu kha.

  • */331. Dng chun Boyce-CoddVd4: Xt QH R(A,B,C,D) vi tp cc PTH F:AB C; CD A; Hi R c dng chun 3, chun BC khng?

    Vd5: xt QH R(A,B,C,D) vi cc PTH F:AB C; AB D; Hi R c dng chun BC khng?

  • So snh gia cc dng chun*/33BCNF

  • */332. Bao ng (Closure)nh ngha: cho QH R vi tp PTH F, v tp thuc tnh XR. Ta gi bao ng ca X (k hiu X+) c nh ngha nh sau:X+ = {B | X B F}

    Vd: cho R(A,B,C,D), vi cc PTH F: AB; BCAD;X=(A)th X+=(A,B)X=(AC)th X+=(A,B,C,D)

  • */332. Bao ng Thut ton tm bao ngu vo: R(A1,A2,An) vi tp PTH F; XRu ra: X+Gii thut:Bc 1: X+ := X;Bc 2: While ( YA F so that (YX+and AX+)) X+:=X+A Bc 3: return X+

  • */332. Bao ng - ng dngGip tm kha trong quan h, bi v K+ = R

  • */333. Gii thut tm tt c cc kha ca lc quan hMt tnh cht ca kha: cho LQH R vi tp cc PTH F. Ta gi AL, AR tng ng l cc hp (unions) ca cc thuc tnh thuc v tri v v phi ca cc PTH trong F. Chng ta c th gi s rng R=ALAR. Nu K l mt kha ca R th n lun tha mn:AL\AR K ALALAR

  • */333. Gii thut tm tt c cc kha ca lc quan hVd: R(A,B,C,D,E), vi F: AB; BCAD;CDE;

    Ta c: AL=(ABCD); AR=(ABDE)AL\AR = C;Ta tm c 2 kha ca R l:K1=AC; K2=BC;

  • 3. Gii thut tm tt c cc kha ca lc quan hu vo: QH R(A1,A2,An) vi tp cc PTH F; u ra: Tt c cc kha ca RGii thut:Bc 1: Tnh AL v AR ca R.Bc 2: K := AL\ AR; X:= AL ARNu (K+=R) th K l kha duy nht; Return K;Else

    Bc 3: While (K+R) {Ly ra mt thuc tnh Ai t X;K:=KAi; }Ta s c thm mt kha K y; Lp li Bc 3 cho n khi ly ht cc trng hp*/33

  • Bi tpTm tt c cc kha ca LQH: R (A,B,C,D,E,F) vi cc PTH F: ABC; BCD; BDAE; ACF;

    Li gii: AL = ABCD; AR = CDAEF AL\AR = B; ALAR = ACD B+ = B R (BA)+=BACDEF=R K1= AB (BC)+=BCDAEF=R K2=BC (BD)+=BDAECF=R K3=BD

    Kt lun: Lc R c 3 kha K1,K2 v K3 nh trn*/33

  • */334. Tp PTH c s ti thiu (Minimal Basis) Tp PTH c s (Basis): cho QH R vi tp cc PTH F. Mt tp PTH bt k m tng ng vi F th c gi l mt c s ca F. Tp c s ti thiu (Minimal basis /canonical set): l mt tp PTH tha mn 3 iu kin:V phi ca tt c cc PTH ch c mt thuc tnh.Nu loi b i bt k PTH no, th cc PTH cn li khng l c s ca F (khng c PTH d tha).Vi mi PTH, nu loi b i bt k thuc tnh no khi v tri ca PTH , th cc PTH cn li khng l c s ca F (khng cha PTH b phn)

  • V dCho LQH R(A,B,C,D,E,F) vi tp F:ABCD; CEF; BCDE; EF;Hy tm c s ti thiu ca F?

    Gii: S dng tnh cht tch ta c:1. ABC;5. BCD;2. ABD;6. BCE;3. CE;7. EF;4. CF;

    Do 3., nn PTH 6. b loi ra.Do 3. v 7., nn 4. b loi ra. Do 1. v 5., nn 2. b loi ra.

    Cui cng, ta c tp c s ti thiu ca F l: 1. ABC;2. BCD;3. CE;4. EF;*/33

  • */334. Tp PTH c s ti thiuGii thut tm tp c s ti thiu:u vo : QH R vi tp PTH F.u ra: tp PTH c s ti thiu ca FGii thut:Bc 0: Loi b cc PTH tm thng (XY m YX).Bc 1: Vi mi PTH c v phi nhiu hn 1 thuc tnh, th chuyn n thnh cc PTH c v phi c 1 thuc tnh theo tnh cht tch.Bc 2: Loi b cc PTH d tha t Bc 1. Bc 3: Loi b cc PTH b phn t Bc 2.

  • */335. Cc phng php chun ha (Normalization Mehods)C 2 cch tip cn tri ngc nhau:Tch (Decomposition): tch mt lc ln thnh cc lc con nh hn dng chun mong mun (thng l dng chun 3). Ghp (Composition): T cc thuc tnh n l, ta xy dng cc lc quan h dng chun 3.

  • 5. Chun ha- Phng php tch*/33

  • 5. Chun ha- Phng php tchGii thut:u vo: QH R vi tp cc PTH F m cha dng chun 3.u ra: mt php tch R sao cho bo ton F, ni khng mt thng tin, v mi L con u dng chun 3.Gii thut:- Bc 1: Vi mi PTH b phn hay bc cu ca mt thuc tnh khng kha A vo kha K ca R, ta c th tm c mt tp cc thuc tnh XK sao cho XA l PTH y hay trc tip v khng tn ti YX m YA. T XA, ta tch thnh 2 QH R1 v R2 sao cho: R1=XA; R2=R\A;- Bc 2: Lp li bc 1 cho mi lc con m cha dng chun 3.

    Lu 1: iu kin khng tn ti YX sao cho YA nhm m bo rng khng c PTH no b mt trong qu trnh tch.Lu 2: Cc L m c chung kha c th li c ghp li thnh mt lc vi kha chung , v hp cc thuc tnh ca cc lc .*/33

  • */33V dQH Student(ID, name, class, dept, subject, mark) vi tp cc PTH F:IDname; IDclass; classdept; ID,subjectmark;

    QH ny dng chun 3 cha? Nu cha, hy tch n thnh cc lc con dng chun 3?

  • V d (tip)Gii: Trc tin tm kha ca QH K=(ID,subject).Do cc thuc tnh khng kha gm (name, class, dept, mark)Do name PTH b phn vo K, ta tm thy IDname l PTH y . T y, ta chia QH thnh 2 QH: S1(ID,name) v S2(ID, class, dept, subject, mark). S1 dng chun 3, nhng S2 th cha. Tng t trn, S2 c th c chia thnh cc QH sau:S3(ID,class); S4(class, dept); S5(ID,subject,mark); Sau khi i li tn cc QH, ri gp cc QH c chung kha, cui cng ta c cc QH sau:S1(ID,name,class); S2(class, dept); S3(ID,subject,mark);*/33

  • */335. Chun ha Phng php ghpGii thut: u vo: mt QH R cha dng chun 3, vi tp cc PTH F. u ra: php tch R m bo ton cc PTH, ni khng mt, v cc lc con u dng chun 3. Gii thut:Tm tp c s ti thiu ca F. Sau nh th t cc PTH t 1 n n. Vi mi PTH th i X A, i=1..n, ta to mt QH vi lc Ri = (XA). Nu cha c lc no trong s c to ra bc 2 cha siu kha ca R, th b sung thm mt lc l kha ca R.

  • */33V dQH Student(ID, name, class, dept, subject, mark) vi tp cc PTH F:IDname; IDclass; classdept; ID,subjectmark;

    QH ny dng chun 3 cha? Nu cha, hy tch n thnh cc lc con dng chun 3?

  • V d (tip)Gii: Tm c s ti thiu: F l c s ti thiu.T 4 PTH ca F, ghp li ta s c 4 quan h:S1(ID,name); S2(ID,class); S3(class, dept); S4(ID,subject,mark);Do S1 v S2 c chung kha ID, nn c th ghp chng li thnh mt quan h mi: S1(ID,name,class). Cui cng, ta c 3 quan h:S1(ID,name,class); S2(class, dept); S3(ID,subject,mark);

    */33

  • V d (tip)*/33S1: StudentS2: ClassS3: Examination

    IDNameClassE1-001Nguyen Van AE1E1-002Tran Thi BE1E2-001Nguyen Hong CE2IT1-001Tran Thi BIT1IT1-002Le Van DIT1

    ClassDepartmentE1ElectronicsE2ElectronicsIT1IT

    IDSubjectMarkE1-001Electronic Circuit8E1-001Digital Technique7E1-002Digital Technique9E1-002Electronic Circuit8E2-001Digital Technique6IT1-001Electronic Circuit10IT1-002Digital Technique8

  • Thank you!*/33

    *Normal Form: Dng chun The one that "cannot be decomposed into smaller pieces by the DBMS ((Codd, E. F. The Relational Model for Database Management Version 2 (Addison-Wesley, 1990), p. 6. ))*closure : Bao ng*Basis: Tp Ph Thuc Hm tng ngMinimal basis: Tp PTH tng ng ti thiu

    *