You are on page 1of 129

U BAN NHN DN THNH PH H NI

S BU CHNH VIN THNG THNH PH







GIO TRNH
C S D LIU
(M s gio trnh: 2CD3)







H NI 2005
1
Li m u
Ngy nay, c s d liu c nhiu ng dng trong mi hot ng ca x
hi. Mun thit k v s dng c s d liu chng ta phi nm c cc k thut
c bn ca c s d liu. Gio trnh ny nhm trnh by cc k thut c s ca c
s d liu truyn thng, l m hnh lin kt thc th, m hnh c s d liu quan
h. Gio trnh cng trnh by cch thit k mt c s d liu quan h, cch s dng
cc php ton i s quan h to, cp nht v truy vn c s d liu v khi
nim ph thuc hm ng dng trong l thuyt thit k v chun ha c s d liu
quan h.
Gio trnh cn thit cho tt c cc i tng mun tm hiu v thit k cc c
s d liu quan h ng dng trong cng tc qun l.

2

- Tn mn hc: C s d liu.
- M s mn hc: 2CD3.
- Thi gian: L thuyt + Bi tp 45 tit.
- Mc tiu: Trang b cc kin thc c bn v C s d liu truyn thng.
- Nhng kin thc cn phi c trang b trc khi hc: khng.
- Ni dung:
Chng I: CC KHI NIM C BN V C S D LIU
Chng II: M HNH LIN KT THC TH
Chng III: M HNH QUAN H, CC RNG BUC QUAN
H V I S QUAN H
Chng IV: PH THUC HM V CHUN HA CSDL
QUAN H, CC THUT TON THIT K CSDL
QUAN H

3

MC LC
LI M U ...................................................... ERROR! BOOKMARK NOT DEFINED.
CHNG I- CC KHI NIM C BN V H C S D LIU .......................... 7
I- C s d liu ........................................................................................................... 7
I.1- nh ngha c s d liu ..................................................................................... 7
I.2- Cc tnh cht ca mt c s d liu .................................................................... 8
II- H qun tr c s d liu ....................................................................................... 9
II.1- nh ngha h qun tr c s d liu .............................................................. 9
II.2- Cc chc nng ca mt h qun tr c s d liu .......................................... 9
II.3- Cc c trng ca gii php c s d liu ................................................... 11
II.4- V d v mt c s d liu ............................................................................. 13
III- M hnh c s d liu ........................................................................................... 15
III.1- Cc loi m hnh c s d liu ..................................................................... 15
III.2- Lc v trng thi c s d liu .............................................................. 17
IV- Con ngi trong h c s d liu ........................................................................ 18
IV.1- Ngi qun tr h c s d liu (Database Administrator DBA) .............. 18
IV.2- Ngi thit k c s d liu (Database Designer) ....................................... 18
IV.3- Nhng ngi s dng (End User) ................................................................. 18
IV.4- Ngi phn tch h thng v lp trnh ng dng .......................................... 19
IV.5- Ngi thit k v ci t h qun tr d liu ................................................ 19
IV.6- Nhng ngi pht trin cng c ................................................................... 19
IV.7- Cc thao tc vin v nhng ngi bo tr .................................................... 19
V- Ngn ng c s d liu v giao din ................................................................... 20
V.1- Cc ngn ng h qun tr c s d liu........................................................ 20
V.2- Cc loi giao din h qun tr c s d liu ................................................ 21
VI- Cu hi n tp ....................................................................................................... 21
CHNG II- M HNH THC TH - LIN KT .................................................. 23
I- S dng m hnh quan nim bc cao cho vic thit k c s d liu............... 23
II- Cc thnh phn c bn ca m hnh ER ........................................................... 25
II.1- Thc th v thuc tnh................................................................................... 25
II.2- Kiu thc th, tp thc th, kha v tp gi tr ............................................ 27
II.3- Kiu lin kt, tp lin kt v cc th hin ..................................................... 30
II.4- Cp lin kt, tn vai tr v kiu lin kt quy ............................................ 31
II.5- Cc rng buc trn cc kiu lin kt ........................................................... 32
4
II.6- Thuc tnh ca cc kiu lin kt .................................................................... 33
II.7- Cc kiu thc th yu .................................................................................... 34
III- V d v thit k m hnh ER .............................................................................. 35
III.1- Xc nh cc kiu thc th, cc thuc tnh v cc kiu lin kt .................... 35
IV- M hnh thc th lin kt m rng (m hnh EER) .......................................... 39
IV.1- Lp cha, lp con v s tha k ..................................................................... 39
IV.2- Chuyn bit ha, tng qut ha .................................................................... 40
IV.2.1- Chuyn bit ha ........................................................................................ 40
IV.2.2- Tng qut ha ........................................................................................... 42
IV.2.3- Phn cp chuyn bit v li chuyn bit ................................................ 43
IV.2.4- Cc rng buc v cc c trung ca chuyn bit ha, tng qut ha ....... 43
IV.3- S m hnh EER ....................................................................................... 44
V- Tng kt chng v cu hi n tp ..................................................................... 45
V.1- Tng kt chng ........................................................................................... 45
V.2- Cu hi n tp ............................................................................................... 45
V.3- Bi tp ........................................................................................................... 46
CHNG III- M HNH QUAN H, CC RNG BUC QUAN H V I S
QUAN H 48
I- Cc khi nim ca m hnh quan h .................................................................. 48
I.1- Min, thuc tnh, b v quan h ........................................................................ 48
I.2- Cc c trng ca cc quan h ......................................................................... 50
I.2.1- Th t ca cc b trong mt quan h ....................................................... 50
I.2.2- Th t ca cc gi tr bn trong mt b ................................................... 51
I.2.3- Cc gi tr trong mt b............................................................................ 51
I.2.4- Th hin ca mt quan h ........................................................................ 52
II- Cc rng buc quan h, lc c s d liu quan h .................................... 52
II.1- Cc rng buc min ...................................................................................... 52
II.2- Rng buc kho v rng buc trn cc gi tr khng xc nh (null) .......... 53
II.3- C s d liu quan h v lc c s d liu quan h ............................. 54
II.4- Ton vn thc th, ton vn tham chiu v kho ngoi ................................ 58
III- Cc php ton trn m hnh quan h ................................................................. 60
III.1- Cc php ton cp nht ................................................................................ 60
III.1.1- Php chn (Insert)..................................................................................... 60
III.1.2- Php xo (Delete) ..................................................................................... 61
III.1.3- Php sa i (Update) .............................................................................. 62
III.2- Cc php ton i s quan h ....................................................................... 62
III.2.1- Php chn (SELECT) ............................................................................... 63
5
III.2.2- Php chiu (PROJECT) ............................................................................ 65
III.2.3- Php t li tn (RENAME)..................................................................... 66
III.2.4- Cc php ton l thuyt tp hp ............................................................... 67
III.2.5- Php ni (JOIN) ....................................................................................... 70
III.2.6- Tp hp y cc php ton quan h .................................................... 72
III.2.7- Php chia .................................................................................................. 73
III.3- Cc php ton quan h b sung .................................................................... 74
III.3.1- Cc hm nhm v cc php nhm ............................................................ 74
III.3.2- Cc php ton khp kn quy ................................................................ 75
III.3.3- Cc php ton ni ngoi (outer join), hp ngoi (outer union) ................ 75
III.4- Mt s v d v truy vn trong i s quan h .............................................. 76
IV- Chuyn i m hnh ER thnh m hnh quan h .............................................. 77
IV.1- Cc quy tc chuyn i ................................................................................. 77
IV.2- Chuyn i m hnh c th............................................................................ 81
V- Tng kt chng v cu hi n tp ..................................................................... 81
V.1- Tng kt chng ........................................................................................... 81
V.2- Cu hi n tp ............................................................................................... 82
V.3- Bi tp ........................................................................................................... 83
CHNG IV- PH THUC HM V CHUN HA C S D LIU QUAN H,
CC THUT TON THIT K C S D LIU QUAN H ........................................... 86
I- Cc nguyn tc thit k lc quan h ........................................................... 86
I.1- Ng ngha ca cc thuc tnh quan h .............................................................. 86
I.2- Thng tin d tha trong cc b v s d thng cp nht ................................ 87
I.3- Cc gi tr khng xc nh trong cc b ........................................................... 89
I.4- Sinh ra cc b gi .............................................................................................. 89
II- Cc ph thuc hm .............................................................................................. 90
II.1- nh ngha ph thuc hm ............................................................................ 90
II.2- Cc quy tc suy din i vi cc ph thuc hm .......................................... 93
II.3- S tng ng ca cc tp ph thuc hm ................................................ 97
II.4- Cc tp ph thuc hm ti thiu ................................................................... 98
III- Cc dng chun da trn kha chnh ................................................................. 99
III.1- Nhp mn v chun ho ................................................................................ 99
III.2- Dng chun 1 .............................................................................................. 101
III.3- Dng chun 2 .............................................................................................. 102
III.4- Dng chun 3 .............................................................................................. 104
III.5- Dng chun Boyce-Codd ............................................................................ 104
IV- Cc thut ton thit k c s d liu quan h v cc dng chun cao hn ... 106
6
IV.1- nh ngha tng qut cc dng chun ........................................................ 107
IV.2- Cc thut ton thit k lc c s d liu quan h ............................... 108
IV.2.1- Tch quan h v tnh khng y ca cc dng chun ....................... 108
IV.2.2- Php tch v s bo ton ph thuc ....................................................... 109
IV.2.3- Php tch v kt ni khng mt mt ...................................................... 111
IV.3- Cc ph thuc hm a tr v dng chun 4 ................................................ 118
IV.3.1- nh ngha ph thuc a tr .................................................................... 118
IV.3.2- Cc quy tc suy din i vi cc ph thuc hm v ph thuc a tr .... 120
IV.3.3- Dng chun 4 .......................................................................................... 121
IV.3.4- Tch c tnh cht ni khng mt mt thnh cc quan h 4NF .............. 121
IV.4- Cc ph thuc ni v dng chun 5............................................................ 122
V- Tng kt chng v cu hi n tp ................................................................... 124
V.1- Tng kt chng ......................................................................................... 124
V.2- Cu hi n tp ............................................................................................. 125
V.3- Bi tp ......................................................................................................... 126
7

Chng I- CC KHI NIM C BN V H C S
D LIU
Cc c s d liu v cc h c s d liu tr thnh mt thnh phn ch yu
trong cuc sng hng ngy ca x hi hin i. Trong vng mt ngy con ngi c
th c nhiu hot ng cn c s giao tip vi c s d liu nh: n ngn hng
rt tin v gi tin, ng k ch trn my bay hoc khch sn, truy cp vo th vin
tin hc ho tm sch bo, t mua tp ch mt nh xut bn Ti cc ngn
hng, cc ca hng, ngi ta cng cp nht t ng vic qun l tin bc, hng ho.
Tt c cc giao tip nh trn c gi l cc ng dng ca c s d liu
truyn thng. Trong cc c s d liu truyn thng, hu ht cc thng tin c lu
gi v truy cp l vn bn hoc s. Nhng nm gn y, nhng tin b v k thut
a n nhng ng dng mi ca c s d liu. Cc c s d liu a phng
tin by gi c th lu tr hnh nh, phim v ting ni. Cc h thng thng tin a
l c th lu tr v phn tch cc bn , cc d liu v thi tit v cc nh v tinh.
Kho d liu v cc h thng phn tch trc tuyn c s dng trong nhiu cng ty
ly ra v phn tch nhng thng tin c li t cc c s d liu rt ln nhm a
ra cc quyt nh. Cc k thut c s d liu ng v thi gian thc c s dng
trong vic kim tra cc tin trnh cng nghip v sn xut. Cc k thut tm kim c
s d liu ang c p dng cho World Wide Web cung cp vic tm kim cc
thng tin cn thit cho ngi s dng bng cch duyt qua Internet.
hiu c cc c s k thut ca c s d liu chng ta phi bt u t cc
c s k thut ca c s d liu truyn thng. Mc ch ca gio trnh ny l
nghin cu cc c s k thut . Trong chng ny chng ta s nh ngha c s
d liu, h qun tr c s d liu, m hnh c s d liu v cc thut ng c bn
khc.
I- C s d liu
I.1- nh ngha c s d liu
C s d liu v k thut c s d liu c nh hng rt ln n vic s
dng my tnh. C th ni rng c s d liu ng vai tr quan trng trong mi
8
lnh vc c s dng my tnh nh gio dc, thng mi, k ngh, khoa hc, th
vin,. Thut ng c s d liu tr thnh mt thut ng ph dng.
Mt c s d liu l mt tp hp cc d liu c lin quan vi nhau, c lu
tr trn my tnh, c nhiu ngi s dng v c t chc theo mt m hnh. D
liu l nhng s kin c th ghi li c v c ngha.
V d, qun l vic hc tp trong mt mi trng i hc, cc d liu l cc
thng tin v sinh vin, v cc mn hc, im thi.Chng ta t chc cc d liu
thnh cc bng v lu gi chng vo s sch hoc s dng mt phn mm my tnh
lu gi chng trn my tnh. Ta c mt tp cc d liu c lin quan n nhau v
mang nhiu ngha, l mt c s d liu.
I.2- Cc tnh cht ca mt c s d liu
Mt c s d liu c cc tnh cht sau:
1. Mt c s d liu biu th mt kha cnh no ca th gii thc nh hot
ng ca mt cng ty, mt nh trng, mt ngn hng Nhng thay i ca th
gii thc phi c phn nh mt cch trung thc vo trong c s d liu. Nhng
thng tin c a vo trong c s d liu to thnh mt khng gian c s d liu
hoc l mt th gii nh (miniworld) .
2. Mt c s d liu l mt tp hp d liu lin kt vi nhau mt cch logic
v mang mt ngha c hu no . Mt c s d liu khng phi l mt tp hp
tu tin.
3. Mt c s d liu c thit k v c ph bin cho mt mc ch ring.
N c mt nhm ngi s dng c ch nh v c mt s ng dng c xc nh
ph hp vi mi quan tm ca ngi s dng. Ni cch khc, mt c s d liu c
mt ngun cung cp d liu, mt mc tng tc vi cc s kin trong th gii
thc v mt nhm ngi quan tm tch cc n cc ni dung ca n.
Mt c s d liu c th c c tu v c phc tp thay i. C nhng c
s d liu ch gm vi trm bn ghi (nh c s d liu phc v vic qun l lng
mt c quan nh), v c nhng c s d liu c dung lng rt ln (nh cc c
s d liu phc v cho vic tnh cc in thoi, qun l nhn s trn mt phm vi
ln). Cc c s d liu phi c t chc qun l sao cho nhng ngi s dng c
th tm kim d liu, cp nht d liu v ly d liu ra khi cn thit. Mt c s d
liu c th c to ra v duy tr mt cch th cng v cng c th c tin hc
9
ho. Mt c s d liu tin hc ho c to ra v duy tr bng bng mt nhm
chng trnh ng dng hoc bng mt h qun tr c s d liu.
II- H qun tr c s d liu
II.1- nh ngha h qun tr c s d liu
Mt h qun tr c s d liu l mt tp hp chng trnh gip cho ngi s
dng to ra, duy tr v khai thc mt c s d liu. N l mt h thng phn mm
ph dng, lm d qu trnh nh ngha, xy dng v thao tc c s d liu cho cc
ng dng khc nhau.
nh ngha mt c s d liu bao gm vic c t cc kiu d liu, cc cu
trc v cc rng buc cho cc d liu s c lu tr trong c s.
Xy dng mt c s d liu l qu trnh lu tr cc d liu trn cc phng
tin lu tr c h qun tr c s d liu kim sot.
Thao tc mt c s d liu bao gm cc chc nng nh truy vn c s d liu
ly ra cc d liu c th, cp nht c s d liu phn nh cc thay i trong
th gii nh v to ra cc bo co t cc d liu.
Cc h qun tr c s d liu dng th hin mt c s d liu tin hc ho c
th l ph dng (l mt phn mm ng gi) hoc c th l chuyn dng (l mt
tp cc phn mm c to ra vi mt mc ch ring).
Ngi ta gi c s d liu v h qun tr c s d liu bng mt thut ng
chung l h c s d liu. Mi trng ca mt h c s d liu c m t bng
hnh v di y (hnh I-1).
II.2- Cc chc nng ca mt h qun tr c s d liu
Mt h qun tr c s d liu hin nay c cc chc nng sau :
1. Lu tr cc nh ngha, cc mi lin kt d liu (gi l siu d liu) vo
mt t in d liu. Cc chng trnh truy cp n c s d liu lm vic thng
qua h qun tr c s d liu. H qun tr c s d liu s dng d liu trong t
in d liu tm kim cc cu trc thnh phn d liu v cc mi lin kt c
yu cu. Mi s thay i trong cc tp c s d liu s c t ng ghi li vo t
in d liu. Nh vy, h qun tr c s d liu gii phng ngi s dng khi vic
lp trnh cho cc mi lin kt phc tp trong mi chng trnh, vic sa i cc
10
chng trnh truy cp n tp c s d liu b sa i. Ni cch khc, h qun
tr c s d liu loi b s ph thuc gia d liu v cu trc ra khi h thng.

nh I-1. Mi trng h c s d liu
2. To ra cc cu trc phc tp theo yu cu lu tr d liu. N gip
ngi s dng lm nhim v kh khn l nh ngha v lp trnh cho cc c trng
vt l ca d liu.
3. Bin i cc d liu c nhp vo ph hp vi cc cu trc d liu
im 2. Nh vy, h qun tr c s d liu gip ngi s dng phn bit dng logic
v dng vt l ca d liu. Bng vic duy tr s c lp d liu, h qun tr c s d
liu chuyn cc yu cu logic thnh cc lnh nh v mt cch vt l v ly ra cc
d liu yu cu. iu cng c ngha l h qun tr c s d liu to khun dng
Ngi s dng / Ngi lp trnh
Chng trnh ng dng / Truy vn

Phn mm x l
Truy vn / Chng trnh
Phn mm truy cp n cc
d liu c lu tr
nh ngha c s d
liu (Siu d liu )
C s d liu

11
cho cc d liu c ly ra lm cho n ph hp vi mong mun logic ca ngi
s dng.
4. To ra mt h thng bo mt v p t tnh bo mt v ring t trong c s
d liu.
5. To ra cc cu trc phc tp cho php nhiu ngi s dng truy cp n
d liu
6. Cung cp cc th tc sao lu v phc hi d liu m bo s an ton v
ton vn d liu.
7. Xc tin v p t cc quy tc an ton loi b vn ton vn d liu.
iu cho php ta lm ti thiu s d tha d liu v lm ti a tnh nht qun
d liu.
8. Cung cp vic truy cp d liu thng qua mt ngn ng truy vn. Mt
ngn ng truy vn l mt ngn ng phi th tc cho php ngi s dng ch ra ci g
cn phi lm m khng cn phi ch ra n c lm nh th no. Cc h qun tr
c s d liu cng cung cp vic truy cp d liu cho nhng ngi lp trnh thng
qua cc ngn ng th tc.
II.3- Cc c trng ca gii php c s d liu
Trc khi khi nim c s d liu ra i, h thng tp (file) l mt phng
php c p dng trong vic qun l. Mt tp c th c xem l mt cp h s
lu tr cc thng tin lin quan n tng cng vic ring bit. V d, trong mt c
quan, b phn ti v s c mt cp h s lin quan n lng ca cc nhn vin, b
phn t chc c cp h s lin quan n vn nhn s Vic x l ly ra cc
thng tin nh l cc thng k v lng, v qu trnh cng tc lc u c thc
hin mt cch th cng. Dn dn, khi lng thng tin ngy cng ln, vic x l
thng tin ngy cng phc tp, ngi ta s dng my tnh vo vic qun l. Cc cp
h s c chuyn thnh cc tp trn my tnh v vic x l thng tin c thc
hin bng cch lp trnh (trong mt ngn ng lp trnh th h 3).
Vic qun l theo gii php h thng tp c rt nhiu nhc im. Th nht,
l s d tha thng tin: cng mt thng tin c lu tr nhiu ln (chng hn,
danh sch nhn vin c mt trong tp lng v cng c mt c trong tp nhn s).
iu gy ra vic lng ph b nh v d gy sai st trong khi cp nht d liu, d
sinh ra cc d liu khng ng n. Th hai, l vic ph thuc gia chng
12
trnh ng dng v d liu. Mi khi c s thay i cu trc tp v cc d liu trong
tp, chng trnh ng dng khai thc thng tin trn tp cng thay i theo. iu
gy ra kh khn ln cho vic bo tr.
Gii php c s d liu ra i gii quyt c nhng nhc im . C
th, gii php c s d liu c nhng c trng sau:
1. Bn cht t m t ca h c s d liu.
Mt c trng c bn ca gii php c s d liu l h thng c s d liu
khng ch gm c bn thn c s d liu m cn c c nh ngha hoc m t y
v cu trc c s d liu v cc rng buc. nh ngha ny c lu tr trong t
in h thng, n cha cc thng tin nh l cu trc ca mi tp, kiu v dng lu
tr ca tng mc d liu. Cc thng tin c lu gi trong t in gi l siu d
liu (meta-data) v chng m t cu trc ca d liu nguyn thu (hnh I-1). Phn
mm h qun tr c s d liu v nhng ngi s dng c s d liu s dng t
in ly thng tin v cu trc ca c s d liu.
2. S c lp gia chng trnh v d liu.
Trong h thng tp, cu trc ca cc tp c s d liu c nhng vo trong
cc chng trnh truy cp, v vy bt k mt thay i no v cu trc ca mt tp
cng i hi phi thay i tt c cc chng trnh truy cp n tp . Ngc li,
cc chng trnh truy cp ca h qun tr c s d liu khng i hi vic thay i
nh th. Cu trc ca cc tp d liu c lu tr trong t in tch ri vi cc
chng trnh truy cp. Tnh cht ny gi l s c lp d liu chng trnh.
3. H tr cc khung nhn d liu nhiu thnh phn.
Mt c s d liu c nhiu ngi s dng, mi mt ngi c th i hi mt
phi cnh hoc mt khung nhn (view) khc nhau. Mt khung nhn c th l mt
tp con ca c s d liu hoc n c th cha cc d liu o, l cc d liu c
trch ra t cc tp c s d liu khc nhau nhng khng c lu tr mt cch r
rng. Mt h qun tr c s d liu nhiu ngi s dng phi cung cp nhiu cng
c nh ngha cc khung nhn nhiu thnh phn.
4. Chia s d liu v nhiu ngi s dng.
Mt h qun tr c s d liu nhiu ngi s dng phi cho php nhiu ngi
s dng truy cp ng thi n c s d liu. H qun tr c s d liu phi c
phn mm kim tra cnh tranh m bo rng cc ngi s dng cp nht n
13
cng mt c s d liu phi c thc hin theo cch c kim tra cho kt qu
ca cc cp nht l ng n.
II.4- V d v mt c s d liu
Chng ta hy xem xt mt c s d liu m nhiu ngi quen bit: c s
d liu TRNG. C s d liu ny lu gi cc thng tin lin quan n sinh vin,
cc mn hc, im trong mt mi trng i hc. C s d liu c t chc
thnh 5 bng, mi bng lu tr cc bn ghi d liu cng mt kiu. Bng
SINHVIN lu gi d liu v cc sinh vin, bng MNHC lu gi cc d liu
v cc mn hc, bng HCPHN lu gi cc d liu v cc hc phn ca cc mn
hc, bng IM lu gi im ca tng hc phn ca cc sinh vin v bng
BITTRC lu gi thng tin v cc mn hc cn bit trc ca cc mn hc.
Cu trc ca c s d liu v mt vi mu d liu v d c trnh by hnh I-2.
SINHVIN MsSV HtnSV Lp Chuynngnh
17 Nguyn Nam K45T Tinhc
8 L Bc K45C CngnghTT

MNHC MsMH TnMH Svht Khoa
101 Tinhc c s 8 Cng ngh
102 Cu trc DL v GT 5 Cng ngh
103 Ton ri rc 5 Cng ngh
104 C s d liu 3 Cng ngh

HCPHN MsHP MsMH Hck Nm Tngiovin
1011 101 1 2001 Vn
1012 101 2 2002 Vn
1031 103 1 2001 Hong
1032 103 2 2002 Hong
1020 102 3 2002 Ln
1040 104 4 2002 Huy

14
IM MsSV MsHP im
17 1031 8
17 1020 6
8 1031 9
8 1011 10
8 1020 7
8 1040 9

BIT TRC M sMH MsMHbittrc
104 102
104 103
102 101
Hnh I-2. C s d liu TRNG
nh ngha c s d liu ny, chng ta phi ch ra cu trc ca cc bn ghi
ca mi tp (bng) bng cch c t cc kiu khc nhau ca cc phn t d liu s
c lu tr trong mi bn ghi. Theo hnh I-2 , mi bn ghi SINHVIN bao gm
cc d liu biu din M s sinh vin, H tn sinh vin, Lp, Chuyn ngnh.
Mi bn ghi MNHC bao gm cc d liu biu din Tn mn hc, M s
mn hc, S n v hc trnh, Khoa, Chng ta phi ch ra mt kiu d liu cho
mi phn t d liu bn trong cc bn ghi. V d, ta c th c t H tn sinh vin
l mt dy k t c di nh hn hoc bng 30, M s sinh vin l mt s
nguyn,.
xy dng c s d liu TRNG, chng ta lu gi cc d liu biu
din mi sinh vin, mi mn hc, vo cc tp thch hp. rng cc bn ghi
trong cc tp khc nhau c th c mi quan h vi nhau. V d, bn ghi i vi
Nguyn Nam trong tp SINHVIN c lin quan n hai bn ghi trong tp IM.
Cc bn ghi ny ch ra im ca Nguyn Nam trong hai hc phn. Tng t nh
vy, cc bn ghi trong tp c mi quan h vi cc bn ghi trong tp MNHC
Thng thng mt c s d liu cha nhiu kiu bn ghi v cha nhiu mi quan
h gia cc tp.
15
Thao tc c s d liu bao gm vic truy vn v cp nht c s d liu. Truy
vn c s d liu l a ra cc yu cu i vi c s d liu ly ra cc thng tin
cn thit. V d, chng ta c th c cc truy vn nh: Lit k cc mn hc v im
thi ca sinh vin Nguyn Nam, a ra danh sch cc sinh vin thi trt mn c
s d liu. Cp nht c s d liu bao gm vic thm vo c s d liu bn ghi,
xo b cc bn ghi hoc sa i cc gi tr trong cc bn ghi. Cc truy vn v cc
cp nht phi c c t trong ngn ng h c s d liu mt cch chnh xc
trc khi chng c x l.
III- M hnh c s d liu
Cc loi cu trc c s d liu v mi lin h gia chng ng vai tr rt ln
trong vic xc nh tnh hiu qu ca h qun tr c s d liu. V vy, thit k c
s d liu tr thnh hot ng chnh trong mi trng c s d liu.
Vic thit k c s d liu c thc hin n gin hn nhiu khi ta s dng
cc m hnh. Cc m hnh l s tru tng n gin ca cc s kin trong th gii
thc. Cc tru tng nh vy cho php ta kho st cc c im ca cc thc th v
cc mi lin h c to ra gia cc thc th . Vic thit k cc m hnh tt s
a ra cc c s d liu tt v trn c s s c cc ng dng tt. Ngc li, m
hnh khng tt s a n thit k c s d liu ti v dn n cc ng dng khng
ng.
Mt m hnh c s d liu l mt tp hp cc khi nim dng biu din
cc cu trc ca c s d liu. Cu trc ca mt c s d liu l cc kiu d liu,
cc mi lin kt v cc rng buc phi tun theo trn cc d liu. Nhiu m hnh
cn c thm mt tp hp cc php ton c bn c t cc thao tc trn c s d
liu.
III.1- Cc loi m hnh c s d liu
C rt nhiu m hnh d liu c ngh. Chng ta c th phn loi cc
m hnh d liu da trn cc khi nim m chng s dng m t cc cu trc c
s d liu.
Cc m hnh d liu bc cao hoc m hnh d liu mc quan nim cung cp
cc khi nim gn lin vi cch cm nhn d liu ca nhiu ngi s dng. Cc m
hnh ny tp trung vo bn cht logic ca biu din d liu, n quan tm n ci
c biu din trong c s d liu ch khng phi cch biu din d liu.
16
Cc m hnh d liu bc thp hoc cc m hnh d liu vt l cung cp cc
khi nim m t chi tit v vic cc d liu c lu tr trong my tnh nh th
no. Cc khi nim do m hnh d liu vt l cung cp ni chung c ngha i
vi cc chuyn gia my tnh ch khng c ngha my i vi ngi s dng
thng thng. gia hai loi m hnh ny l mt lp cc m hnh d liu th hin,
chng cung cp nhng khi nim m ngi s dng c th hiu c v khng xa
vi cch t chc d liu bn trong my tnh. Ngi ta cn gi loi m hnh d liu
ny l loi m hnh d liu mc logic. Cc m hnh d liu th hin che giu mt s
chi tit v vic lu tr d liu nhng c th c ci t trc tip trn h thng my
tnh.
Trong chng II, chng ta s nghin cu mt m hnh d liu mc quan nim,
m hnh thc th - lin kt, gi tt l m hnh ER (Entity Relationship Model).
M hnh ny s dng cc khi nim thc th, thuc tnh, mi lin kt, din t
cc i tng ca th gii thc. Mt thc th din t mt i tng hoc mt khi
nim ca th gii thc. V d, mt thc th l mt nhn vin hoc mt d n c
m t trong c s d liu. Mt thuc tnh din t mt c trng no ca thc
th. Chng hn, h tn, lng l cc thuc tnh ca thc th nhn vin. Mt mi
lin kt gia hai hay nhiu thc th din t mt mi quan h qua li gia cc thc
th. V d, gia thc th nhn vin v thc th d n c mi lin kt mt nhn vin
lm vic trn mt d n. M hnh d liu hng i tng cng l mt m hnh d
liu bc cao. N s dng cc khi nim nh lp, phng thc, thng ip Bn
c c th tm hiu v m hnh ny trong cc ti liu [1], [2].
Cc m hnh d liu th hin l cc m hnh c s dng thng xuyn nht
trong cc h c s d liu thng mi. Ba m hnh ni ting thuc loi ny l m
hnh quan h, m hnh mng v m hnh phn cp. Cc m hnh mng v phn cp
ra i trc v c s dng rng ri trong qu kh (trc 1970). Vo u nhng
nm 70, m hnh quan h ra i. Do tnh u vit ca n, m hnh quan h dn dn
thay th cc m hnh mng v phn cp. Chng ta s nghin cu v m hnh quan
h trong chng III.
Cc m hnh d liu vt l m t cch lu tr d liu trong my tnh gii thiu
cc thng tin nh khun dng bn ghi, sp xp bn ghi, ng truy cp
17
III.2- Lc v trng thi c s d liu
Trong mt m hnh d liu cn phi phn bit r gia m t ca c s d liu
v bn thn c s d liu. M t ca mt c s d liu c gi l lc c s
d liu, n c xc nh r trong qu trnh thit k c s d liu v khng b thay
i thng xuyn. a s cc m hnh d liu c cc quy c hin th cc lc .
Hin th ca mt lc c gi l biu ca lc . Mt biu lc
ch th hin mt vi kha cnh ca lc nh l cc kiu bn ghi, cc mc d liu
v mt s kiu rng buc. Cc kha cnh khc khng c th hin trong biu
lc .
Cc d liu trong mt c s d liu c th thay i mt cch thng xuyn.
Cc d liu trong mt c s d liu ti mt thi im c th c gi l mt trng
thi c s d liu hoc l nh (snapshot) ca c s d liu. Nhiu trng thi quan
h c th c xy dng lm tng ng vi mt lc c s d liu c th.
Mi khi chng ta chn vo hoc loi b mt bn ghi, sa i gi tr ca mt mc d
liu trong mt bn ghi, chng ta lm thay i trng thi ca c s d liu sang
mt trng thi khc.
Vic phn bit gia lc c s d liu v trng thi c s d liu l rt
quan trng. Khi chng ta nh ngha mt c s d liu mi, ta ch c t lc c
s d liu cho h qun tr c s d liu. Ti thi im ny, trng thi ca c s d
liu l mt trng thi rng, khng c d liu. Chng ta nhn c trng thi ban
u ca c s d liu khi ta nhp d liu ln u tin. T tr i, mi khi mt
php ton cp nht c thc hin i vi c s d liu, chng ta nhn c mt
trng thi c s d liu khc. Ti mi thi im, c s d liu c mt trng thi
hin ti. H qun tr c s d liu c trch nhim m bo rng mi trng thi c s
d liu l mt trng thi vng chc, ngha l mt trng thi tho mn cu trc v
cc rng buc c c t trong lc . V vy, vic c t mt lc ng n
cho h qun tr c s d liu l mt vic lm cc k quan trng v lc phi
c thit k mt cch cn thn. H qun tr c s d liu lu tr cc m t ca cc
cu trc lc v cc rng buc cn gi l siu d liu vo trong t in
(catalog) ca h qun tr sao cho phn mm h qun tr c s d liu c th tham
kho n lc khi n cn. i khi ngi ta cn gi lc l mc tiu
(intension) v trng thi c s d liu l m rng (extension) ca lc .
18
IV- Con ngi trong h c s d liu
Vi mt c s d liu ln, rt nhiu ngi tham gia vo vic thit k, s dng
v duy tr c s d liu. Nhng ngi lin quan n h c s d liu c chia
thnh hai nhm chnh. Nhm th nht gm nhng ngi m cng vic ca h lin
quan hng ngy n c s d liu, l nhng ngi qun tr c s d liu, thit k
c s d liu, s dng c s d liu, phn tch h thng v lp trnh ng dng.
Nhm th hai gm nhng ngi lm vic duy tr mi trng h c s d liu
nhng khng quan tm n bn thn c s d liu, l nhng ngi thit k v
ci t h qun tr c s d liu, pht trin cng c, thao tc vin v bo tr.
IV.1- Ngi qun tr h c s d liu (Database Administrator DBA)
Trong mt t chc c nhiu ngi cng s dng cc ti nguyn, cn phi c
mt ngi gim st v qun l. Trong mi trng h c s d liu, cc ti nguyn
l c s d liu, h qun tr c s d liu v cc phn mm lin quan. Ngi qun
tr h c s d liu l ngi chu trch nhim qun l cc ti nguyn . Ngi ny
chu trch nhim v vic cho php truy cp c s d liu, t chc v hng dn
vic s dng c s d liu, cp cc phn mm v phn cng theo yu cu.
IV.2- Ngi thit k c s d liu (Database Designer)
Ngi ny chu trch nhim xc nh cc d liu s c lu gi trong c s,
chn cc cu trc thch hp biu din v lu gi cc d liu . Nhng nhim
v ny c thc hin trc khi c s d liu c ci t v ph bin. Ngi thit
k c trch nhim giao thip vi nhng ngi s dng tng lai hiu c cc
i hi ca h v a ra mt thit k tho mn cc yu cu . Anh ta cng c
nhim v giao thip vi cc nhm ngi s dng v c kh nng h tr cc yu cu
ca cc nhm.
IV.3- Nhng ngi s dng (End User)
Nhng ngi s dng l nhng ngi m cng vic ca h i hi truy cp
n c s d liu truy vn, cp nht v sinh ra cc thng tin. C th chia nhng
ngi s dng thnh hai nhm chnh: nhng ngi s dng th ng (tc l nhng
ngi s dng khng c nhiu kin thc v h c s d liu) v nhng ngi s
dng ch ng (l nhng ngi c hiu bit tt v h c s d liu).
19
Chc nng cng vic ca nhng ngi s dng th ng (chim phn ln
nhng ngi s dng) gn lin vi vic truy vn v cp nht thng xuyn c s
d liu bng cch s dng cc cu hi v cc cp nht chun (gi l cc giao tc
nh sn) c lp trnh v kim tra cn thn. Nhng ngi ny ch cn hc mt
t v cc phng tin do h qun tr c s d liu cung cp v hiu cc kiu giao tc
chun c thit k v ci t l .
Nhng ngi s dng ch ng c hiu bit tt v h c s d liu, h c th
t ci t cc ng dng ring ca mnh lm tho mn cc yu cu phc tp ca
h.
IV.4- Ngi phn tch h thng v lp trnh ng dng
Ngi phn tch h thng xc nh cc yu cu ca nhng ngi s dng (ch
yu l nhng ngi s dng th ng) c t cc chng trnh ph hp vi yu
cu ca h.
Ngi vit chng trnh ng dng th hin cc c t ca nhng ngi phn
tch thnh chng trnh, sau kim th, sa li lm ti liu v bo tr cc giao tc
nh sn.
IV.5- Ngi thit k v ci t h qun tr d liu
l nhng ngi thit k, ci t cc m un, giao din ca h qun tr c s
d liu thnh cc phn mm ng gi. Mt h qun tr c s d liu l mt h
thng phn mm phc tp bao gm nhiu thnh phn (m un). l cc m un
ci t t in d liu, ngn ng truy vn, b x l giao din, truy cp d liu,
kim tra cnh tranh, phc hi v an ton. H qun tr c s d liu phi giao tip
vi cc h thng phn mm khc nh h iu hnh v cc chng trnh dch cho
nhiu ngn ng khc nhau.
IV.6- Nhng ngi pht trin cng c
L nhng ngi thit k v ci t cc cng c (tool), l cc phn mm
ng gi lm d vic thit k v s dng c s d liu.
IV.7- Cc thao tc vin v nhng ngi bo tr
L nhng ngi chu trch nhim v vic chy v bo tr phn cng v phn
mm ca h thng.
20
V- Ngn ng c s d liu v giao din
V.1- Cc ngn ng h qun tr c s d liu
Mt khi vic thit k c s d liu hon thnh, cn phi chn mt h qun
tr c s d liu ci t c s d liu. Trong cc h qun tr c s d liu hin
nay thng c cc ngn ng: ngn ng nh ngha d liu (data definition language
DDL) v ngn ng thao tc d liu (data manipulation language DML).
Ngn ng nh ngha d liu c s dng nh ngha cc lc . H
qun tr c s d liu c mt chng trnh dch ngn ng DDL, nhim v ca n l
x l cc cu lnh DDL xc nh m t ca cu trc lc v lu tr m t
lc vo t in ca h qun tr c s d liu.
Ngn ng thao tc c s d liu c s dng thao tc c s d liu. Cc
thao tc chnh gm c ly ra, chn vo, loi b v sa i cc d liu. C hai kiu
ngn ng thao tc d liu chnh: ngn ng thao tc d liu mc cao hoc ngn ng
phi th tc hoc ngn ng thao tc d liu mc thp.
Ngn ng thao tc d liu mc cao c th c s dng din t cc php
ton c s d liu mt cch ngn gn. Phn ln cc h qun tr c s d liu cho
php nhp cc lnh ca ngn ng thao tc d liu mc cao theo cch lp (ngha l
sau khi nhp mt lnh, h thng s thc hin lnh ri mi nhp lnh tip theo)
hoc c nhng vo mt ngn ng lp trnh vn nng. Trong trng hp nhng
vo ngn ng khc, cc lnh ca ngn ng thao tc d liu phi c xc nh bn
trong chng trnh sao cho mt chng trnh tin dch c th nhn ra chng v
c h qun tr c s d liu x l.
Ngn ng thao tc c s d liu mc thp hoc ngn ng th tc phi c
nhng vo trong mt ngn ng lp trnh vn nng. Ngn ng thao tc c s d liu
kiu ny thng rt ra cc bn ghi hoc cc i tng ring r v x l chng mt
cch ring r. V vy, chng cn phi s dng cc cu trc ngn ng lp trnh nh
vng lp, iu kin, rt ra tng bn ghi mt t mt tp cc bn ghi. Ngn ng
thao tc d liu mc thp c gi l ngn ng mt ln mt bn ghi. Cc ngn
ng thao tc d liu mc cao c th dng mt lnh rt ra mt lc nhiu bn ghi
nn chng c gi l ngn ng mt ln mt tp hp.
21
V.2- Cc loi giao din h qun tr c s d liu
Cc h qun tr c s d liu cung cp rt nhiu loi giao din ngi dng
thn thin. Cc loi giao din chnh gm c:
Giao din da trn bng chn: Cc giao din ny cung cp cho ngi s dng
danh sch cc la chn, gi l bng chn (menu) v hng dn ngi s dng din
t mt yu cu t u n cui. Cc bng chn lm cho ngi s dng khng cn
nh cc lnh v c php ca ngn ng truy vn. Cc bng chn th xung tr
thnh k thut ph bin trong cc giao din da trn ca s. Chng thng c s
dng trong cc giao din qut, cho php ngi s dng nhn thy ni dung ca mt
c s d liu theo cch khng c cu trc.
Giao din da trn mu biu: Cc giao din ny hin th mt mu biu cho
ngi s dng. Nhng ngi s dng c th in vo tt c cc ca mu biu
nhp cc d liu mi hoc h ch in vo mt s cn h qun tr c s d liu s
a ra cc d liu ph hp cho cc khc. Cc mu biu thng c thit k v
c lp trnh cho cc ngi dng n gin. Mt s h thng c cc tin ch gip
ngi s dng tng bc xy dng mt mu biu trn mn hnh.
Giao din ho: Mt giao din ho (GUI) thng hin th mt lc
cho ngi s dng di dng biu . Ngi dng c th thc hin mt truy vn
bng cch thao tc trn biu . Trong nhiu trng hp, GUI s dng c cc bng
chn v cc mu biu. a s cc GUI s dng cc cng c tr nh chut, phm
kch cc phn ca s .
Giao din cho ngi qun tr h thng: a s cc h qun tr c s d liu c
cc lnh u tin, ch c nhng ngi qun tr h thng mi s dng cc lnh .
l cc lnh to ra cc ti khon (account), t cc tham s cho h thng, cp cc ti
khon, thay i lc hoc t chc li cc cu trc lu tr ca c s d liu.
VI- Cu hi n tp
1. nh ngha cc thut ng : c s d liu, h qun tr c s d liu, h c s
d liu, t in c s d liu, m hnh c s d liu.
2. Nu cc tnh cht ca mt c s d liu
3. Nu cc chc nng ca mt h qun tr c s d liu
4. Gii thch cc c trng ca gii php c s d liu
22
5. nh ngha m hnh c s d liu v phn loi
6. Lit k cc ngi c lin quan n h c s d liu.

23

Chng II- M HNH THC TH - LIN KT
Trong chng ny chng ta s lm quen vi m hnh thc th - lin kt, gi tt
l m hnh ER ( Entity-Relationship Model). l mt m hnh d liu mc quan
nim ph bin, tp trung vo cc cu trc d liu v cc rng buc. M hnh ny
thng c s dng thit k cc ng dng c s d liu v nhiu cng c thit
k c s d liu s dng cc khi nim ca n.
I- S dng m hnh quan nim bc cao cho vic thit k c s d
liu
Qu trnh thit k mt c s d liu s dng m hnh quan nim bc cao c
minh ha bng hnh II.1.
Bc u tin l tp hp cc yu cu v phn tch. Trong bc ny, ngi
thit k c s d liu phng vn nhng ngi s dng c s d liu hiu v lm
ti liu v cc yu cu v d liu ca h. Kt qu ca bc ny l mt tp hp ghi
chp sc tch v cc yu cu ca nhng ngi s dng. Nhng yu cu s c c
t cng y v chi tit cng tt. Song song vi vic c t cc yu cu d liu,
cn phi c t cc yu cu v chc nng ca ng dng: l cc thao tc do ngi
s dng nh ngha s c p dng i vi c s d liu.
Mi khi tt c cc yu cu c thu thp v phn tch, bc tip theo l to
ra lc quan nim cho c s d liu bng cch s dng m hnh d liu quan
nim mc cao. Bc ny gi l thit k quan nim. Lc quan nim l mt m
t sc tch v cc yu cu d liu ca nhng ngi s dng. N bao gm cc m t
chi tit ca cc kiu thc th, kiu lin kt v cc rng buc, chng c biu din
bng cc khi nim do cc m hnh d liu bc cao cung cp. V nhng khi nim
ny khng cha cc chi tit ci t, chng thng d hiu v c th s dng chng
giao lu vi nhng ngi s dng. Lc quan nim mc cao cng c th
c s dng nh mt dn chng m bo rng tt c cc i hi ca ngi s
dng u tha mn v cc i hi ny khng cha cc mu thun. Gii php ny
cho php nhng ngi thit k c s d liu tp trung vo vic c t cc tnh cht
ca d liu m khng cn quan tm n cc chi tit lu tr. Mt thit k c s d
liu quan nim tt s lm d cho cng vic ca nhng ngi thit k c s d liu.
24
Trong qu trnh (hoc sau khi) thit k lc quan nim, chng ta c th s
dng cc php ton c bn ca m hnh d liu c t cc thao tc ca ngi s
dng c xc nh trong khi phn tch chc nng. iu cng gip khng nh
rng lc quan nim tha mn mi yu cu chc nng c xc nh. Nu c
mt s yu cu chc nng khng th nu ra c trong lc ban u th bc
ny c th c s sa i lc quan nim cho ph hp.
Bc tip theo trong vic thit k c s d liu l vic ci t mt c s d
liu bng cch s dng mt h qun tr c s d liu c sn. Hu ht cc h qun tr
c s d liu s dng mt m hnh d liu ci t (th hin), chng hn nh m
hnh quan h hoc i tng, v vy lc quan nim c chuyn t m hnh d
liu bc cao thnh m hnh d liu ci t. Bc ny gi l thit k logic hoc l
nh x m hnh d liu. Kt qu ca bc ny l mt lc c s d liu di
dng mt m hnh d liu ci t ca h qun tr c s d liu.
Bc cui cng trong thit k c s d liu l thit k vt l. Trong bc ny
ta phi ch ra cc cu trc bn trong, cc ng dn truy cp, t chc tp cho cc
tp c s d liu. Song song vi cc hot ng , cc chng trnh ng dng cng
c thit k v ci t nh l cc giao tc (transaction) c s d liu tng ng
vi cc c t giao tc mc cao.
25

Hnh II-1. S m t cc bc chnh ca vic thit k
II- Cc thnh phn c bn ca m hnh ER
II.1- Thc th v thuc tnh
i tng c trnh by trong m hnh ER l thc th. Thc th l mt vt
trong th gii thc, c s tn ti c lp. Mt thc th c th l c th, tc l chng
ta c th cm nhn c bng cc gic quan, hoc c th l tru tng, tc l ci
m chng ta khng cm nhn c bng cc gic quan nhng c th nhn bit c
Th gii thc
TP HP V PHN TCH
CC YU CU
THIT K QUAN NIM
THIT K L GIC
THIT K VT L
PHN TCH CHC NNG
THIT K CHNG TRNH
NG DNG

CI T GIAO TC
Cc yu cu chc nng
c t giao tc mc cao
Cc yu cu c s d liu
Lc quan nim
Lc l gic
(c lp vi h QTCSDL)
Cc chng trnh ng dng
Lc bn trong
26
bng nhn thc. Mt ci t, mt nhn vin, l nhng thc th c th. Mt n
v cng tc, mt trng hc l nhng thc th tru tng.
Mi mt thc th c cc thuc tnh, l cc c trng c th m t thc th
. V d, mt thc th Nhnvin c m t bng Htn, Tui, ach, Lng
ca nhn vin . Mt thc th c th s c mt gi tr cho mi thuc tnh ca n.
V d, nhn vin nv1 c cc gi tr cho cc thuc tnh Htn, Tui, ach, Lng
ca n l L Vn, 32, H ni, 500000. Cc gi tr thuc tnh m t mi thc
th s tr thnh mt phn chnh ca cc d liu s c lu gi trong c s d liu.
Trong m hnh ER c mt nhiu kiu thuc tnh: thuc tnh n, thuc tnh phc
hp, thuc tnh n tr, thuc tnh a tr, thuc tnh c lu tr, thuc tnh suy
din c, thuc tnh c gi tr khng xc nh, thuc tnh phc tp.
Thuc tnh n l thuc tnh khng th phn chia ra c thnh cc thnh
phn nh hn. V d, thuc tnh Tui ca mt nhn vin l mt thuc tnh n.
Thuc tnh phc hp l thuc tnh c th phn chia c thnh cc thnh phn nh
hn, biu din cc thuc tnh c bn hn vi cc ngha c lp. V d, thuc tnh
Htn ca thc th nhn vin c th phn chia thnh cc tnh Hm v Tn. Gi
tr ca mt thuc tnh l s kt hp kt hp cc gi tr ca cc thuc tnh thnh
phn to nn n. Vic phn chia mt thuc tnh phc hp thnh cc thuc tnh n
ty thuc vo hon cnh c th.
Nhng thuc tnh c gi tr duy nht cho mt thc th c th gi l cc thuc
tnh n tr. V d, Htn l mt thuc tnh n tr ca thc th nhn vin, mi
nhn vin c mt h tn duy nht. Trong mt s trng hp, mt thuc tnh c th
c mt tp gi tr cho cng mt thc th. Nhng thuc tnh nh vy gi l thuc
tnh a tr. V d, thuc tnh Bngcp ca mt ngi. Mt ngi c th khng c
bng cp no, ngi khc c th c mt bng, ngi khc na c th c nhiu
bng. Nh vy, cc ngi khc nhau c th c mt s gi tr khc nhau cho thuc
tnh Bngcp. Thuc tnh Bngcp l mt thuc tnh a tr.
Thuc tnh c lu tr l cc thuc tnh m gi tr ca n c nhp vo khi
ci t c s d liu. Trong mt s trng hp, hai hay nhiu thuc tnh c gi tr
lin quan n nhau. V d, thuc tnh Tui v thuc tnh Ngysinh ca mt ngi.
Vi mt ngi c th, ta c th tnh tui ca anh ta bng cch ly nm hin ti tr
i nm ca Ngysinh. Thuc tnh m gi tr ca n c th tnh c thng qua gi
tr ca cc thuc tnh khc gi l thuc tnh suy din c.
27
Cc gi tr khng xc nh (null values): Trong mt s trng hp, mt thc
th c th c th khng c cc gi tr p dng c cho mt thuc tnh. V d,
thuc tnh Sinthoi ca thc th nhn vin s khng c gi tr i vi cc nhn
vin khng c s in thoi. Trong trng hp nh vy, ta phi to ra mt gi tr
c bit gi l gi tr khng xc nh (null). Gi tr khng xc nh c to ra khi
mt thuc tnh c gi tr khng p dng c hoc khi khng bit.
Cc thuc tnh phc tp: L s kt hp ca cc thuc tnh phc hp v a tr.
II.2- Kiu thc th, tp thc th, kha v tp gi tr
Cc kiu thc th v cc tp thc th: Mt c s d liu thng cha nhng
nhm thc th nh nhau. V d, mt cng ty thu hng trm nhn vin v lu gi
nhng thng tin tng t lin quan n mi nhn vin. Cc thc th nhn vin ny
chia s cc thuc tnh ging nhau nhng mi thc th c cc gi tr ring cho cc
thuc tnh . Mt kiu thc th l mt tp hp cc thc th c cc thuc tnh nh
nhau. Mt kiu thc th trong c s d liu c m t bng tn v cc thuc tnh.
Vd: NHNVIN (Htn, Tui, Lng), CNGTY (Tn, aim, Gimc).
Mt tp hp cc thc th ca mt kiu thc th c th trong c s d liu ti mt
thi im c gi l mt tp thc th, n thng c tham chiu n bng cch
s dng tn ca kiu thc th. V d, NHNVIN va dng ch mt kiu thc
th, va ch tp hp hin ti ca tt c cc thc th nhn vin trong c s d
liu. Hnh II-2 minh ha cc kiu thc th NHNVIN, CNGTY v cc tp thc
th tng ng.
Mt kiu thc th c biu din trong lc ER nh l mt hp hnh ch
nht c cha tn kiu thc th. Cc thuc tnh c t trong cc hnh van v
c ni vi cc kiu thc th bng cc ng thng. Cc thuc tnh phc hp
cng c ni vi cc thuc tnh thnh phn ca n bng ng thng. Cc thuc
tnh a tr c hin th trong cc hnh van p (hnh II-3).
Mt kiu thc th m t mt lc (hoc mt mc ch) cho mt tp cc
thc th chia s cng mt cu trc. Tp hp cc thc th ca mt kiu thc th c
th c nhm vo mt tp thc th v c gi l mt th hin ca mt kiu thc
th.


28
NHNVIN
(Htn, Tui, Lng)
CNGTY
(Tn, adim, Gimc)
Nv1
(L Lan, 30, 800000)
Nv2
(Trn B, 45, 1000000)
Nv3
(Hong Vn, 25, 600000)
.
.
.
Ct1
(CT Phn mm, H ni, V An)
Ct2
(CT Hoa qu, Hi phng, L H)
Ct3
(CT My tnh, H ni, Phan
Anh)
.
.
.
Hnh II-2. Kiu thc th v tp thc th
Thuc tnh kha ca mt kiu thc th: Mt rng buc quan trng trn cc
thc th ca mt kiu thc th l kha. Mt kiu thc th thng c mt thuc tnh
m cc gi tr ca n l khc nhau i vi mi thc th ting bit trong mt tp
thc th. Thuc tnh nh vy gi l thuc tnh kha v cc gi tr ca n c th
dung xc nh tng thc th mt cch duy nht. V d, thuc tnh Tn ca kiu
thc th CNGTY l kha ca kiu thc th v mi thc th cng ty c mt tn
duy nht. i khi, nhiu thuc tnh kt hp vi nhau to thnh mt kha, ngha l
t hp cc gi tr ca cc thuc tnh ny phi khc nhau i vi mi thc th. Trong
trng hp nh vy ta c mt thuc tnh kha phc hp. Ch rng kha phc hp
phi ti thiu, ngha l tt c cc thuc tnh thnh phn phi c mt trong thuc tnh
phc hp tha mn tnh cht duy nht. Trong biu ha ca m hnh ER,
thuc tnh kha c biu din bng cch gch ngang di tn ca n (hnh II-3).
Khi ch ra rng mt thuc tnh l kha ca mt kiu thc th ngha l tnh cht
duy nht nu trn phi c tha mn i vi i vi mi m rng ca kiu thc
th. Nh vy, rng buc kha cm hai thc th bt k c gi tr cho thuc tnh kha
nh nhau ti cng mt thi im. l mt rng buc trn tt c cc th hin ca
thc th. Rng buc kha cng nh cc rng buc s c gii thiu v sau c
ly ra t cc rng buc ca th gii nh ca c s d liu.
29
Mt kiu thc th c th c nhiu hn mt thuc tnh kha. V d, nu mt
cng ty c mt m s duy nht v mt tn duy nht th cc thuc tnh Mscng ty
v Tncngty u l cc thuc tnh kha. Mt kiu thc th cng c th khng c
kha. Mt thc th khng c kha c gi l kiu thc th yu.

Hnh II-3. Biu din kiu thc th v cc thuc tnh
Min gi tr ca cc thuc tnh: Mi thuc tnh n ca mt kiu thc th
c kt hp vi mt min gi tr. l mt tp cc gi tr c th gn cho thuc
tnh ny i vi mi thc th ring bit. Cc min gi tr khng hin th trong cc
s ER.
Mt cch ton hc, mt thuc tnh A ca kiu thc th E c tp gi tr V c
th c nh ngha nh l mt hm t E vo tp hp lc lng P(V) ca V:
A: E P(V)
Ta k hiu gi tr ca thuc tnh A i vi thc th e l A(e). nh ngha
trn ng cho cc thuc tnh n tr, a tr v thuc tnh khng xc nh. Mt gi tr
khng xc nh c biu din bng mt tp rng. Vi cc thuc tnh n tr, A(e)
l mt gi tr n cho thc th e. Cc thuc tnh a tr khng c cc hn ch trn
A(e). Vi mt thuc tnh phc hp A, tp gi tr V l tch cc ca P(V
1
)x
P(V
2
)x.xP(V
n
), trong V
1
, V
2
, , V
n
l tp cc gi tr cho cc thnh phn n
ca A.
NHNVIN
MsNV Htn Ngysinh Bngcp
Hm Tn
30
II.3- Kiu lin kt, tp lin kt v cc th hin
Mt kiu lin kt R gia n kiu thc th E
1
, E
2
, ,E
n
xc nh mt tp lin kt
gia cc thc th ca cc kiu . Cng nh cc kiu thc th v tp thc th, mt
kiu lin kt v tp lin kt tng ng vi n cng c tn chung l R. Mt cch
ton hc, tp lin kt R l mt tp hp cc th hin lin kt r
i
, i= 1,2, trong
mi r
i
lin kt n thc th ring bit e
1
,e
2
,,e
n
v mi mt thc th e
j
trong r
i
l mt
thnh phn ca kiu thc th E
j
, 1 j n. Nh vy, mt kiu lin kt R l mt quan
h ton hc trn E
1
, E
2
, , E
n
hoc c th nh ngha nh l mt tp con ca tch
cc E
1
x E
2
x x E
n
. Mi kiu thc th E
1
,E
2
, , E
n
c gi l tham gia vo
kiu lin kt R, v tng t, mi thc th ring bit e
1
, e
2
, , e
n
c gi l tham
gia vo th hin lin kt r
i
= ( e
1
,e
2
,,e
n
).
Mt cch khng hnh thc, mi th hin lin kt r
i
trong R l mt s kt hp
ca cc thc th, mi thc th thuc v mt kiu thc th tham gia vo lin kt.
Mi lin kt r
i
nh vy din t mt s kin rng cc thc th tham gia trong r
i
c
mi quan h vi nhau theo mt cch no trong th gii thc. V d, trong thc
t, cc nhn vin lm vic cho cc n v, nh vy, c mt kiu lin kt lin kt
lm vic cho, lin kt gia kiu thc th NHNVIN v kiu thc th NV.
Trong s ER, kiu lin kt c biu din bng mt hnh thoi ni trc tip
vi cc hnh ch nht biu din cc kiu thc th tham gia vo lin kt. Hnh II-4
minh ha kiu lin kt v th hin lin kt
a) Kiu lin kt

b) Th hin lin kt
NHNVIN NV Lm vic

cho
31

Hnh II-4. Kiu lin kt v th hin lin kt
II.4- Cp lin kt, tn vai tr v kiu lin kt quy
Cp ca mt kiu lin kt l s cc kiu thc th tham gia vo kiu lin kt .
Mt kiu lin kt c th c cp 1, cp 2, cp 3,. V d, kiu lin kt <lm vic
cho> gia kiu thc th NHNVIN v kiu thc th NV l mt kiu lin kt
cp 2. Kiu lin kt <bit trc> gia kiu thc th MNHC vi chnh n l mt
kiu lin kt cp 1
i khi chng ta c th coi mt kiu lin kt nh mt thuc tnh ca mt kiu
thc th. V d, nu kiu thc th NHNVIN c thuc tnh nv ch ra tn
n v m nhn vin lm vic cho, th thuc tnh nv biu th mt kiu lin kt.
Ni cch khc, mt thuc tnh ca mt kiu thc th hoc c chc nng biu th
mt c trng ca kiu thc th, hoc c chc nng biu th mt kiu lin kt gia
kiu thc th vi cc kiu thc th khc. Cc thuc tnh biu th mt kiu lin
kt c th n tr hoc a tr tu theo bn cht ca mi lin kt.
Cc tn vai tr v cc kiu lin kt quy: Mi mt kiu thc th tham gia
vo mt kiu lin kt c mt vai tr c th trong lin kt. Tn vai tr dng ch r
vai tr ca cc thc th ca kiu thc th tham gia lin kt, n gip vic gii
thch ngha ca lin kt. V d, trong kiu lin kt NHNVIN <lm vic cho >
NV, vai tr ca cc thc th ca kiu thc th NHNVIN l nhn vin hoc
cng nhn cn vai tr ca cc thc th ca kiu thc th NV l n v hoc ni
thu cng nhn. Nu cc kiu thc th tham gia vo kiu lin kt l khc nhau th
tn vai tr l hon ton khng cn thit bi v c th s dng tn cc kiu thc th
lm tn vai tr. Tuy nhin, trong mt s trng hp, mt kiu thc th c th tham
gia vo mt kiu lin kt vi cc vai tr khc nhau. Trong nhng trng hp nh
Nv1
Nv2
Nv3
Nv4

.


.

v1


v2
NHNVIN
lm vic cho
NV
32
vy, tn vai tr tr nn cn thit phn bit ngha ca mi s tham gia. Cc kiu
lin kt nh vy gi l kiu lin kt quy. V d, trong s cc nhn vin lm vic
cho mt n v, c cc nhn vin c phn cng gim st cc nhn vin khc.
Nh vy s c mt kiu lin kt gia cc thc th ca kiu thc th NHNVIN:
NHNVIN <gim st> NHNVIN. Kiu thc th NHNVIN tham gia hai
ln vo kiu lin kt <gim st>, mt ln vi vai tr ngi gim st, mt ln vi vai
tr ngi b gim st.
II.5- Cc rng buc trn cc kiu lin kt
Cc kiu lin kt thng c mt s rng buc hn ch s cc t hp c th
ca cc thc th c th tham gia trong tp hp lin kt tng ng. Cc rng buc
ny c xc nh t tnh trng ca th gii thc m kiu lin kt biu din. V d,
nu cng ty c quy ch l mt nhn vin ch lm vic cho mt n v th chng ta
phi m t rng buc ny trong lc . C hai loi rng buc chnh: t s lc
lng v s tham gia.
T s lc lng: T s lc lng cho mt kiu lin kt ch ra s cc th hin
lin kt m mt thc th c th tham gia. Vi cc kiu lin kt cp 2, c th c cc
t s lc lng 1:1, 1:N, v M:N. Mt kiu lin kt c t s lc lng 1:1 gia hai
kiu thc th A v B c ngha l trong kiu lin kt , mt thc th ca kiu A ch
lin kt vi mt thc th ca kiu B v ngc li, mt thc th ca kiu B ch lin
kt vi mt thc th ca kiu A. T s lc lng 1:N c ngha l mt thc th ca
kiu A c th lin kt vi nhiu thc th ca kiu B nhng mt thc th ca kiu B
ch lin kt vi mt thc th ca kiu A. Trong kiu lin kt c t s lc lng
M:N, mi thc th ca kiu A c th lin kt vi nhiu thc th ca kiu B v
ngc li, mi thc th ca kiu B c th lin kt vi nhiu thc th ca kiu A.
Trong biu din ca lc ER, cc t s lc lng c biu din bng cch ghi
1, N, M trn cc hnh thoi biu din kiu lin kt (hnh II-5) .
33

Hnh II-5. T s lc lng ca cc kiu lin kt
Cc rng buc tham gia v s ph thuc tn ti: Rng buc tham gia ch ra
rng c phi s tn ti ca mt kiu thc th ph thuc vo mt kiu thc th khc
thng qua mt kiu lin kt hay khng. C hai kiu rng buc tham gia: rng buc
tham gia ton b v rng buc tham gia b phn. Tham gia ton b ngha l tt c
cc thc th ca kiu thc th phi tham gia vo kiu lin kt cn tham gia b phn
ngha l ch mt b phn cc thc th ca kiu thc th tham gia vo kiu lin kt.
V d, xt kiu lin kt NHNVIN <qun l> NV. Trong thc t, mi n v
phi c mt ngi qun l (l mt nhn vin) nhng khng phi nhn vin no
cng qun l mt n v. Nh vy, s tham gia ca cc thc th n v vo kiu
lin kt l ton b cn s tham gia ca cc thc th nhn vin vo kiu lin kt l
b phn. S tham gia ton b cn c gi l s ph thuc tn ti.
Trong lc ER, s tham gia ton b c biu th bng ng ni i t
kiu thc th n kiu lin kt. V d :
II.6- Thuc tnh ca cc kiu lin kt
Cc kiu lin kt cng c th c cc thuc tnh, ging nh cc thuc tnh ca
cc kiu thc th. V d, kiu lin kt <lm vic trn> gia cc kiu thc th
NHNVIN v DN c th c thuc tnh Sgi ghi li s gi lm vic ca
mt nhn vin trn mt d n. Cc thuc tnh ca kiu lin kt cng c biu din
bng mt hnh van v c ni vi kiu lin kt. V d:
NHNVIN NV
Qun l
NHNVIN NV Lm vic cho
NHNVIN DN Lm vic trn
1 1
N 1
M N
34


II.7- Cc kiu thc th yu
Cc kiu thc th khng c cc thuc tnh kho cho chnh mnh c gi l
cc kiu thc th yu. Ngc li, cc kiu thc th thng thng (ngha l c thuc
tnh kho) c gi l kiu thc th mnh. Cc thc th ca mt kiu thc th yu
c xc nh bng cch lin kt vi cc thc th c th ca mt kiu thc th khc
phi hp vi mt s gi tr thuc tnh ca n. Ta gi kiu thc th khc l kiu
thc th xc nh hoc kiu thc th ch. Ta gi kiu lin kt gia kiu thc th yu
v kiu thc th ch ca n l lin kt xc nh ca thc th yu. Mt kiu thc th
yu lun lun c mt rng buc tham gia ton b (tn ti ph thuc) vo lin kt
xc nh ca n bi v mt kiu thc th yu khng th c xc nh m khng c
kiu thc th ch. V d, trong mt cng ty, con ca nhn vin v nhn vin c th
hng ch bo him theo nhn vin. Nh vy, s c mt kiu lin kt
NHNVIN <c> < CON>. y l mt kiu lin kt c t s lc lng 1:N. Cc
thuc tnh ca kiu thc th CON l Htn, Ngaysinh, Giitnh. Hai ngi con ca
hai nhn vin khc nhau c th c cng gi tr cho cc thuc tnh nhng n l hai
thc th khc nhau. Chng ch c xc nh nh hai thc th khc nhau sau khi
xc nh mt thc th nhn vin c th c lin quan n tng ngi ph thuc. Mi
thc th ca kiu thc th NHNVIN c gi l ch ca cc thc th ca kiu
thc th CON lin kt vi n.
Thng thng, cc kiu thc th yu c mt kho b phn, l mt tp hp
cc thuc tnh c th xc nh mt cch duy nht cc thc th yu lin kt vi cng
mt thc th ch. V d, nu hai ngi con ca mt nhn vin khng bao gi c tn
ging nhau th thuc tnh Htn ca kiu thc th CON l mt kho b phn. Trong
trng hp xu nht, thuc tnh phc hp gm tt c cc thuc tnh ca thc th
yu s l mt kho b phn.
NHNVIN DN Lm vic trn
1 1
S gi
35
Trong s ER, kiu thc th yu v kiu lin kt xc nh ca n c biu
din bng mt hnh ch nht v mt hnh thoi nt i. V d:

III- V d v thit k m hnh ER
Trong phn ny, chng ta xt v d v vic xy dng m hnh ER cho c s d
liu cng ty. Nh trong phn I ni, bc u tin trong vic thit k mt c s
d liu l tp hp v phn tch cc yu cu. Kt qu ca bc ny l mt tp hp
cc ghi chp sc tch v cc yu cu ngi s dng cng nh tnh trng ca ni ta
cn xy dng c s d liu.
Gi s rng sau khi tp hp cc yu cu v phn tch, hot ng ca cng ty
c ghi chp li nh sau:
1. Cng ty c t chc thnh cc n v. Mi n v c mt tn duy nht,
mt m s duy nht, mt nhn vin c th qun l n v. Vic nhn vin qun l
n v c ghi li bng ngy nhn vin bt u qun l. Mt n v c th c
nhiu a im.
2. Mi n v kim sot mt s d n. Mt d n c mt tn duy nht, mt m
s duy nht v mt a im.
3. Vi mi nhn vin chng ta lu gi li H tn, M s, a ch, lng, gii
tnh, ngy sinh. Mt nhn vin ch lm vic cho mt n v nhng c th lm vic
trn nhiu d n do nhiu n v kim sot. Chng ta lu gi li s gi lm vic
ca mi nhn vin trn mt d n. Mi nhn vin c th c mt ngi gim st trc
tip, ngi cng l mt nhn vin.
4. Mi nhn vin c nhng ngi con. Nhng ngi ny c hng bo
him theo nhn vin. Vi mi ngi con ca nhn vin, chng ta lu gi H tn,
gii tnh, ngy sinh .
III.1- Xc nh cc kiu thc th, cc thuc tnh v cc kiu lin kt
Theo cc ghi chp trn, chng ta c th xc nh cc kiu thc th v cc
kiu lin kt nh sau:
NHNVIN
CON C
1 N
36
1. CNGTY khng phi l mt kiu thc th v y ta c mt cng ty duy
nht.
2. NV l mt kiu thc th vi cc thuc tnh Tn, Ms, Ngiqunl,
Ngybtu v aim. Cc thuc tnh Tn, Ms, aim l cc thuc tnh m
t n v, cc thuc tnh Ngiqunl, Ngybtu l cc thuc tnh biu th mt
kiu lin kt (vi kiu thc th NHNVIN). Cc thuc tnh u l n v n tr,
tr thuc tnh aim, n l mt thuc tnh a tr (mt n v c nhiu a im).
Cc thuc tnh Tn, Ms l cc thuc tnh kha (v mi n v c mt tn v mt
m s duy nht).
3. Kiu thc th DN c cc thuc tnh Tn, Ms, aim,
nvkimsot. Cc thuc tnh Tn, Ms, a im l cc thuc tnh m t
DN, thuc tnh nvkimsot biu th kiu lin kt vi kiu thc th NV
(mt n v kim sot mt s d n). Cc thuc tnh Tn, Ms l cc thuc tnh
kha.
4. Kiu thc NHNVIN vi cc thuc tnh Htn, Ms, Gii tnh,
Ngysinh, Lng, nv, Ngigimst. Thuc tnh Htn l mt thuc tnh phc
hp (gm Hm, Tn). Cc thuc tnh nv, Ngigimst m t cc kiu lin
kt gia kiu thc th NHNVIN v cc kiu thc th NV v NHNVIN
tng ng. Thuc tnh Ms l thuc tnh kha.
5. Kiu thc th CON vi cc thuc tnh Nhnvin, Htn, Gii tnh,
Ngysinh. Thuc tnh Nhnvin m t kiu lin kt vi kiu thc th NHNVIN.
6. Kiu lin kt NV <kim sot> DN l kiu lin kt c t s lc
lng 1:N (mt n v kim sot mt s d n, mt d n do mt n v qun l).
S tham gia ca DN vo kiu lin kt l ton b (bi v d n no cng c
mt n v kim sot). Nu n v no cng c d n th vic tham gia ca NV
vo kiu lin kt l ton b, ngc li s tham gia l b phn.
7. Kiu lin kt NHNVIN <lm vic cho> NV c t s lc lng N:1
(mi nhn vin lm vic cho mt n v nhng mi n v c nhiu nhn vin l
vic). S tham gia ca hai kiu thc th vo lin kt l ton b.
8. Kiu lin kt NHNVIN <qunl> NV c t s lc lng 1:1 (mt
nhn vin qun l mt n v v mt n v c mt nhn vin qun l). S tham
gia ca kiu th NHNVIN vo kiu lin kt l b phn (bi v khng phi nhn
37
vin no cng qun l n v), ngc li, s tham gia ca kiu thc th NV
vo kiu lin kt l ton b (bi v n v no cng phi c ngi qun l).
9. Kiu lin kt NHNVIN <gim st > NHNVIN c t s lc lng
1:N (mt nhn vin c th gim st nhiu nhn vin khc). S tham gia ca ca
kiu thc th NHNVIN ( c hai pha) l b phn (bi v khng phi nhn vin
no cng gim st nhn vin khc, v khng phi nhn vin no cng b gim st).
Kiu thc th NHNVIN y ng hai vai tr khc nhau: vai tr ngi gim
st v vai tr ngi b gim st.
10. Kiu lin kt NHNVIN <lm vic trn> DN l c t s lc lng
l M:N (mt nhn vin c th lm vic trn nhiu d n khc nhau v mi d n c
nhiu nhn vin lm vic). S tham gia ca kiu thc th NHNVIN l b phn
(bi v khng phi tt c nhn vin u lm vic trn d n) ngc li, s tham gia
ca kiu thc th DN l ton b (bi v d n no cng phi c nhn vin lm
vic). Kiu lin kt ny c mt thuc tnh l Sgi, ghi li s gi lm vic ca mt
nhn vin trn mt d n.
11. Kiu lin kt NHNVIN <c> CON biu th mi lin h gia kiu thc
th NHNVIN v kiu thc th CON (mt nhn vin c th c nhng ngi
con). Kiu lin kt ny c t s lc lng 1:N (mt nhn vin c th c nhiu
ngi con nhng mi con l con ca ch mt nhn vin). S tham gia ca kiu thc
th NHNVIN l b phn (khng phi nhn vin no cng c con), ngc li, s
tham gia ca kiu thc th CON l ton b (ngi con no cng phi l con ca
mt nhn vin). Ngoi ra, kiu thc th CON l mt kiu thc th yu.
Sau khi phn tch nh trn, v lc ER ta loi b cc thuc tnh c
xem nh cc kiu lin kt ra khi cc kiu thc th. l cc thuc tnh
Ngiqunl v Ngybtu ca kiu thc th NV, thuc tnh nvkimsot
ca kiu thc th DN, thuc tnh nv v thuc tnh Ngigimst ca kiu
thc th NHNVIN, thuc tnh Nhnvin ca kiu thc th PHTHUC .
Kt qu, chng ta c lc ER nh sau:
38

Hnh II-6. Lc ER CNGTY
NHNVIN NV
CON
DN
Qunl
Lmviccho
Kim
sot
Lmvic

trn
Gim st
C
Ms
Tn
aim
Htn
M s
Hm Tn
Ngysinh
Lng Giitnh ach
Ngybt
u
Sgi
Tn Ngysinh Giitnh
Tn Ms aim
39
IV- M hnh thc th lin kt m rng (m hnh EER)
Mt cch truyn thng, khi xy dng mt c s d liu chng ta thng bt
u bng vic xy dng m hnh lin kt thc th (m hnh ER) ri sau
chuyn i n thnh m hnh quan h. Cc khi nim v m hnh ER c th c
coi l kh y trnh by cc lc c s d liu trong cc ng dng c s
d liu truyn thng, ch yu l cc ng dng x l d liu trong kinh doanh v
trong cng nghip. Ngy nay, cc ng dng mi hn cho cng ngh c s d liu
tr nn ph bin. Cc c s d liu loi ny i hi nhng yu cu phc tp hn
so vi cc ng dng truyn thng. trnh by c cc yu cu ny mt cch
chnh xc v r rng, ngi thit k c s d liu phi s dng thm cc khi nim
mi. Vic thm vo m hnh ER nhng khi nim mi lm m rng m hnh ny
v to nn m hnh ER m rng (gi tt l m hnh EER Enhanced Entity
Relationship Model).
M hnh EER bao gm tt c cc khi nim ca m hnh ER, ngoi ra cn c
cc khi nim nh lp, kiu lin kt lp cha/ lp con, tnh tha k, chuyn bit,
tng qut, phm tr.
IV.1- Lp cha, lp con v s tha k
Khi nim u tin trong m hnh EER l lp con ca mt kiu thc th. Nh
ta bit, kiu thc th c s dng biu din c kiu ca thc th v tp hp
cc thc th cng mt kiu trong c s d liu. Trong nhiu trng hp, mt kiu
thc th c th c cc nhm con cc thc th ca n v nhng nhm con ny cn
c trnh by r rng do ngha ca n i vi c s d liu.
V d, cc thc th thnh vin ca kiu thc th NHNVIN c th c
chia thnh cc nhm nh: KS, NGIQUNL, KTHUTVIN Tp cc
thc th trong cc nhm l mt tp con ca cc thc th trong tp thc th nhn
vin, ngha l mi thc th l thnh vin ca mt trong nhng nhm ny cng l
mt nhn vin. Chng ta gi mi nhm ny l mt lp con ca kiu thc th
NHNVIN. Kiu thc th NHNVIN c gi l lp cha ca cc lp con .
Ta gi quan h gia lp cha v mt trong nhng lp con ca n l kiu lin kt lp
cha/ lp con. Kiu lin kt lp cha/ lp con thng c gi l kiu lin kt l mt
(IS_A). Chng ta thng ni rng mt k s l mt nhn vin, mt k thut vin l
mt nhn vin.
40
Ch rng mt thc th thnh vin trong lp con cng biu din mt thc th
thc ti nh mt thnh vin trong lp cha, v vy, cc thc th thnh vin trong lp
con v cc thc th thnh vin trong lp cha l ging nhau, nhng vai tr ca
chng hon ton khc nhau. Khi chng ta to mt kiu lin kt lp cha/ lp con
trong h thng c s d liu, chng ta c th trnh by mt thnh vin ca lp con
nh nh l mt i tng ring bit, mt bn ghi ring bit kt hp vi cc thc th
ca lp cha ca n qua thuc tnh kho. Kiu lin kt lp cha/ lpcon l mt kiu
lin kt c t s lc lng 1:1.
Mt khi nim quan trng gn vi cc lp con l s tha k kiu. Kiu ca
mt thc th c xc nh bng cc thuc tnh v cc kiu lin kt m n tham
gia. V mi thc th thnh vin trong lp con cng biu din mt thc th thc ti
nh thc th trong lp cha nn cc gi tr ca thuc tnh ca n trong lp con cng
phi ging nh l gi tr ca cc thuc tnh ca n khi n ng vai tr l mt thnh
vin trong lp cha. Thc th ny cng c tha k cc lin kt trong lp cha. Mt
lp con vi cc thuc tnh ring ca n cng vi tt c cc thuc tnh v kiu lin
kt k tha c t lp cha c quyn c coi nh l mt kiu thc th.
IV.2- Chuyn bit ho, tng qut ho
IV.2.1- Chuyn bit ho
L qu trnh xc nh tp hp cc lp con ca mt kiu thc th. Kiu thc th
ny c gi l lp cha trong chuyn bit ho. Tp cc lp con to nn mt chuyn
bit ho c xc nh da trn c s mt c trng phn bit no ca cc thc
th trong lp cha. V d, tp cc lp con {THK, KS, KTHUTVIN} l
mt chuyn bit ho ca lp cha NHNVIN c xc nh da trn kiu cng
vic ca cc thc th. Mt kiu thc th c th c mt s chuyn bit ho da trn
cc c trng khc nhau. V d, mt chuyn bit ho khc ca kiu thc th
NHNVIN sinh ra tp cc lp con {NHNVIN_BINCH,
NHNVIN_HPNG}. Trong chuyn bit ho ny, cc thc th c phn
bit da trn c s hnh thc tr tin.
Mt chuyn bit ho c biu din trong s EER nh sau: Cc lp con
xc nh mt chuyn bit ho c ni bng cc ng n mt vng trn, vng
trn c ni vi lp cha. K hiu tp con (trn mi ng ni mt tp con vi
vng trn ch hng ca kiu lin kt lp cha / lp con). Cc thuc tnh ch p dng
41
cho cc thc th ca mt lp con c th - v d nh Tcnhmy ca lp con
THK - c ni vi hnh ch nht biu din lp con . Cc thuc tnh nh vy
gi l cc thuc tnh ring hoc l cc thuc tnh a phng ca lp con. Tng t,
mt lp con c th tham gia vo cc kiu lin kt ring, v d, lp con
NHNVIN_HPNG tham gia vo kiu lin kt <thuc v> (hnh II-7).
C hai l do chnh t cc kiu lin kt lp cha/lp con v chuyn bit ho
vo m hnh d liu. Th nht l c mt s thuc tnh c th p dng cho mt s
cc thc th ch khng phi cho ton b cc thc th ca lp cha. Khi , mt lp
con s c xc nh nhm cc thc th m cc thuc tnh c th p dng
c. Cc thnh vin ca lp con ny c th vn chia s phn ln cc thuc tnh
ca chng vi cc thnh vin khc ca lp cha.V d, lp con THK c thuc
tnh ring l Tcnhmy, lp con KS c thuc tnh ring l Kiuks nhng
cc thuc tnh khc ca chng l chung vi kiu thc th NHNVIN. L do th
hai l ch c cc thnh vin ca lp con c th tham gia vo mt s kiu lin kt
no . V d, nu ch c cc nhn vin hp ng mi tham gia v cng on th
chng ta c th din t s kin bng cch to ra mt lp con
NHNVIN_HPNG ca NHNVIN v lin kt lp con ny vi kiu thc
th CNGON thng qua kiu thc th <thuc v>.
Tm li, qu trnh chuyn bit ho cho php chng ta lm cc vic sau:
- Xc nh mt tp hp cc lp con ca mt kiu thc th.
- Thit lp cc thuc tnh ring cho mi lp con.
- Thit lp cc kiu lin kt ring gia mi lp con v cc kiu thc th khc
hoc cc lp con khc.
42

Hnh II-7. Biu din lc EER ca chuyn bit ho
IV.2.2- Tng qut ho
L qu trnh o ngc ca chuyn bit ho, trong ta b qua s khc nhau
gia mt s kiu thc th, xc nh cc c tnh chung ca chng v tng qut ho
chng thnh mt lp cha ca cc kiu thc th . V d, ta c kiu thc th
XECON vi cc thuc tnh (Ms, Sgiyphp, Gi, Tctia, Schngi) v
kiu thc th XETI vi cc thuc tnh (Ms, Sgiyphp, Gi, Trngti,
Scctrc), cc kiu thc th ny c mt s thuc tnh chung, chng c th c
tng qut ho thnh kiu thc th XET vi cc thuc tnh (Ms, Sgiyphp,
Gi). Cc kiu thc th XECON v XETI tr thnh cc lp con ca lp cha
XET. Nh vy, tng qut ho l qu trnh tng qut mt kiu thc th t cc
kiu thc th cho trc.
NHN VIN
THK KTHUT
VIN
K S
d
Ms
Htn
Ngy
s
inh
ach
Kiucngvic
Hm Tn
Tc
nhmy
KiuK s
Bc
NGI
QUNL
d
NHNVIN
BINCH
NHNVIN
HP NG
Lng LngH
Qunl
D N
Thuc
CNG ON
43
Mt tng qut ho c biu din trong s EER ging nh l mt chuyn
bit ho. Tng qut l lp cha cn chuyn bit l cc lp con c s dng to
nn lp cha (hnh II-8).

Hnh II-8. Xet c tng qut ho t Xecon v Xeti
IV.2.3- Phn cp chuyn bit v li chuyn bit
Bn thn cc lp con cng c cc lp con ca n. Nh vy s to ra mt phn
cp chuyn bit ho hoc mt li chuyn bit ho. Mt phn cp chuyn bit ho
c rng buc l mt lp con ch tham gia vo mt kiu lin kt lp cha/lp con nh
l mt lp con. Mt li chuyn bit c iu kin l mt lp con c th tham gia
vo nhiu kiu lin kt lpcha/lpcon nh l mt lp con. Ni cch khc, mt lp
con trong phn cp chuyn bit ch tha k mt lp cha, ngc li, mt lp con
trong li chuyn bit c th tha k nhiu lp cha. Mt lp con tha k nhiu lp
cha thuc cc kiu khc nhau c gi l mt kiu hp (union type) hoc mt phm
tr (category).
IV.2.4- Cc rng buc v cc c trung ca chuyn bit ho, tng
qut ho
Trong mt s chuyn bit ho, chng ta c th xc nh mt cch chnh xc
cc thc th s l thnh vin ca mt lp con bng cch t mt iu kin trn mt
thuc tnh no y ca lp cha. Cc lp con nh vy c gi l cc lp con c
xc nh bng iu kin. Nu cc lp con ca mt chuyn bit ho c iu kin
thnh vin trn cng mt thuc tnh ca lp cha th chuyn bit ho cng c
gi l chuyn bit ho c xc nh bng thuc tnh. Nu vic xc nh mt lp
Xet
Xe con Xe ti
d
Tc
Sch Strc
Trngti
Ms
Sgiyphp
Gi
44
con khng theo mt iu kin no th lp con c gi l c ngi s dng
xc nh.
C hai rng buc p dng cho mt chuyn bit ho. Rng buc ri rc ch ra
rng cc lp con ca mt chuyn bit phi ri rc. iu ny c ngha l mt thc
th c th l mt thnh vin ca nhiu nht l mt trong s cc lp con ca chuyn
bit ho. Mt chuyn bit ho c xc nh bng thuc tnh tho mn rng buc
ri rc nu thuc tnh c s dng xc nh thnh vin l n tr. Nu cc lp
con khng tho mn rng buc ri rc, cc tp thc th ca chng c th chng
cho nhau, ngha l mt thc th c th l mt thnh vin ca nhiu lp con trong
chuyn bit ho. Rng buc th hai trong chuyn bit ho gi l rng buc y ,
n c th l ton b hoc tng phn. Mt rng buc chuyn bit ton b ch ra rng
mi thc th trong lp cha phi l mt thnh vin ca mt lp con no trong
chuyn bit. Mt rng buc chuyn bit tng phn cho php mt thc th ca lp
cha khng thuc v bt k lp con no. V d, nu mt nhn vin phi hoc l mt
nhn vin bin ch hoc l mt nhn vin hp ng th (NHNVIN_BINCH,
NHNVIN_HPNG) l mt chuyn bit ton b ca NHNVIN. Nu mt
nhn vin c th khng phi l mt th k, mt k s hoc mt k thut vin th
chuyn bit (THK, KS, KTHUTVIN) l mt chuyn bit tng phn
ca NHNVIN.
Trong s ca m hnh EER, nu mt chuyn bit ho l ri rc th gia
hnh trn ni vi cc lp con c ghi ch d (disjoin), cn mt chuyn bit l chng
cho th gia hnh trn ni cc lp con c ghi ch o (overlap).
IV.3- S m hnh EER
M hnh EER c biu din ho ging nh m hnh ER, ngha l cc kiu
thc th (cc lp) c biu din bng cc hnh ch nht c ghi tn gia, cc
thuc tnh ca chng c biu din bng cc hnh van ni vi hnh ch nht.
Cc kiu lin kt c biu din bng cc hnh thoi v c ni vi cc kiu thc
th tham gia lin kt. Ti cc hnh thoi c ghi r cc t s lc lng tham gia ca
cc kiu thc th tham gia vo kiu lin kt. Ngoi ra, kiu lin kt lpcha/lpcon
c biu din bng mt ng ni c thm mt k hiu tp con c gia ng
ni. Cc lp con trong mt chuyn bit c ni vi mt vng trn v vng trn
c ni vi lp cha. Nu chuyn bit l ri rc, gia vng trn s ghi ch d, nu
chuyn bit l chng cho, gia vng trn c ghi ch o.
45
V- Tng kt chng v cu hi n tp
V.1- Tng kt chng
Trong chng ny chng ta tho lun v vai tr ca m hnh d liu bc
cao trong qu trnh thit k c s d liu. Ta lm quen vi cc khi nim c bn
ca m hnh lin kt - thc th: kiu thc th, kiu lin kt, v cc thuc tnh ca
chng. Cc kiu thuc tnh khc nhau cng c xem xt: thuc tnh n, thuc
tnh phc hp, thuc tnh n tr, thuc tnh a tr, thuc tnh lu tr, thuc tnh suy
din c v cc thuc tnh c gi tr null. Thng qua mt v d c th, ta tin
hnh xy dng m hnh ER CNGTY. Ngoi ra, chng ta cng ni n m
hnh EER, m rng ca m hnh ER. Cc khi nim m rng nh lp, lp con,
kiu lin kt lp cha/lp con, chuyn bit ho, tng qut ho cng c gii
thiu v phn tch. Chng ta cng ni n cch biu din ho ca cc m
hnh ER v EER.
V.2- Cu hi n tp
1- Hy ni v vai tr ca m hnh d liu bc cao trong qu trnh thit k c
s d liu.
2- Lit k cc trng hp cn phi s dng gi tr null.
3- nh ngha cc thut ng sau: thc th, thuc tnh, gi tr thuc tnh, th
hin lin kt, thuc tnh phc hp, thuc tnh a tr, thuc tnh suy din c, thuc
tnh phc tp, thuc tnh kho, min gi tr.
4- Kiu thc th l g? Tp thc th l g? Gii thch s khc nhau gia mt
thc th, mt kiu thc th v mt tp thc th.
5- Gii thch s khc nhau gia mt thuc tnh v mt tp gi tr.
6 - Kiu lin kt l g? Gii thch s khc nhau gia mt th hin lin kt, mt
tp lin kt v mt kiu lin kt.
7- Vai tr tham gia l g? Khi no cn phi s dng cc tn vai tr trong m t
cc kiu lin kt.
8- M t cch ch ra cc rng buc cu trc trn cc kiu lin kt.
9- Vi iu kin no mt thuc tnh ca mt kiu lin kt cp 2 c th chuyn
thnh mt thuc tnh ca mt trong cc kiu thc th tham gia vo kiu lin kt.
46
10- Khi chng ta ngh n cc lin kt nh l cc thuc tnh, cc tp gi tr ca
cc thuc tnh l g?
11- Kiu lin kt quy l g? Cho mt s v d v cc kiu lin kt quy.
12- Khi no khi nim kiu thc th yu c dng trong m hn ho c s d
liu? nh ngha cc thut ng: kiu thc th ch, kiu thc th yu, kho b phn,
kiu lin kt xc nh.
13- Trnh by cc khi nim lp, lp con, chuyn bit ho, tng qut ho.
Trong hon cnh no ta cn tch mt lp thnh cc lp con.
14- Trnh by cch biu din ho ca cc m hnh ER v EER.
V.3- Bi tp
Bi 1: Xy dng m hnh ER cho c s d liu TRNG
Hy xy dng lc ER cho CSDL TRNG, da trn cc ghi chp sau:
1) Trng c chia thnh cc trng con: Trng KHTN, Trng KHXH,
Trng Cng ngh,. Mi trng c mt hiu trng qun l. Mi hiu
trng qun l mt trng.
2) Mi trng c nhiu khoa. Chng hn, trng KHTN c cc khoa Ton, L,
Ho, Mi mt khoa ch thuc v mt trng. Thng tin v Khoa gm M
khoa, tn khoa, a ch, s in thoi, tn trng.
3) Mi Khoa cung cp nhiu mn hc. Mi mn hc gm c Tn mn hc, m s,
s n v hc trnh, trnh , tn Khoa.
4) Mi mn hc c th c nhiu hc phn.Mi hc phn c lu gi bng cc
thng tin: M hc phn, Tn mn hc, Tn gio vin dy, hc k.
5) Mi khoa c nhiu gio vin lm vic, nhng mi gio vin ch lm vic cho
mt khoa. Mi mt khoa c mt ch nhim khoa, l mt gio vin.
6) Mi gio vin c th dy nhiu nht l 4 hc phn v cng c th khng dy
hc phn no.
7) Mi sinh vin phi hc nhiu hc phn.
8) Mi mt khoa c nhiu sinh vin, mi sinh vin ch thuc v mt khoa. Thng
tin v mi sinh vin gm: M sinh vin, H tn, a ch, ngy sinh, gii tnh,
Lp, Tn Khoa v ch o to.
47
9) Mi sinh vin c mt ngi gim st (gio vin ch nhim), ngi l mt
gio vin.
10) Sau mi hc k s c mt danh sch im phn loi. N gm cc thng tin:
M sinh vin, m hc phn, im bng ch, im bng s.

Bi 2: Xy dng m hnh ER cho c s d liu TH VIN.
Hy xy dng lc ER cho CSDL TH VIN, da trn cc ghi chp
sau:
1) Th vin c chia ra thnh cc nhnh. Thng tin v mi nhnh gm c M
nhnh, Tn nhnh v a ch.
2) Mi cun sch trong th vin c cc thng tin v M sch, Tn sch Nh xut
bn v Tc gi
3) Mt tc gi c th vit nhiu cun sch. Mt cun sch c th c nhiu tc gi
vit.
4) Mt nh xut bn xut bn nhiu cun sch. Mt cun sch do mt nh xut
bn xut bn. Thng tin v Nh xut bn gm c Tn, ach v Sinthoi.
5) Mt cun sch c th c nhiu bn sao c lu tr ti cc nhnh. Thng tin v
bn sao sch gm M sch, s cc bn sao.
6) Th vin c nhng ngi mn sch. Thng tin v nhng ngi mn sch
gm c S th, H tn, a ch v S in thoi.
7) Sch c cho cc ngi mn mn ti cc nhnh. Thng tin v mt ln
mn gm c Ngy mn v ngy tr.

48

Chng III- M HNH QUAN H, CC RNG BUC
QUAN H V I S QUAN H
M hnh quan h c Ted Codd a ra u tin vo nm 1970 v gy c
ch ngay tc khc v tnh n gin v cc c s ton hc ca n. M hnh quan
h s dng khi nim quan h ton hc nh l khi xy dng c s v c c s l
thuyt ca n trong l thuyt tp hp v logic v t bc nht. Trong chng ny
chng ta s ni v cc c trng c bn ca m hnh, cc rng buc ca chng v
tp hp cc php ton ca m hnh quan h.
I- Cc khi nim ca m hnh quan h
M hnh quan h biu th c s d liu nh mt tp cc quan h. Mi quan h
c th c biu din nh mt bng gi tr, mi mt dng trong bng biu th mt
tp hp cc gi tr d liu lin quan vi nhau. Trong chng trc, chng ta a
ra cc khi nim v kiu thc th v kiu lin kt nh l cc khi nim m hnh
ho d liu ca th gii thc. Trong m hnh quan h, mi mt dng trong bng
biu th mt s kin tng ng vi mt thc th hoc mt lin kt ca th gii
thc. Tn bng v tn cc ct dng gip gii thch ngha ca cc gi tr trong
mi hng. Mi gi tr trong mt ct u cng mt kiu d liu
Theo thut ng m hnh quan h hnh thc, mi hng c gi l mt b, mi
u ct c gi l mt thuc tnh, v bng c gi l mt quan h. Kiu d liu
m t cc kiu ca d liu xut hin trong mi ct gi l mt min
I.1- Min, thuc tnh, b v quan h
Mt min D l mt tp hp cc gi tr nguyn t, iu c ngha l mi gi
tr trong min l khng th phn chia c trong phm vi m hnh quan h. c
t mt min, ngi ta ch ra mt tn, mt kiu d liu v khun dng d liu. Mt
s v d v nh ngha min:
. H tn: Tp hp cc dy ch ci c di <= 30.
. Tui: Tp cc s nguyn nm trong khong t 1 n 80.
. Gii tnh: Tp hp gm hai gi tr Nam, N.
49
Ngoi ra, trong c s d liu ngi ta cn ch ra cc thng tin ph th hin
cc gi tr ca min, chng hn cc n v tnh nh tin, trng lng,
Mt lc quan h R, k hiu l R(A
1
,A
2
,..., A
n
), c to nn t mt tn
quan h R mt danh sch cc thuc tnh A
1
,A
2
,, A
n
. Mi mt thuc tnh A
i
l tn
vai tr ca mt min D no trong lc quan h R. D c gi l min gi tr
ca A
i
v c k hiu l Dom(A
i
). Mt lc quan h c s dng m t
mt quan h, R c gi l tn ca quan h . Cp ca mt quan h l s cc
thuc tnh ca lc quan h ca n. V d, ta c lc cho quan h cp 5:
SINHVIN (Ms, Htn, Ngysinh, Giitnh, ach). Vi lc quan h ny,
SINHVIN l tn ca quan h.
Mt quan h (hoc trng thi quan h) r ca lc quan h R(A
1
,A
2
,, A
n
)
c k hiu l r(R), l tp hp cc n-b r = {t
1
, t
2
, ..., t
n
}. Mi n-b t l mt danh
sch c th t ca n gi tr, t = <v
1
, v
2
, , v
n
>, trong mi v
i
,1<= i <= n , l mt
phn t ca Dom(A
i
) hoc l mt gi tr khng xc nh (null value). Gi tr th i
ca b t, tng ng vi thuc tnh A
i
c k hiu l t[A
i
] . Hnh III-1 ch ra mt
v d ca quan h SINHVIN tng ng vi lc quan h SINHVIN trn.
Mi b trong quan h biu din mt thc th sinh vin c th. Quan h c biu
din nh mt bng, trong mi b c hin th nh mt hng v mi thuc tnh
tng ng vi mt u ct ch ra vai tr ca cc gi tr trong ct . Cc gi tr
khng xc nh biu th cc thuc tnh m gi tr ca n khng bit c hoc
khng tn ti i vi tng b SINHVIN c th.
SINHVIN Htn M s Ngysinh Giitnh ach
L Vn 4515202 12/09/84 N H ni
Hong Tng 4516802 21/03/84 Nam Bc ninh
Trng nh 4620503 15/05/85 Nam H nam
Phm An 4612203 16/04/85 Nam Nam nh
Cung 4521402 20/01/84 Nam Ngh an
Hnh III-1. Quan h SINHVIN
50
nh ngha quan h trn c th pht biu li nh sau: Mt quan h r(R) l
mt quan h ton hc cp n trn cc min gi tr dom(A
1
), dom(A
2
), , dom(A
n
),
l tp con ca tch cc ca cc min gi tr xc nh R:
r( R) _ (dom(A
1
) x dom(A
2
) x dom(A
n
))
Tch cc ch ra mi t hp c th c ca cc gi tr t cc min cho. Nh
vy, nu ta k hiu lc lng ca mt min D l |D| v gi thit rng mi min
u hu hn th tng s cc b trong tch cac l:
|dom(A1)|*|dom(A2)|*.*|dom(An)|
Ngoi tt c cc t hp c th c ny, mt trng thi quan h mt thi im
cho trc - gi l trng thi quan h hin ti - ch phn nh cc b gi tr biu din
mt trng thi c th ca th gii thc. Ni chung, do trng thi ca th gii thc
thay i, quan h cng b thay i thnh trng thi quan h khc. Tuy nhin, lc
R l n nh, khng thay i, tr phi phi thm vo mt s thuc tnh biu
din mt thng tin mi cha c lu tr trong quan h.
C th xy ra trng hp nhiu thuc tnh c cng mt min gi tr. Cc thuc
tnh ch ra cc vai tr khc nhau i vi min. V d, hai thuc tnh achNV v
achV c cng min gi tr nhng thuc tnh th nht tham chiu n a ch
ca nhn vin cn a ch th hai tham chiu n a ch ca n v.
I.2- Cc c trng ca cc quan h
I.2.1- Th t ca cc b trong mt quan h
Mt quan h c nh ngha nh mt tp hp cc b. Cc phn t trong mt
tp hp khng c th t, v vy cc b trong mt quan h khng c mt th t c
th. Tuy nhin, trong mt tp, cc bn ghi c lu tr mt cch vt l trn a v
vy lun c mt th t gia cc bn ghi. Th t ny ch r bn ghi th nht, bn
ghi th hai, , bn ghi th n. Mt cch tng t, khi ta biu din mt quan h nh
l mt bng, cc hng c hin th theo mt th t nht nh.
Th t cc b khng phi l mt phn ca nh ngha quan h bi v mt quan
h c gng biu din cc s vt mc tru tng hoc lgic. C th c nhiu th
t lgic trn mt quan h. V d, cc b gi tr trong quan h SINHVIN hnh
III-1 c th sp xp theo nhiu cch khc nhau: theo th t logic ca Htn, theo
th t logic ca Ms, nh ngha quan h khng ch ra th t lgic no c, v
51
vy khng c th t lgic no hn th t lgic khc. Cc quan h cha cng mt s
hng nh nhau nhng cc hng c sp xp khc nhau c xem nh ng nht
vi nhau. Khi mt quan h c ci t nh mt tp, mt th t vt l c th c
ch ra trn cc bn ghi ca tp.
I.2.2- Th t ca cc gi tr bn trong mt b
Theo nh ngha quan h trn, mt n-b l mt danh sch c th t ca n gi
tr. Nh vy th t ca cc gi tr trong mt b l quan trng, t suy ra th t
ca cc thuc tnh trong mt lc quan h cng quan trng. Tuy nhin, mc
lgic, th t ca cc thuc tnh v cc gi tr ca n l khng thc s quan trng
khi gi c s tng ng gia cc thuc tnh v cc gi tr.
C th a ra mt nh ngha khc v quan h, nh ngha ny s lm cho th
t ca cc gi tr trong mt b l khng cn thit. Theo nh ngha ny, mt lc
quan h R = {A1, A2,,An} l mt tp hp cc thuc tnh v mt quan h r(R)
l mt tp hp hu hn cc nh x r = {t
1
, t
2
, ., t
m
}, trong mi t
i
l mt nh
x t R vo D, trong D = dom(A
1
)dom(A
2
) dom(A
n
). Trong nh ngha
ny, t[A
i
] phi trong dom(A
i
) vi 1<= i <= n vi mi nh x t
i
trong r. Mi nh x
t
i
c gi l mt b.
Theo nh ngha ny, mt b c th xem nh mt tp hp cc cp (<thuc
tnh>, <gi tr>), trong mi cp cho mt gi tr ca nh x t mt thuc tnh A
i

n mt gi tr v
i
ca dom(A
i
) . V tn thuc tnh xut hin cng vi gi tr ca n
nn th t ca cc thuc tnh l khng quan trng. iu ny lm nn ngha mc
tru tng hoc lgic v chng c l do g thch c mt gi tr thuc tnh xut
hin trc mt gi tr thuc tnh khc trong mt b.
Khi mt quan h c ci t nh mt tp, cc thuc tnh c sp xp mt
cch vt l nh l cc trng trong mt bn ghi. Trong trng hp chng ta s
s dng nh ngha th nht ca quan h, trong cc gi tr ca cc thuc tnh
trong mt b l c th t v n lm n gin rt nhiu khi nim. Tuy nhin, nh
ngha th hai l tng qut hn.
I.2.3- Cc gi tr trong mt b
Mi gi tr trong mt b l mt gi tr nguyn t, iu c ngha l n khng
phn chia c thnh cc thnh phn trong phm vi ca m hnh quan h. Nh vy,
trong m hnh quan h khng cho php c cc thuc tnh phc hp v cc thuc
52
tnh a tr. Cc thuc tnh a tr phi c biu din bng cc quan h cn cc
thuc tnh phc hp ch c biu din bng cc thuc tnh thnh phn n ca n.
Cc gi tr ca mt vi thuc tnh trong mt b c th c th khng bit c
hoc khng thch ng cho n. Trng hp , ngi ta s dng mt gi tr c bit
gi l gi tr null.V d, gi s quan h SINHVIN c thuc tnh Sinthoinh.
Trong mt tp th sinh vin, c ngi c in thoi nh, c ngi khng c v
cng c ngi c nhng khng bit chc. Vi nhng trng hp khng c hoc
khng bit chc, thuc tnh Sinthoinh c gi tr null.
I.2.4- Th hin ca mt quan h
Mt lc quan h c th c th hin nh l mt tuyn b hoc mt
khng nh. V d lc quan h SINHVIN trn khng nh rng, ni chung,
mt thc th sinh vin c mt m s, h tn, ngy sinh, gii tnh, a ch. Mi b
trong quan h c th hin nh l mt s kin hoc nh mt th hin c th ca
mt khng nh. Ngoi cc quan h biu din cc s kin v cc thc th, mt s
quan h c th biu din cc s kin v mi lin kt. V d, lc quan h
NHNVIN_DN(MsNV, MsDA, Sgi) khng nh cc nhn vin lm
vic vi cc d n. Mi b trong quan h ny lin kt mt nhn vin vi mt d n
m anh ta lm vic cho n.
Nh vy, m hnh quan h biu din cc s kin v thc th v cc s kin v
lin kt di dng duy nht l cc quan h.
II- Cc rng buc quan h, lc c s d liu quan h
Trong phn ny chng ta tho lun v cc hn ch trn cc d liu trong mt
lc c s d liu quan h. Cc hn ch c gi l cc rng buc. C cc
loi rng buc: rng buc min, rng buc kho, rng buc ton vn thc th v
rng buc ton vn tham chiu.
II.1- Cc rng buc min
Cc rng buc min ch ra rng gi tr ca mi thuc tnh A phi l mt gi tr
nguyn t thuc min gi tr dom(A). Cc kiu d liu lin kt vi cc min bao
gm: cc kiu d liu s chun cho cc s nguyn (short integer, integer, long
integer), cc s thc (float, double precision float). Ngoi ra cn cc kiu d liu k
t (dy k t vi di c nh, dy k t vi di thay i), ngy, thi gian v
53
tin t. Cc loi min khc c th l cc min con ca mt kiu d liu hoc mt
kiu d liu m c trong mi gi tr c th c lit k r rng
II.2- Rng buc kho v rng buc trn cc gi tr khng xc nh (null)
Mt quan h c nh ngha nh mt tp hp cc b. Theo nh ngha, cc
phn t ca mt tp hp l khc nhau, v vy, mi b trong quan h phi khc
nhau. iu c ngha l khng c hai b c cng mt t hp gi tr cho tt c cc
thuc tnh ca chng. Thng thng, c tn ti cc tp con ca cc thuc tnh ca
mt lc quan h c tnh cht l khng c hai b no trong mi trng thi
quan h r ca R c cng mt t hp gi tr cho cc thuc tnh ca n. Gi s chng
ta k hiu mt tp con nh vy l SK, khi vi hai b khc nhau bt k t
1
v t
2

trong mt trng thi quan h r ca R chng ta c rng buc l t
1
[SK] = t
2
[SK].
Tp hp thuc tnh SK nh vy c gi l mt siu kho ca lc quan
h R. Mt siu kho SK xc nh r mt rng buc v tnh duy nht, pht biu rng
khng c hai b khc nhau trong mt trng thi r ca R c cng mt gi tr cho SK.
Mi quan h c t nht l mt siu kho mc nh, l tp hp tt c cc thuc
tnh ca n. Mt kho K ca mt lc quan h R l mt siu kho ca R vi tnh
cht l nu b i bt k thuc tnh A no ra khi K th s cn li mt tp K khng
phi l siu kho ca R. Nh vy, mt kho l mt siu kho ti thiu, ngha l
l mt siu kho m ta khng th vt b thuc tnh no ra khi n m vn gi c
rng buc v tnh duy nht.
V d, xt quan h SINHVIN vi cc thuc tnh Ms, Htn, Ngysinh,
Giitnh, ach. Thuc tnh {Ms} l mt kho ca SINHVIN bi v khng c
hai b sinh vin c cng mt gi tr cho Ms. Mi tp hp thuc tnh c cha
Ms, vd {Ms, Htn, Ngysinh}, u l mt siu kho. Tuy nhin, siu kho
{Ms, Htn, Ngysinh} khng phi l kho bi v nu b i thuc tnh Htn
hoc Ngysinh hoc c hai th n vn cn l mt siu kho.
Gi tr ca mt thuc tnh kho c th c s dng xc nh mt cch duy
nht mi b trong mt quan h. V d, gi tr 4515202 ca Ms xc nh mt cch
duy nht b gi tr tng ng vi sinh vin L Vn trong quan h SINHVIN. Ch
rng mt tp hp thuc tnh to nn mt kho l mt tnh cht ca lc quan
h. iu rng buc l tnh cht phi tha mn trn mi trng thi ca lc .
Mt kho c xc nh t ngha ca cc thuc tnh v tnh cht l bt bin, tnh
cht phi tha mn khi chng ta chn thm cc b mi vo quan h. V d, ta
54
khng th v khng c ch nh thuc tnh Htn ca quan h SINHVIN l
kho bi v khng c g m bo rng khng tn ti hai sinh vin c cng h tn.
Ni chung, mt lc quan h c th c nhiu hn mt kho. Trong trng
hp , mi mt kho c gi l mt kho d tuyn. Thng thng ta phi ch
nh mt trong cc kho d tuyn lm kho chnh ca quan h. Kho chnh l mt
kho d tuyn m cc gi tr ca chng c dng xc nh cc b trong quan
h. Ta quy c rng, cc thuc tnh to nn kho chnh ca mt lc quan h
c gch di. V d:
SINHVIN( Ms, Htn, Ngysinh, Giitnh, ach ).
Ch rng khi mt lc quan h c nhiu kho d tuyn, vic la chn
mt kho d tuyn lm kho chnh l tu , tuy nhin tt nht l chn kho
chnh gm mt thuc tnh hoc c s cc thuc tnh t nht.
Mt rng buc khc trn cc thuc tnh ch r khi no th cho php cc gi tr
null. Nhng thuc tnh lun lun phi c mt gi tr xc nh v hp l th b rng
buc l NOT NULL.
II.3- C s d liu quan h v lc c s d liu quan h
trn, chng ta ni n cc lc quan h n l v cc quan h n l.
Mt c s d liu quan h thng gm nhiu quan h vi cc b gi tr trong cc
quan h c lin kt vi nhau theo nhiu cch. Trong phn ny chng ta s nh
ngha mt c s d liu quan h v mt lc c s d liu quan h. Mt lc
c s d liu quan h S l mt tp hp cc lc quan h
S = {R
1
, R
2
,, R
n
} v mt tp cc rng buc ton vn.
Mt trng thi c s d liu quan h (hoc mt c s d liu quan h) DB ca
S l mt tp hp cc trng thi quan h:
DB = {r
1
, r
2
, , r
n
}
sao cho mi r
i
l mt trng thi ca R
i
v sao cho cc trng thi quan h r
i
tho
mn cc rng buc ton vn ch ra trong tp cc rng buc ton vn.
V d, Hnh III-2 trnh by mt lc c s d liu CNGTY v hnh III-3
trnh by mt c s d liu cng ty.
NHNVIN(Hm, Tn, MsNV, Ngysinh, ach, Giitnh, Lng,
MsNGS, MsV)
55
NV(TnV, MsV, MsNQL, Ngybtu)
NV_AIM(MsV, aimV)
DN(TnDA, MsDA, aimDA, M sV)
NHNVIN_DN(MsNV, MsDA, Sgi)
CON(MsNV, TnPT, Giitnh, Ngysinh)
Hnh III-2. Lc c s d liu CNG TY

NHNVIN MsNV Hm Tn Ngy sinh ach Giitnh Lng MsNGS MsV
NV001 L Vn 12/02/79 H ni Nam 3000 NV002 5
NV002 Trn
c
Nam 14/02/66 H ni Nam 4000 NV061 5
NV010 Hong Thanh 05/08/79 Ngh
an
N 2500 NV014 4
NV014 Phm Bng 26/06/52 Bc
ninh
Nam 4300 NV061 4
NV016 Nguyn Sn 14/08/73 Hnam Nam 3800 NV002 5
NV018 V
Hng
Giang 26/03/83 Nam
nh
N 2500 NV002 5
NV025 Trn L Hoa 15/03/80 Ph
th
N 2500 NV014 4
NV061 Hong Gip 02/05/47 H tnh Nam 5500 Null 1

NV MsV TnV M sNQL Ngybtdu
5 Nghin cu NV002 15/09/2000
4 Hnhchnh NV014 24/06/1997
1 Lnho NV061 25/01/1992


56
NV_AIM M sV aimV
1 H ni
4 H ni
5 Nam inh
5 H ni
5 Bc ninh

DN TnDA M sDA aimDA M sV
DA01 1 H ni 5
DA02 2 Nam nh 5
DA03 3 Bc Ninh 5
DA04 10 H ni 4
DA05 20 H ni 1
DA06 30 H ni 4

NHNVIN_DN M sNV M sDA Sgi
NV001 1 32
NV001 2 7
NV016 3 40
NV018 1 20
NV018 2 20
NV002 2 10
NV002 3 10
NV002 10 10
NV002 20 10
57
NV010 30 30
NV010 10 10
NV025 10 35
NV025 30 5
NV014 30 20
NV014 20 15
NVO61 20 null

CON MsNV Tncon Giitnh Ngy sinh
NV002 Giang N 04/05/1997
NV002 Bnh Nam 25/10/1994
NV002 Hoa N 03/05/1969
NV014 Lan N 29/02/1953
NV001 Bnh Nam 04/01/1999
NV001 Ha N 04/01/1999
NV001 Hng N 05/05/1981
Hnh III-3. C s d liu CNGTY
Trong mt lc c s d liu quan h, cc thuc tnh biu din cng mt
khi nim th gii thc c th (hoc khng) c cng tn nh nhau trong cc quan
h khc nhau. Ngc li, cc thuc tnh biu din cc khi nim khc nhau c th
c tn nh nhau trong cc quan h khc nhau. V d, trong c s d liu CNGTY
trn, cc thuc tnh MsNV, MsNGS, MsNQL c tn khc nhau nhng u
biu din mt khi nim l m s nhn vin (bi v ngi gim st hoc ngi
qun l cng l nhn vin). Trong lc , thuc tnh Giitnh c mt trong hai quan
h NHNVIN v CON, tuy nhin Giitnh trong quan h NHNVIN l biu th
gii tnh ca nhn vin cn Giitnh trong CON l biu th gii tnh ca ngi con.
Trong mt s phin bn trc ca m hnh quan h, ngi ta yu cu rng cc
thuc tnh biu din cng mt khi nim ca th gii thc th phi c tn nh nhau
58
trong mi quan h. iu s gy ra kh khn khi cng mt khi nim th gii
thc c s dng trong cc vai tr khc nhau.
Mt h qun tr c s d liu phi c ngn ng nh ngha d liu (Data
definition language DDL) nh ngha lc c s d liu quan h. Cc h
qun tr c s d liu hin nay hu nh s dng SQL cho mc ch ny.
Cc rng buc ton vn c ch ra trn mt lc c s d liu v c tn
trng lm tho mn trn mi trng thi c s d liu ca lc ny. Ngoi cc
rng buc min v rng buc kho cn c thm cc rng buc c xem nh mt
phn ca m hnh quan h, l rng buc ton vn thc th v rng buc ton vn
tham chiu.
II.4- Ton vn thc th, ton vn tham chiu v kho ngoi
Rng buc ton vn thc th c pht biu l: kho chnh phi lun lun c
gi tr xc nh, ngha l khng c php c gi tr null. S d c iu l do gi
tr ca kho chnh c s dng xc nh cc b gi tr ring bit trong mt
quan h. Vic c gi tr null cho kho chnh ko theo vic chng ta khng th xc
nh c mt s b gi tr. V d, nu c hai hay nhiu hn cc b gi tr c gi tr
null cho kho chnh th chng ta khng c kh nng phn bit chng.
Cc rng buc kho v rng buc ton vn thc th c ch ra trn cc quan
h ring r. Rng buc ton vn tham chiu c ch ra gia hai quan h duy tr
s tng ng gia cc b ca hai quan h. Mt cch khng hnh thc, rng buc
ton vn tham chiu c pht biu l: mt b gi tr trong mt quan h c lin kt
n mt quan h khc phi lin kt n mt b gi tr tn ti trong quan h .
nh ngha ton vn tham chiu mt cch hnh thc hn, trc tin chng
ta a ra khi nim kho ngoi: Mt tp hp cc thuc tnh FK trong mt lc
quan h R
1
l mt kho ngoi ca R
1
tham chiu n quan h R
2
nu n tho mn
hai quy tc sau:
qt1. Cc thuc tnh trong FK c cng min gi tr nh cc thuc tnh ca kho
chnh PK ca R
2
. Cc thuc tnh FK c gi l tham chiu n (hoc l lin h
n) quan h R
2
.
qt2. Mt gi tr ca FK trong mt b t
1
ca trng thi hin ti r
1
(R
1
) hoc c
mt nh mt gi tr ca kho chnh ca mt b t
2
no y trong trng thi hin ti
r
2
(R
2
), hoc l null. Trong trng hp ny ta c t
1
[FK] = t
2
[PK] v ta ni rng b t
1

59
lin h (tham chiu) n b t
2
. R
1
c gi l quan h tham chiu v R
2
c gi l
quan h b tham chiu.
Trong mt c s d liu c nhiu quan h thng c nhiu rng buc ton vn
tham chiu. ch ra cc rng buc ny, trc tin ta phi c mt hiu bit r rng
v ngha hoc vai tr ca mi tp thuc tnh trong cc lc quan h khc
nhau ca c s d liu. Cc rng buc ton vn quy chiu thng ny sinh t cc
mi lin kt gia cc thc th c biu din bng cc lc quan h.
Ch rng mt kho ngoi c th tham chiu n quan h ca chnh n.
Trong trng hp , kho ngoi biu th mt lin kt quy.
Chng ta c th biu din cc rng buc tham chiu bng s . lm iu
ta v mt cnh c hng t mi kho ngoi n quan h m n tham chiu n.
Hnh III-4 biu din lc hnh 3.2 vi cc rng buc quy chiu c biu din
theo cch ny.

NHNVIN( Hm,Tn, MsNV, Ngysinh, ach, Giitnh,Lng, MsNGS, MsV)

NV ( TnV, MsV, MsNQL, Ngybtu)

NV_AIM( MsV, aimV)

DN( TnDA, MsDA, aimDA, M sV)

NHNVIN_DN( MsNV, MsDA, Sgi)

PHTHUC( MsNV, TnCon, Giitnh, Ngysinh)

Hnh III-4. Lc v s tham chiu
Ngoi cc rng buc ton vn trn, c s d liu cn phi tho mn mt s
rng buc khc, nh rng buc trng thi, rng buc chuyn tip Cc rng buc
trng thi xc nh cc rng buc m mt trng thi vng chc ca c s d liu
phi tho mn. V d v cc rng buc l: lng ca mt nhn vin khng c
60
vt qu lng ca ngi gim st nhn vin hoc s gi nhiu nht m mt
nhn vin c th lm vic trong mt tun trn tt c cc d n l 56 gi. Cc rng
buc nh vy c th c c t v bt tun theo bng cch s dng mt ngn ng
c t rng buc. Ngi ta c th s dng cc c cu nh l trigger hoc assertion.
Cc rng buc chuyn tip c th c nh ngha lm vic vi nhng thay i
trng thi trong c s d liu. V d v rng buc ny l: lng ca mt nhn
vin ch c th tng. Cc rng buc nh vy thng c nh ngha bng cch s
dng cc quy tc hoc bng cc trigger.
III- Cc php ton trn m hnh quan h
Trong phn ny chng ta tho lun v cc php ton ca m hnh quan h. Cc
php ton ca m hnh quan h c th phn thnh hai loi: cc php ton cp nht
v cc php ton i s quan h. Cc php ton cp nht c s dng to ra
mt quan h ng n. Cc php ton i s quan h c s dng c t cc
php ly thng tin ra.
III.1- Cc php ton cp nht
Cc php ton cp nht gm ba php ton c bn l chn, xo v sa i. Php
chn c dng chn mt b gi tr hoc nhiu b gi tr vo mt quan h. Php
xo dng loi b cc b gi tr v php sa i dng sa i cc gi tr ca
mt s thuc tnh trong cc b gi tr c. Mi khi cc php ton cp nht c
p dng, cc rng buc trn lc c s d liu c th b vi phm. Trong phn
ny chng ta s ni n kh nng vi phm cc rng buc ca tng php ton v cc
kiu hnh ng c th thc hin khi mt rng buc b vi phm.
III.1.1- Php chn (Insert)
Php chn cung cp mt danh sch cc gi tr cho mt b mi t c chn vo
trong mt quan h R. Php chn c th vi phm cc kiu rng buc c m t
trn. Cc rng buc min c th b vi phm nu mt gi tr thuc tnh c cho
khng thuc vo min tng ng. Cc rng buc kho c th b vi phm nu mt
gi tr kho trong b mi t tn ti trong mt b khc trong quan h r(R). S
ton vn thc th c th b vi phm nu kho chnh ca b mi t l null. S ton
vn tham chiu c th b vi phm nu mt gi tr ca mt kho ngoi trong t tham
chiu n mt b khng tn ti trong mt quan h c tham chiu. V d (vi cc
bng trong c s d liu CNGTY) :
61
- Chn b gi tr <null, V, Hi, 15/07/81, Hni, Nam, 3200, null, 4>
vo quan h NHNVIN. Php chn ny vi phm rng buc ton vn thc th
(gi tr null cho kho chnh). Php chn b loi b.
- Chn b gi tr <NV002,Trng,Phi,15/07/81, Hni, Nam, 3200,
NV067, 4> vo quan h NHNVIN. Php chn ny vi phm rng buc
kho, bi v gi tr NV002 c trong bng. Php chn b loi b.
- Chn b gi tr <NV072, V, Hi, 15/07/81, Hni, Nam, 3200,
NV002 , 7> vo quan h NHNVIN. Php chn ny vi phm rng buc
ton vn tham chiu, trong quan h NV khng c n v c m s = 7.
Php chn b loi b.
- Chn b gi tr <NV045l, V, Hi, 15/07/81, Hni, Nam, 3200,
NV002, 4> vo quan h NHNVIN. Php chn tho mn tt c cc rng
buc, v th n c chp nhn.
Nu mt php chn vi phm mt hoc nhiu rng buc, tu chn mc nh l
loi b php chn. Trong trng hp ny, thng l cc h qun tr c s d liu c
th thng bo cho ngi s dng nguyn nhn ca vic loi b php chn.
III.1.2- Php xo (Delete)
Php xo c s dng xo mt hoc nhiu b gi tr ca mt quan h.
Php xo ch c th vi phm rng buc tham chiu trong trng hp b b xo c
tham chiu bi mt kho ngoi t cc b khc trong c s d liu. ch r mt
php xo, cn phi a ra mt iu kin trn cc thuc tnh ca quan h chn
cc b s b xo. V d:
- Xo mt b gi tr ca quan h NHNVIN_DN c MsNV = NV010
v MsDA = 10. Php xo ny c chp nhn.
- Xo b gi tr ca NHNVIN c MsNV = NV010. Php xo ny khng
chp nhn c bi v c cc b trong NHNVIN_DN tham chiu n
b ny, nh vy l vi phm rng buc ton vn tham chiu.
- Xo b gi tr ca NHNVIN c MsNV = NV002. Php xo ny cng
vi phm rng buc ton vn tham chiu .
Ba tu chn c sn sng c s dng nu mt php xo gy ra s vi phm.
Tu chn th nht l loi b php xo. Tu chn th hai l c gng lan truyn php
62
xo (cascade the deletion) bng cch xo ng thi cc b tham chiu n b b
xo. Tu chn th ba l sa i cc gi tr ca cc thuc tnh tham chiu gy ra s
vi phm. Mi gi tr nh vy hoc l lm cho bng null hoc c thay i thnh
b c hiu lc tham chiu khc. Ch rng, nu mt thuc tnh tham chiu gy ra
s vi phm l mt phn ca kho chnh th khng th lm cho thnh null, bi v nu
lm vy th s vi phm rng buc ton vn thc th. C th kt hp c ba tu chn
trn.
III.1.3- Php sa i (Update)
Php ton sa i c dng thay i cc gi tr ca mt hoc nhiu thuc
tnh trong mt (hoc nhiu) b ca mt quan h R no y. la chn cc b cn
c thay i, ngi s dng phi ch ra mt iu kin trn cc thuc tnh. V d:
- Sa i Lng ca b NHNVIN c MsNV = NV018 thnh 2800. Php
sa i ny c chp nhn.
- Sa i MsV ca b NHNVIN c MsNV = NV018 thnh 7. Php
sa i ny vi phm rng buc ton vn tham chiu.
- Sa i MsNV ca b NHNVIN c MsNV = NV018 thnh
NV014. Php sa i ny vi phm rng buc ton vn thc th v ton vn
tham chiu.
Vic sa i mt thuc tnh khng phi l mt kho chnh hocc mt kho
ngoi thng khng gy ra cc vi phm rng buc, h qun tr c s d liu ch cn
kim tra khng nh rng gi tr mi l thuc min v kiu gi tr ng n. Vic
sa i gi tr mt kho chnh tng t nh vic xo mt b v chn b khc vo
ch ca n. Nh vy chng ta tr v trng hp tho lun vi php chn v
php xo. Nu mt thuc tnh kho ngoi b sa i th h qun tr c s d liu
phi m bo rng gi tr mi tham chiu n mt b c tn ti trong quan h c
tham chiu (hoc l null).
III.2- Cc php ton i s quan h
Ngoi vic nh ngha cu trc c s d liu v cc rng buc, mt m hnh
d liu phi cha mt tp hp php ton thao tc d liu. Tp hp c s cc
php ton m hnh quan h to nn i s quan h. Cc php ton ny gip cho
ngi s dng xc nh r cc yu cu ly tin c bn. Kt qu ca mt php ly tin
63
l mt quan h mi, c th c to ra t mt hoc nhiu quan h. Cc quan h
c th c thao tc tip theo bng cch s dng cc php ton ca cng i s.
Mt dy cc php ton quan h to nn mt biu thc i s quan h m kt qu
ca n cng l mt quan h.
Cc php ton i s quan h c chia thnh hai nhm. Mt nhm bao gm
cc php ton tp hp ly t l thuyt tp hp ton hc. Cc php ton l php
hp, php giao, php tr tp hp v php tch cc. Nhm kia bao gm cc php
ton c xy dng c bit cho cc c s d liu quan h. Cc php ton l
php chn, php chiu, php ni v mt s cc php ton khc.
III.2.1- Php chn (SELECT)
Php chn llc s dng chn mt tp hp cc b tho mn iu kin
chn t mt quan h. Ta c th xem php chn nh mt b lc, n ch gi li cc
b tho mn iu kin t ra.
Php chn c k hiu l
o
< iu kin chn>
( R)
trong k hiu o c dng k hiu php chn, cn iu kin chn l
mt biu thc lgic c ch ra trn cc thuc tnh ca R. Ch rng R ni chung
l mt biu thc i s quan h. Kt qu ca mt biu thc i s quan h l mt
quan h. Biu thc n gin nht chnh l tn ca mt quan h ca mt c s d
liu. Quan h kt qu ca php chn c cng thuc tnh nh R. V d, chn cc
b NHNVIN thuc v n v c m s l 4 hoc cc b NHNVIN c lng
ln hn 3000 ta c th vit mt cch ring r nh sau:
o
< Ms = 4>
( NHNVIN)
o
< Lng > 3000>
( NHNVIN)
Biu thc logic ch ra trong <iu kin chn> c to nn t mt s hng
mc c dng :
<tn thuc tnh> <php so snh> <gi tr hng>
hoc <tn thuc tnh> <php so snh> <tn thuc tnh>
trong <tn thuc tnh> l tn ca mt thuc tnh trong R, <php so snh> l
mt trong cc php ton so snh {<, <=, =, >=, >, =} cn <gi tr hng> l mt gi
64
tr hng t min gi tr ca thuc tnh. Cc hng mc c th c ni vi nhau bng
cc php ton l gic AND, OR, NOT to ra mt iu kin chn chung. V d,
chn ra cc nhn vin lm vic n v c m s l 4 v c lng ln hn 3000
hoc cc nhn vin lm vic n v c m s l 5 v c lng ln hn 4000 ta c
th vit php chn nh sau:
o
< MsV = 4>AND <lng>3000>OR< MsV = 5>AND <lng>3500>
( NHNVIN)
Kt qu ch ra hnh III-5.
MsNV Hm Tn Ngysinh ach Giitnh Lng MsNGS MsV
NV002 Trn c Nam 14/02/66 H ni Nam 4000 NV061 5
NV014 Phm Bng 26/06/52 Bc ninh Nam 4300 NV061 4
NV016 Nguyn Sn 14/08/73 H nam Nam 3800 NV002 5
Hnh III-5. Kt qu php chn
Ch rng cc php ton so snh trong tp hp {<, <=, =, >=, >, =} p dng
cho cc thuc tnh c min gi tr l cc gi tr c th t nh l min gi tr s.
Min gi tr cc dy k t c xem nh c th t da trn vic so snh cc dy k
t. Nu min gi tr ca mt thuc tnh l mt tp hp cc gi tr khng c th t
th ch c cc php so snh trong tp hp { =, = } l c th p dng c. Ngoi ra,
c th cn cc php so snh b sung, chng hn nh l mt dy con ca hoc
trong khong t n.
Kt qu mt php chn c xc nh nh sau: <iu kin chn> c p
dng cho mi b t trong R mt cch c lp. iu c thc hin bng cch
thay th mi thuc tnh A
i
trong iu kin chon bng gi tr t[A
i
] ca n trong b.
Nu iu kin chn cho gi tr ng th b t s c chn. Tt c cc b c chn
xut hin trong kt qu ca php chn. Cc php ton logic AND, OR, NOT c
thc hin theo quy tc bnh thng ca chng.
Php chn l php ton mt ngi, ngha l n c p dng cho mt quan h.
Hn na, php chn c p dng cho tng b mt cch c lp, v vy, cc iu
kin chn khng th lin quan n nhiu b. Quan h kt qu ca php chn c cp
ging nh cp ca R. S cc b trong quan h kt qu lun lun nh hn hoc bng
s cc b trong R.
65
Php chn l mt php ton c tnh cht giao hon, ngha l
o
< iu kin 1>
(o
< iu kin 2>
( R)) = o
< iu kin 2>
(o
< iu kin 1>
( R))
Hn na ta c th kt hp mt lot cc php chn thnh mt php chn n
gin bng cch s dng php ton AND. V d:
o
< iu kin 1>
(o
< iu kin 2>
( R)) = o
< iu kin 2>AND< iu kin 1>
( R)
III.2.2- Php chiu (PROJECT)
Nu ta coi mt quan h nh mt bng th php chn chn mt s hng ca
bng tho mn iu kin chn v b qua cc hng khng tho mn iu kin chn.
Php chiu l php ton chn mt s ct ca bng. Nu chng ta ch quan tm n
mt s thuc tnh ca quan h, chng ta dng php chiu chiu ln cc thuc
tnh . Php chiu c k hiu l:
t
<danh sch cc thuc tnh>
( R)
trong t l k hiu dng biu din php chiu v <danh sch cc thuc
tnh> l mt danh sch con cc thuc tnh ca quan h R. Ni chung R l mt biu
thc i s quan h. Trng hp n gin nht n l tn ca mt quan h ca c s
d liu. Kt qu ca php chiu l mt quan h ch c cc thuc tnh nm trong
<danh sch cc thuc tnh> v c cng th t nh th t ca chng c trong danh
sch. Nh vy, cp ca quan h kt qu l s cc thuc tnh c trong <danh sch
cc thuc tnh>.
Nu <danh sch cc thuc tnh> ch bao gm cc thuc tnh khng phi thuc
tnh kho ca R th quan h kt qu c th c nhng b trng nhau. Php chiu loi
b mi b trng lp, v nh vy, kt qu ca php chiu l mt tp hp cc b v l
mt quan h ng n.
V d, php chiu:
t
< MsNV, Hm,Tn, Lng>
(NHNVIN)
cho kt qu l mt quan h c cc thuc tnh MsNV, Hm, Tn, Lng
(hnh III-6).
MsNV Hm Tn ach Lng
NV001 L Vn H ni 3000
66
NV002 Trn c Nam H ni 4000
NV010 Hong Thanh Ngh an 2500
NV014 Phm Bng Bc ninh 4300
NV016 Nguyn Sn Hnam 3800
NV018 V Hng Giang Nam nh 2500
NV025 Trn L Hoa Phth 2500
NV061 Hong Gip H tnh 5500
Hnh III-6. Kt qu php chiu
S cc b trong quan h kt qu t mt php chiu lun lun nh hn hoc
bng s cc b trong R. Nu danh sch chiu l mt siu kho ca R (ngha l n
cha mt kho no ca R) th quan h kt qu c cng mt s b nh R. Ngoi
ra, nu <danh sch 2> cha tt c cc thuc tnh c trong <danh sch 1> th
t
< danh sch1>
(t
< danh sch2>
( R)) = t
< danh sch 1>
( R)
Php chiu khng c tnh giao hon.
III.2.3- Php t li tn (RENAME)
Chng ta c th p dng nhiu php ton quan h lin tip nhau. Trong trng
hp hoc chng ta c th vit cc php ton nh l mt biu thc i s quan h
n bng cch xp lng cc php ton li vi nhau, hoc chng ta c th p dng
mi php ton ti mt thi im v to ra cc quan h kt qu trung gian. Trong
trng hp to cc quan h trung gian, ta phi t tn cho quan h . V d:
a ra Htn v Lng ca cc Nhnvin lm vic n v c Ms l 4 chng ta
phi p dng mt php chn v mt php chiu. Chng ta c th vit mt biu thc
i s quan h n nh sau :
t
< Htn, Lng >
(o
<Ms = 4>
(NHNVIN))
Mt cch khc, chng ta c th to ra kt qu trung gian v vit biu thc trn
thnh dy cc php ton nh sau:
KQTG o
<Ms = 4>
(NHNVIN)
Ketqua t
< Htn, Lng >
(KQTG)
67
Thng thng vic phn tch mt dy phc tp cc php ton bng cch ch ra
cc quan h kt qu trung gian l d hn vic vit mt biu thc i s quan h
n. Chng ta c th dng k thut ny t li tn (rename) cho cc thuc tnh
trong cc quan h trung gian v kt qu. t li tn cho cc thuc tnh ca mt
quan h, chng ta lit k cc tn mi ca cc thuc tnh trong cp du ngoc. V d:
R(Hv tn, Lng) t
< Htn , Lng >
( KQTG)
Cho kt qu l quan h R, trong thuc tnh Htn c t li tn thnh
Hvtn.
Nu khng c vic t li tn th tn ca cc thuc tnh trong quan h kt qu
ca mt php chn l ging nh cc tn trong quan h ban u v c cng mt th
t nh th t ca cc thuc tnh . i vi php chiu, nu khng c vic t li
tn th quan h kt qu c cc tn thuc tnh ging nh cc tn trong danh sch
chiu v c cng th t nh chng xut hin trong danh sch.
Chng ta c th nh ngha mt php ton t li tn , n c th t li tn cho
mt tn quan h hoc cc tn thuc tnh hoc c hai. Php t li tn c k hiu
l:
p
S(B1,B2,Bn)
(R) hoc p
S
(R) hoc p
(B1,B2,Bn)
(R)
trong k hiu p c dng k hiu php ton t li tn, S l tn quan
h mi, B
1
,B
2
,B
n
l cc tn thuc tnh mi. Biu thc th nht t li tn quan h
v cc thuc tnh ca n. Nu cc thuc tnh ca R l A
1
,A
2
, ...A
n
th sau khi t li
tn, quan h c tn mi l S cn cc thuc tnh c tn mi l B
1
, B
2
, , B
n
. Biu
thc th hai ch t li tn quan h, ngha l sau php t li tn, quan h c tn
mi l S, cn cc thuc tnh vn mang tn c. Biu thc th ba ch t li tn cc
thuc tnh, nu cc thuc tnh ca R l A
1
,A
2
, ...A
n
th sau khi t li tn chng c
tn l B
1
, B
2
, ...B
n
.
III.2.4- Cc php ton l thuyt tp hp
Nhm tip theo ca cc php ton i s quan h l cc php ton ton hc
thng thng trn cc tp hp. l cc php ton hp, giao v tr tp hp. Cc
php ton ny l cc php ton hai ngi, ngha l mi php ton c p dng cho
hai tp hp. Khi p dng cc php ton ny cho c s d liu quan h, hai quan h
tham gia vo mt trong cc php ton trn phi c kiu ca cc b nh nhau, hay
ni cch khc, chng phi c cng mt cu trc. iu kin ny c gi l tng
68
thch ng nht. Hai quan h R(A
1
,A
2
,, A
n
) v S(B
1
, B
2
, ,B
n
) c gi l
tng thch ng nht nu chng c cng cp n v dom(Ai) = dom(Bi) vi 1<= i
<= n. iu c ngha l hai quan h c cng s cc thuc tnh v mi cp thuc
tnh tng ng c cng min gi tr.
Cc php ton c nh ngha nh sau:
. Php hp: Hp ca hai quan h R v S, c k hiu l R S, cho kt qu l
mt quan h cha tt c cc b c trong R hoc trong S hoc trong c hai. Cc
b trng lp b loi b.
. Php giao: Giao ca hai quan h R v S , c k hiu l R S , cho kt qu
l mt quan h cha tt cc cc b c trong c hai quan h R v S.
. Php tr quan h: Php tr quan h R v S , c k hiu l R - S, cho kt
qu l mt quan h cha tt c cc b c trong R nhng khng c trong S.
V d, xt hai quan h:
R Htn Tui Giitnh S Htn Tui Giitnh
AA 20 Nam BB 18 N
BB 18 N EE 20 Nam
CC 21 Nam DD 25 N
DD 25 N FF 21 Nam

RS Htn Tui Giitnh RS Htn Tui Giitnh
AA 20 Nam BB 18 N
BB 18 N DD 25 N
CC 21 Nam
DD 25 N R - S Htn Tui Giitnh
EE 20 Nam AA 20 Nam
FF 21 Nam CC 21 Nam
Hnh III-7. Kt qu ca cc php ton tp hp
69
Ch rng cc php ton hp v giao l cc php ton giao hon, ngha l:
R S = S R v R S = S R
Cc php ton trn cng c tnh cht kt hp, ngha l
R (S T) = (R S) T v R (S T) = (RS) T
Php ton tr tp hp khng c tnh cht giao hon.
R - S = S - R
Ngoi cc php ton trn, cn c mt php ton gi l tch cc. Tch
cc cn gi l tch hn hp (cross product) hoc l ni hn hp (cross join), c
k hiu l . cng l mt php ton hai ngi nhng nhng quan h m n p
dng trn khng phi l tng thch ng nht. Php ton ny c s dng
ni cc b ca hai quan h vo mt kiu kt hp. Kt qu ca
R(A
1
, A
2
, .. , A
n
) S(B
1
, B
2
, ,B
m
)
l mt quan h Q vi n+m thuc tnh Q(A
1
, A
2
,, A
n
, B
1
, B
2
,,B
m
). Quan h
kt qu Q c cc b c to thnh do s kt hp mt b ca R v mt b ca S.
V d, xt hai quan h R v S nh sau:

R A1 A2 A3 S B1 B2 B3
aa bb cc dd da db
ab ba ac cd cb ac

R S A1 A2 A3 B1 B2 B3
aa bb cc dd da db
aa bb cc cd cb ac
ab ba ac dd da db
ab ba ac cd cb ac
Hnh III-8. Tch cc ca hai quan h R v S.
70
Nh vy, nu R c n
R
b v S c n
S
b th R S c n
R
*n
S
b. Php ton ny
nu p dng mt mnh th khng c ngha my. N ch c li khi tip theo bng
mt php chn cc gi tr tng thch ca cc thuc tnh xut pht t cc quan h
thnh phn. Tch cc kt hp vi mt php chn cho ta mt php ni.
III.2.5- Php ni (JOIN)
Php ni c k hiu l v c dng kt hp cc b c lin h vi
nhau t hai quan h thnh mt b. Php ton ny rt quan trng i vi c s d
liu quan h c nhiu bng bi v n cho php ta x l cc mi lin kt gia cc
quan h. Dng tng qut ca php ni trn hai quan h R(A
1
, A
2
,,A
n
) v
S(B
1
,B
2
,, B
m
) l
R S
< iu kin ni>
Kt qu ca php ni l mt quan h Q(A
1
,A
2
,,A
n
,B
1
,B
2
,,B
m
) c n+m
thuc tnh. Mi b ca Q l mt s kt ni gia mt b ca R v mt b ca S khi
chng tho mn iu kin ni. S khc nhau gia tch cc v php ni l ch
trong php ni, ch c cc b tho mn iu kin ni mi xut hin trong kt qu,
trong khi trong tch cc mi t hp ca cc b u c trong kt qu. iu
kin ni c ch ra trn cc thuc tnh ca hai quan h R v S v c tnh ton
cho mi t hp cc b. Mi t hp b m iu kin ni l ng c cha trong
quan h kt qu Q nh l mt b n. Mt iu kin ni tng qut c dng
<iu kin> AND <iu kin> AND AND <iu kin>
trong mi iu kin c dng A
i
u B
j
, A
i
l mt thuc tnh ca R, B
j
l mt
thuc tnh ca S, A
i
v B
j
c cng min v u l mt trong cc du php ton so snh
{<, <=, =, >=, >, =}. Mt php ton ni vi iu kin tng qut nh vy gi l mt
php ni t-ta. Cc b c cc thuc tnh ni l null khng xut hin trong kt qu.
Theo ngha , php ton khng nht thit phi x l mi thng tin trong cc quan
h tham gia. V d :
Gi s ta c hai quan h R v S nh sau:
R A1 A2 A3 S B1 B2 B3
Aa Ca Ba Ba Aaa Bbb
Ab Cb Bb Bb Ccc Ddd
71
Ac Ca Ba
Ad Cc Null
Ae Cd Bb
Khi kt qu ca php ni t-ta R v S vi iu kin A3 = B1 s cho kt qu
l:
R S A1 A2 A3 B1 B2 B3
<A3 = B1> Aa Ca Ba Ba Aaa Bbb
Ab Cb Bb Bb Ccc Ddd
Ac Ca Ba Ba Aaa Bbb
Ae Cd Bb Bb Ccc Ddd
Hnh III-9. Php ni t-ta hai quan h
Phn ln cc php ni ch cho php cc iu kin ni vi cc so snh bng.
Nhng php ni ch s dng php so snh bng c gi l ni bng (equi join). V
d trong hnh III-8 l mt php ni bng. Ch rng trong kt qu ca php ni
bng chng ta thy lun lun c mt hoc nhiu cp thuc tnh c cc gi tr nh
nhau trong mi b. Vic c cc cp thuc tnh c gi tr nh nhau l tha, v vy
ngi ta ngh mt php ni mi gi l ni t nhin, k hiu l *. Php ni t
nhin nhm loi b thuc tnh th hai (thuc tnh tha) trong iu kin ni bng.
nh ngha chun ca ni t nhin i hi hai thuc tnh ni (hoc mi cp thuc
tnh ni) phi c tn nh nhau trong c hai quan h. Nu cc thuc tnh khng
cng tn th trc khi ni phi p dng php ton t li tn. V d, ta cn ni t
nhin hai quan h R(A1,A2,A3) v S(B1,B2,B3) nh trong v d trn. c th
thc hin c php ni t nhin vi iu kin so snh bng, ta phi i tn thuc
tnh B1 thnh A3, ngha l ta phi vit:
R * p
(A3, B2,B3)
(S)
Php ni s c kt qu nh sau:
R * S A1 A2 A3 B2 B3
Aa Ca Ba Aaa Bbb
72
Ab Cb Bb Ccc Ddd
Ac Ca Ba Aaa Bbb
Ae Cd Bb Ccc Ddd
Hnh III-10. Php ni t nhin hai quan h
Nu cc thuc tnh m trn ni t nhin c ch ra c tn nh nhau th
vic t li tn l khng cn thit.
Ch rng nu khng c mt t hp cc b no tho mn iu kin ni th kt
qu ca mt php ni l mt quan h rng khng cha b no. Ni chung, nu R c
n
R
b v S c n
S
b th kt qu ca php ni R vi S s c s cc b ln hn 0 v
nh hn n
R
.n
S
. C ca mt kt qu ni chia cho c cc i n
R
.n
S
to nn mt t l
gi l chn la ni, l mt tnh cht ca mi iu kin ni. Nu khng c iu
kin ni, mi t hp cc b s c chn v php ni tr thnh mt tch cc.
Php ni c s dng kt hp cc d liu t nhiu quan h sao cho cc
thng tin c lin h vi nhau c th c biu din trong mt bng. i khi php
ni c p dng ni mt bng vi chnh n. Chng ta c th p dng php ni t
nhin v ni bng ni nhiu bng vi nhau. Nu ta ni n bng vi nhau th phi
ch ra n-1 iu kin ni.
III.2.6- Tp hp y cc php ton quan h
Ngi ta ch rng tp hp cc php ton i s quan h {o, t, , , } l
mt tp y , ngha l mi php ton i s quan h khc c th c biu din
thng qua cc php ton ca tp hp ny. V d, php giao c th c biu din
bng cch s dng cc php hp v tr tp hp nh sau:
R S = (R S) ((R- S) (S R))
Nh vy, ni mt cch chnh xc l khng cn phi c php giao. Mi khi cn
thc hin mt php giao, ta ch cn a ra biu thc phc tp ny l .
Mt v d khc, mt php ni c th c ch ra nh mt tch cc v sau
l mt php chn:
R S = o
< iu kin chn>
(R S)
< iu kin ni>
73
Mt cch tng t, ta c th thay th php ni t nhin bng mt tch cc
i sau mt php t li tn v sau l cc php ton chn v chiu. Nh vy cc
php ton ni cng khng cn thit. Tuy nhin cc php ton rt quan trng bi
v chng tin dng v rt thng xuyn c p dng trong cc c s d liu. Cc
php ton c a vo trong i s quan h l do tin dng hn l do cn thit.
Mt php ton khc cng c a vo, l php chia.
III.2.7- Php chia
Php chia c li cho mt loi truy vn c bit i khi c cc ng dng trong
c s d liu. Php chia c p dng cho hai quan h R(Z) v S(X) v c k
hiu l R(Z) S(X), trong X c Z . Gi s Y = Z - X (nh vy Z = X Y). Kt
qu ca php chia l quan h T(Y) cha mt b t nu cc b t
R
xut hin trong R
vi t
R
[Y] = t v vi t
R
[X] = t
S
vi mi b t
S
trong S. iu c ngha l mt b t
xut hin trong kt qu T ca php chia, cc gi tr trong t phi xut hin trong R
trong s kt ni vi mi b ca S.
V d: Xt php chia quan h R(A,B) cho quan h S(A) nh hnh v di y.
Ta thy ch c cc thuc tnh B1 v B4 l kt ni vi tt c cc b ca S trong R.
V vy kt qu nhn c l mt quan h T(B) vi hai gi tr ca B l B1 v B4.
Php chia c th c biu din thng qua cc php ton t, , nh sau:
T
1
t
Y
( R ) ; T
2
t
Y
((S T
1
) R ) ; T T
1
T
2

R A B S B
A1 B1 A1
A2 B1 A2
A3 B1 A3
A4 B1
A1 B2
A3 B2
A2 B3 T A
A3 B3 B1
A4 B3 B4
74
A1 B4
A2 B4
A3 B4
Hnh III-11. Php chia T(B) = R(A,B) S(B).
III.3- Cc php ton quan h b sung
C nhiu truy vn c s d liu khng th thc hin c bng cc php ton
i s c bn trnh by trn. Trong phn ny chng ta s trnh by cc php ton
b sung biu din cc truy vn . Cc php ton ny lm tng cng sc mnh
ca i s quan h.
III.3.1- Cc hm nhm v cc php nhm
Kiu cu hi u tin khng th biu din c trong i s quan h c s l
ch ra cc hm nhm ton hc trn cc tp hp gi tr ca cc c s d liu. Cc v
d v cc hm nh vy c th l a ra lng trung bnh hoc tng lng ca tt c
nhn vin, hoc cho bit s cc b ca bng nhn vin. Cc hm hay p dng
thu thp cc gi tr s l hm Tng (SUM), Trungbnh (AVERAGE), Tnh gi tr
ln nht (MAX), Gi tr b nht (MIN). Hm m (COUNT) c s dng m
cc b gi tr.
Mt kiu cu hi hay dng khc l i hi nhm cc b trong mt quan h
theo mt gi tr ca mt s cc thuc tnh ca chng v sau p dng cc hm
nhm mt cch c lp cho tng nhm. V d, nhm cc b ca quan h
NHNVIN theo MsV. Nh vy, mi nhm bao gm cc nhn vin cng lm
vic trong mt n v. Sau chng ta c th a ra mi gi tr ca MsV cng
vi lng trung bnh ca cc nhn vin trong n v.
Chng ta c th nh ngha mt php ton nhm nh sau:
< cc thuc tnh nhm>

< danh sch cc hm>
(R)
trong l k hiu php ton hm nhm, <cc thuc tnh nhm> l mt
danh sch cc thuc tnh ca quan h c ch ra trong R, <danh sch hm> l
danh sch cc cp (<hm><thuc tnh)>). Trong cc cp nh vy, <hm> l mt
trong cc hm cho php nh SUM, AVERAGE, MAX, MIN, COUNT, v <thuc
tnh> l mt thuc tnh ca quan h c ch ra trong R. Quan h kt qu c cc
75
thuc tnh nhm cng vi mt thuc tnh cho mi phn t trong danh sch hm. V
d, ly ra theo MsV cc nhn vin v lng trung bnh ca cc nhn vin
theo tng n v, ta c th vit:
MsDV

COUNT ( ), AVERAGE(Lng)
( NHNVIN)
Kt qu c minh ho hnh III-10.
MsV COUNT() AVERAGE(Lng)
1 1 5500
4 3 3100
5 4 3325
Hnh 3.10 Minh ho php ton nhm
Nu khng ch ra thuc tnh nhm th cc hm c p dng cho cc gi tr
thuc tnh ca tt c cc b trong quan h, v vy quan h kt qu ch c mt b.
Cn ch rng, ni chung, cc trng lp khng c loi b khi hm nhm c
p dng. Kt qu ca vic p dng mt hm nhm l mt quan h ch khng phi
l mt i lng v hng, thm ch nu n ch c mt gi tr.
III.3.2- Cc php ton khp kn quy
Mt kiu php ton khc, ni chung, khng ch ra c trong cc php ton
i s quan h c s l php ton khp kn quy. Php ton ny c p dng
cho mi lin kt quy gia cc b cng kiu.Vi cc php ton ny chng ta phi
s dng k thut lp.
III.3.3- Cc php ton ni ngoi (outer join), hp ngoi (outer union)
Trong phn ny chng ta tho lun mt vi m rng ca php ton ni v hp.
Cc php ton ni m t trn lin kt cc b tho mn iu kin ni. Nh vy, cc
b khng c b lin kt s b loi khi kt qu ni. Cc b vi gi tr null trong cc
thuc tnh ni cng b loi. Mt tp hp cc php ton gi l ni ngoi c th c
s dng khi chng ta mun gi cc b trong R hoc S hoc trong c hai quan h
trong kt qu ca php ni d chng c nhng b lin kt trong quan h kia hay
khng. C ba php ni ngoi gi l ni ngoi tri (left outer join), ni ngoi phi
(right outer join) v ni ngoi y (full outer join), c k hiu tng ng l:

76

Ni ngoi tri

Ni ngoi phi

Ni ngoi y
Php ni ngoi tri gi li mi b trong quan h bn tri R trong php ni.
Nu khng c b lin kt no c tm thy trong S th cc thuc tnh ca S trong
kt qu php ni c lm y bng cc gi tr null.
Tng t nh vy i vi cc php ni ngoi phi v cc php ni ngoi y
.
Php ton hp ngoi c m rng ly hp ca cc b t cc quan h nu
cc b khng tng thch ng nht. Php ton ny ch ly hp ca cc quan h m
chng ch tng thch b phn, ngha l ch mt vi thuc tnh ca chng l tng
thch php hp. iu phi tn trng l danh sch cc thuc tnh tng thch phi
cha mt kho cho c hai quan h. Cc b t cc quan h thnh phn vi cng mt
kho ch c biu din mt ln trong kt qu v c gi tr cho tt c cc thuc tnh
trong kt qu. Cc thuc tnh khng tng thch php hp t bt k quan h no
cng c gi trong kt qu v cc b khng c gi tr cho cc thuc tnh ny cng
c lp y bng nhng gi tr null.
III.4- Mt s v d v truy vn trong i s quan h
Trong phn ny, chng ta xt mt s v d minh ha vic s dng cc php
ton i s quan h. Cc v d y thc hin trn c s d liu CNG TY
mc II.3 chng III. Ni chung, mt truy vn c th c thc hin bng nhiu
cch, s dng cc php ton khc nhau. Trong cc v d sau, chng ta xt mt cch
thc hin, cc bn c c th t a ra cc cch thc hin khc.
Truy vn 1: a ra H m, Tn v a ch ca tt c cc nhn vin lm vic
cho n v c tn l Nghin cu: (Cc quan h TG1, TG2 l cc kt qu trung
gian)
TG1 o
TnV = Nghincu
(NV)
TG2 (TG1 - NHNVIN)
KETQUA t
Hm, Tn, ach
(TG2)
Theo cch thc hin ny, quan h TG1 cha thng tin v n v c tn
Nghin cu, quan h TG2 cha thng tin v cc nhn vin lm vic cho n v
Nghin cu v quan h KTQU cha cc thng tin theo yu cu ca truy vn.
77
Trong cc bng ca chng ta, cc thuc tnh ni c tn nh nhau nn c th dng
php ni t nhin.
Truy vn 2: Vi mi d n t ti H ni, hy lit k MsDA, TnV, Tn,
ach, Ngysinh ca ngi qun l n v.
TG1 o
DiadiemDA=Hanoi
(DN)
TG2 (TG1 - NV)
TG3 (TG2 * NHNVIN)
KTQU t
MsDA, MsV, Hm,ach, Ngysinh
(TG3)
Truyvn 3: Hy tm tn ca cc nhn vin lm vic trn tt c cc d n do
n v c m s = 5 kim sot.
TG1 t
MsDA
(o
M sDV = 5
(DN))
TG2 t
MsNV, MsDA
(NHNVIN_DN)
TG3 TG2 TG1
KETQUA t
Hm, Tn
(TG3 * NHNVIN)
IV- Chuyn i m hnh ER thnh m hnh quan h
Nh tho lun chng II, bc tip theo sau vic xy dng m hnh d
liu mc khi nim, ta phi chuyn i m hnh thnh mt m hnh d liu
lgic. Trong phn ny chng ta s tho lun v thut ton chuyn i mt m hnh
ER thnh ra m hnh quan h.
IV.1- Cc quy tc chuyn i
Thut ton chuyn i c thc hin theo cc bc sau (da trn CSDL
CNG TY):
Bc 1 : Vi mi kiu thc th thng thng E trong lc ER, hy to mt
quan h R cha mi thuc tnh n ca E. Vi cc thuc tnh phc hp, ch ly cc
thuc tnh thnh phn n ca n. Chn mt trong cc thuc tnh kho ca E lm
kho chnh cho R. Nu kho c chn ca E l phc hp (gm nhiu thuc tnh)
th tp cc thuc tnh n s cng nhau to nn kho chnh ca R.
78
V d: Gi s ta c kiu thc th NV vi cc thuc tnh l MsV,
TnV, aimV trong cc thuc tnh kho l MsV, TnV (do mi
n v c mt tn duy nht), v aimV l mt thuc tnh a tr (do mi n v
c nhiu a im). Khi kiu thc th NV c chuyn thnh quan h
NVI vi cc thuc tnh MsV, TnV. Kho chnh ca quan h l MsV
(chn mt trong hai thuc tnh kho ca kiu thc th).
Bc 2: Vi mi kiu th th yu W trong lc ER cng vi kiu thc th
ch E, hy to mt quan h R cha tt cc cc thnh phn n (hoc cc thnh phn
n ca cc thuc tnh phc hp) ca W nh l cc thuc tnh ca R. a cc
thuc tnh kho chnh ca cc quan h tng ng vi kiu thc th ch lm kho
ngoi ca R. Cc thuc tnh ny s xc nh kiu lin kt ca W. Kho chnh ca R
l mt t hp ca kho chnh ca cc quan h tng ng vi kiu thc th ch v
kho b phn ca kiu thc th yu W nu c.
V d: Gi s ta c kiu lin kt NHNVIN <c> CON trong
NHNVIN l kiu thc th ch vi cc thuc tnh MsNV, Hm, Tn,
Ngysinh, Giitnh. Thuc tnh kho ca NHNVIN l MsNV. CON l kiu
thc th ph thuc (vo thc th NHNVIN) vi cc thuc tnh l Htncon,
Ngysinh, Giitnh. Kiu thc th ny khng c thuc tnh kho. Khi kiu thc
th NHNVIN c chuyn thnh quan h NHNVIN vi cc thuc tnh nh
trn. Kiu thc th CON c chuyn thnh quan h CON vi cc thuc tnh
MsNV, Htncon, Ngysinh, Giitnh. Quan h ny c kho ngoi l MsNV,
kho chnh l M sNV, Htncon.
Bc 3: Vi mi kiu lin kt 1:1 R trong lc ER, hy xc nh cc quan
h S v T tng ng vi cc kiu thc th tham gia trong R. Hy chn mt trong
cc quan h, chng hn S, v a kho chnh ca T vo lm kho ngoi trong S.
Tt nht l chn S l mt kiu thc th tham gia ton b vo R. a tt cc cc
thuc tnh n (hoc cc thnh phn n ca cc thuc tnh phc hp) ca kiu lin
kt 1:1 R vo lm cc thuc tnh ca S.
Ch : C mt cch chuyn i mi lin kt 1:1 na l nhp hai kiu thc th
v mi lin kt thnh mt quan h. Cch ny thng c p dng khi c hai kiu
thc th u tham gia ton b vo lin kt.
V d: Gi s ta c kiu lin kt NHNVIN <qun l> NV, vi cc
thuc tnh ca cc kiu thc th ging nh trn. Kiu lin kt <qun l> l mt
79
kiu lin kt 1:1, ng thi s tham gia ca NHNVIN vo kiu lin kt l b
phn (khng phi nhn vin no cng qun l n v), s tham gia ca NV l
y (mt n v lun lun phi c mt ngi qun l). Khi , kiu thc th
NHNVIN s c chuyn thnh quan h NHNVIN vi cc thuc tnh ca
n, cn kiu thc th NV s c chuyn thnh quan h NV vi cc thuc
tnh ca kiu thc th NV cng thm vi thuc tnh MsNV v thuc tnh ca
kiu lin kt <qun l>, nu c. Thuc tnh MsNV s l kho ngoi cho quan h
NV. lm r vai tr ngi qun l, khi chuyn sang quan h NV, ngi
ta i tn thuc tnh MsNV thnh MsNQL (M s ngi qun l). Ngoi ra,
kiu lin kt <qun l> c mt thuc tnh l Ngybtu, thuc tnh ny cng c
a vo quan h NV.
Bc 4: Vi mi kiu lin kt hai ngi R kiu 1:N, hy xc nh quan h S
biu din kiu thc th tham gia pha N ca kiu lin kt. a kho chnh ca
quan h T biu din kiu thc th tham gia vo R pha 1 vo lm kho ngoi
trong S. Lm nh vy l v mi thc th c th ca pha N c lin kt vi nhiu
nht l mt thc th c th ca pha 1 ca kiu lin kt. a cc thuc tnh n
(hoc cc thnh phn n ca cc thuc tnh phc hp) ca kiu lin kt 1:N vo
lm cc thuc tnh ca S.
V d: Gi s ta c kiu lin kt NHNVIN <lm vic cho> NV, trong
cc kiu thc th NHNVIN, NV l cc kiu thc th trn. Kiu lin
kt <lm vic cho> l kiu lin kt N:1 (mt nhn vin ch lm vic cho mt n v
v mi n v c nhiu nhn vin lm vic cho). Khi , Kiu thc th NV s
c chuyn thnh quan h NV vi cc thuc tnh ca kiu thc th NV
cn kiu thc th NHNVIN s c chuyn thnh quan h NHNVIN vi cc
thuc tnh ca kiu thc th NHNVIN cng thm vi thuc tnh MsV (l
kho chnh ca quan h NV). Thuc tnh MsV s l thuc tnh kho ngoi
ca quan h NHNVIN.
Bc 5: Vi mi kiu lin kt N:M hai ngi R, hy to ra mt quan h mi S
biu din R. a cc kho chnh ca cc quan h biu din cc kiu thc th
tham gia vo lm kho ngoi ca S. T hp cc kho chnh s to nn kho
chnh ca S. a tt c cc thuc tnh n (hoc cc thnh phn n ca cc thuc
tnh phc hp) ca kiu lin kt N:M vo lm cc thuc tnh ca S. Ch rng ta
khng th biu din mt kiu lin kt N:M bng mt thuc tnh kho ngoi n
80
gin trong mt trong cc quan h tham gia (nh lm vi cc kiu lin kt 1:1 v
1:N) v t s lc lng N:M.
V d: Gi s ta c kiu lin kt NHNVIN <lm vic vi> DN. Kiu
thc th NHNVIN c cc thuc tnh nh trn vi thuc tnh kho l MsNV.
Kiu thc th DN c cc thuc tnh l MsDA, TnDA, aimDA trong
thuc tnh kho l MsDA. Kiu lin kt < lm vic vi> l mt kiu lin kt N:M
(mt nhn vin c th lm vic vi nhiu d n v mi d n c nhiu nhn vin
lm vic vi). Kiu lin kt ny c mt thuc tnh l Sgi lu s gi m mi
nhn vin lm vic cho mt d n. Khi kiu lin kt <lm vic vi> s c
chuyn thnh mt quan h c tn l NHNVIN_D N vi cc thuc tnh
MsNV, MsDA, Sgi trong hai thuc tnh MsNV, MsDA to thnh
kho chnh (phc hp) cho quan h.
Bc 6: Vi mi thuc tnh a tr A, hy to ra mt quan h mi R. Quan h R
ny s cha mt thuc tnh tng ng vi A cng vi thuc tnh kho K ca quan
h biu din kiu thc th hoc kiu lin kt c thuc tnh l A lm kho ngoi ca
R. Kho chnh ca R l mt t hp ca A v K. Nu thuc tnh a tr l phc hp
th chng ta ch a vo R cc thnh phn n ca n.
V d: Xt kiu thc th NV trn. Thuc tnh aimV l mt thuc
tnh a tr. Khi chuyn thnh m hnh quan h n s c chuyn thnh mt quan
h c kho chnh l MsV, a im v c th c thm mt s thuc tnh khc
lu thng tin v a im.
Bc 7: Vi mi kiu lin kt n ngi R, trong n > 2, hy to ra mt quan h
S biu din R. a cc kho chnh ca cc quan h biu din cc kiu thc th
tham gia vo lm kho ngoi ca S. a tt c cc thuc tnh n (hoc cc thnh
phn n ca cc thuc tnh phc hp) ca kiu lin kt n-ngi vo lm thuc tnh
ca S. Kho chnh ca S thng l mt t hp cc kho chnh ca cc quan h biu
din cc kiu thc th tham gia. Tuy nhin, nu rng buc lc lng trn mt kiu
thc th E no tham gia vo R l 1 th kho chnh ca S khng c cha thuc
tnh kho ngoi tham chiu n quan h E tng ng vi kiu thc th E.
V d: Gi s chng ta c kiu lin kt IL <cung cp> VTT <cho>
DN. y l mt kiu lin kt cp ba. Gi s rng kiu thc th IL c thuc
tnh kho l MsL, kiu thc th VTT c thuc tnh kho l MsVT, kiu
thc th DN c thuc tnh kho l MsDA cn kiu lin kt <cung cp> c
81
thuc tnh l Slng lu s lng vt t m mt ai l cung cp cho mt d n.
Khi kiu lin kt <cung cp> s c chuyn thnh mt quan h c tn l
CUNGCP vi cc thuc tnh MsL, MsVT , MsDA, Slng v kho
chnh gm ba thuc tnh MsL, MsVT , MsDA.
IV.2- Chuyn i m hnh c th
Trong chng 2 chng ta phn tch v thit k m hnh ER cho bi ton
CNGTY. p dng cc bc ca thut ton trn, chng ta c m hnh quan h
cho bi ton CNGTY nh sau:
NHNVIN(Hm,Tn, MsNV, Ngysinh, ach, Giitnh, Lng,
MsNGS, MsV)
NV(TnV, MsV, MsNQL, Ngybtu)
NV_AIM(MsV, aimV)
DN(TnDA, MsDA, aimDA, MsV)
NHNVIN_DN(MsNV, MsDA, Sgi)
PHTHUC(MsNV, Tncon, Giitnh, Ngysinh)
Hnh III-12. Lc c s d liu CNGTY
V- Tng kt chng v cu hi n tp
V.1- Tng kt chng
Trong chng ny chng ta trnh by cc khi nim c bn ca m hnh d
liu quan h. Chng ta cng tho lun v i s quan h v cc php ton b
sung c s dng thao tc cc quan h. Chng ny bt du bng vic gii
thiu cc khi nim min, thuc tnh v b gi tr. Lc quan h c nh
ngha nh mt danh sch cc thuc tnh m t cu trc ca mt quan h. Mt quan
h (hoc trng thi quan h) l mt tp hp cc b gi tr ph hp vi lc .
C nhiu c trng lm phn bit cc quan h v cc bng hoc cc tp thng
thng. Trc tin, cc b trong mt quan h l khng c th t. c trng th hai
lin quan n th t ca ca cc thuc tnh trong mt lc quan h v th t
tng ng ca cc gi tr bn trong mt b. Mc d ta a ra mt nh ngha
quan h khc chng minh rng hai th t ny l khng cn thit, tuy nhin,
thun tin ta vn i hi cc thuc tnh v cc gi tr trong b l c th t. Chng ta
82
cng tho lun v cc gi tr trong cc b v gii thiu cc gi tr null biu
din thng tin b thiu hoc khng bit.
Tip theo, chng ta tho lun v cc rng buc m hnh quan h. l cc
rng buc min, rng buc kha, cc khi nim v siu kha, kha d tuyn, kha
chnh v rng buc NOT NULL trn cc thuc tnh. Sau , chng ta nh ngha
c s d liu v lc c s d liu quan h. Cc rng buc ton vn thc th v
ton vn tham chiu cng c nh ngha v phn tch. Ton vn thc th ngn
cm vic kha chnh c gi tr null. Ton vn tham chiu c s dng duy tr
s nht qun ca vic tham chiu trong cc b t cc quan h khc nhau.
Cc php cp nht trn m hnh quan h gm Insert, Delete, Update. Mi mt
php ton c th vi phm cc kiu rng buc nht nh. Mi khi mt php ton
uc p dng, trng thi c s d liu sau khi php ton c thc hin phi c
kim tra m bo rng khng c mt rng buc no b vi phm.
Tip theo chng ta m t i s quan h c s, l mt tp hp cc php
ton thao tc quan h v c th c s dng a ra cc truy vn. Chng ta
nh ngha v phn tch cch s dng cc php ton nh chiu, chn, tch cc,
ni, php t li tn. Cc php ton tp hp nh giao, hp, tr cng c nh
ngha v phn tch.
Tip theo, chng ta tho lun v cc kiu truy vn quan trng khng th s
dng c cc php ton i s quan h c s. Chng ta gii thiu php ton
hm nhm lm vic vi cc kiu yu cu nhm. Cc kiu truy vn quy cng
c tho lun v gii thiu cch ch ra mt s kiu truy vn quy. Cc php ni
ngoi, hp ngoi, m rng ca php ni v php hp cng c tho lun cui
chng.
Cui cng, chng ta lm quen vi thut ton chuyn i t m hnh ER sang
m hnh quan h. M hnh ER cho CNGTY c xy dng chng II
c chuyn i thnh lc c s d liu quan h.
V.2- Cu hi n tp
1) nh ngha cc thut ng sau: min, thuc tnh, n-b, lc quan h, trng
thi quan h, cp ca quan h, lc c s d liu, trng thi c s d liu.
2) V sao cc b trong mt quan h l khng c th t.
83
3) V sao khng cho php cc b trng lp trong mt quan h.
4) Siu kha v kha khc nhau ch no.
5) V sao phi ch nh mt trong cc kha d tuyn lm kha chnh.
6) Nu nhng c trng lm cho cc quan h khc vi cc bng hoc cc tp
thng thng.
7) Nu cc l do v vic tn ti cc gi tr khng xc nh trong cc quan h.
8) Hy gii thch v rng buc ton vn thc th v rng buc ton vn tham
chiu. V sao cc rng buc ny l quan trng?
9) nh ngha kha ngoi. Khi nim ny dng lm g? Cc kha ngoi ng
vai tr nh th no trong php ni?
10) Hy gii thch cc php ton cp nht trn cc quan h v cc kiu rng buc
ton vn phi c kim tra i vi mi php ton cp nht.
11) Lit k cc php ton i s quan h v mc ch ca tng php ton.
12) Tng thch hp l g? V sao cc php ton hp, giao, tr i hi cc quan h
tham gia vo php ton phi tng thch hp?
13) Hy gii thch cc kiu truy vn cn c vic t li tn cc thuc tnh ch ra
truy vn mt cch r rng.
14) Hy nu cc kiu php ton ni khc nhau.
15) Php ton hm l g? N c dng v mc ch no?
16) Cc php ni ngoi khc vi cc php ni trong nh th no? Php hp ngoi
khc vi php hp nh th no?

V.3- Bi tp
1) Chuyn i cc lc ER ca cc bi tp 1, 2 chng II thnh lc c
s d liu quan h.
2) Cho lc c s d liu Thvin:
SACH(Msch, Tnsch, TnNXB)
SACH_TACGIA(Masach, TnTG)
84

NHAXUATBAN(TnNXB, ach, inthoi)
SACH_BANSAO(Msch, Mnhnh, Slngbnsao)
NHANH_THUVIEN(Mnhanh, Tnnhnh, ach)
SACH_MUON(Msch, Mnhnh, Sth, Ngymn, Ngytr)
NGUOIMUON(Sth, Tn, ach, inthoi)
Hy vit cc biu thc quan h cho cc truy vn sau y trn c s d liu
Thvin:
1. C bao nhiu bn sao ca cun sch The Lost Tribe c trong nhnh th
vin c tn l Shapstown.
2. C bao nhiu bn sao ca cun sch The Lost Tribe c trong mi nhnh
th vin.
3. a ra tn ca tt c ngi mun cha mn cun sch no.
4. Vi mi cun sch c mn ra t nhnh th vin Shapstown c ngy
tr l ngy hm nay, hy a ra Tn sch, Tn ngi mn v a ch
ngi mn.
5. Vi mi th vin nhnh, hy a ra tn nhnh th vin v tng s sch
c mn ra t nhnh ny.
6. a ra tn, a ch v s cc sch do ngi ny mn vi nhng ngi
mn nhiu hn 5 cun sch.
7. Vi mi cun sch c tc gi (hoc ng tc gi) l Stephen King, hy
a ra tn sch v s lng cc bn sao c ti nhnh th vin c tn l
Central.
3) Cho c s d liu CNGTY gm cc lc :
NHNVIN(M sNV, Hm, Tn, Ngysinh, Giitnh, ach, Lng,
MsNGS, M sV)
NV(MsV, TnV, MsNQL, Ngybtu)
DN(MsDA, TnDA, aimDA, MsV)
PHTHUC(MsNV, TnPT, Ngy sinh, Giitnh, Quanh)
85
NHNVIN_DN(MsNV, MsDA, Sgi)
NV_AIM(MsV, aim)
Hy vit cc biu thc quan h thc hin cc truy vn sau:
a) Vi mi d n c a im ti H ni, hy lit k m s d n, m s ca
n v kim sot, Tn, a ch v ngy sinh ca ngi qun l n v
b) a ra tn v a ch ca tt c cc nhn vin lm vic cho n v nghin
cu.




c) Tm tn ca cc nhn vin lm vic trn tt c cc d n do n v c m
s 5 kim sot.
d) To ra mt danh sch cc m s d n i vi cc d n c mt nhn vin
hoc mt ngi qun l n v kim sot d n c tn l Nam.
e) a ra tn ca tt c cc nhn vin c nhiu hn hoc bng 2 ngi ph
thuc.
f) a ra cc nhn vin khng c ngi ph thuc.
g) a ra tn ca nhng ngi qun l c t nht l mt ngi ph thuc.

86

Chng IV- PH THUC HM V CHUN HA C S
D LIU QUAN H, CC THUT TON
THIT K C S D LIU QUAN H
Trong chng ny chng ta s tho lun v mt s vn l thuyt c
pht trin nhm mc ch chn c lc quan h tt, ngha l o c mt
cch hnh thc v sao tp hp cc thuc tnh ny nhm vo trong cc lc quan
h th tt hn nhm kia. Chng ta c th ni n tnh tt ca cc lc quan h
hai mc: mc th nht l mc lgic, mc th hai l mc ci t. Mc th nht
lin quan n vic cc ngi s dng th hin cc lc quan h v ngha ca
cc thuc tnh ca chng nh th no. Mc th hai lin quan n vic cc b trong
mt quan h c s c lu tr v cp nht nh th no.
Vic thit k c s d liu c th c thc hin bng cch s dng hai gii
php: di ln (bottom-up) hoc trn xung (top-down). Phng php thit k di
ln xem cc mi lin kt c bn gia cc thuc tnh ring r nh l im xut pht
v s dng chng xy dng nn cc quan h. Gii php ny cn c tn gi l
thit k bng tng hp (design by synthesis). Ngc li, phng php thit k trn
xung, cn gi l thit k bng phn tch (design by analyse) bt u t mt s cc
nhm thuc tnh trong cc quan h nhn c t thit k quan nim v cc hot
ng chuyn i. Sau vic thit k bng phn tch c p dng i vi cc
quan h mt cch ring r v tp th dn n vic tch cc quan h cho n khi t
c tnh cht mong mun.
I- Cc nguyn tc thit k lc quan h
I.1- Ng ngha ca cc thuc tnh quan h
Khi chng ta nhm cc thuc tnh to nn mt lc quan h, ta gi thit
rng c mt ngha no gn vi cc thuc tnh. ngha ny, cn gi l ng
ngha, ch ra vic hiu cc gi tr thuc tnh lu gi trong cc b ca mt quan h
nh th no. Ni cch khc, cc gi tr thuc tnh trong mt b lin h vi nhau nh
th no. Nu vic thit k khi nim c lm mt cch cn thn, sau l mt
chuyn i sang cc quan h th hu ht ng ngha c gii thch v thit k kt
qu c mt ngha r rng. Ni chung, vic gii thch ng ngha ca quan h cng
87
d dng th vic thit k lc quan h cng tt. Mt v d v thit k lc
quan h tt l lc c s d liu CNG TY. Trong lc , cc thuc tnh
u c ngha r rng, khng c tnh mp m. Nguyn tc sau s h tr cho vic
thit k lc quan h.
Nguyn tc 1: Thit k mt lc quan h sao cho d gii thch ngha ca
n. ng t hp cc thuc tnh t nhiu kiu thc th v kiu lin kt vo mt quan
h n. Mt cch trc quan, nu mt lc quan h tng ng vi mt kiu thc
th hoc mt kiu lin kt th ngha tr nn r rng. Ngc li, mt quan h
tng ng vi mt hn hp cc thc th v lin kt th ngha tr nn khng r
rng.
I.2- Thng tin d tha trong cc b v s d thng cp nht
Mt mc tiu ca thit k lc l lm ti thiu khng gian lu tr cc quan
h c s. Cc thuc tnh c nhm vo trong cc lc quan h c mt nh
hng ng k n khng gian lu tr. Nu cng mt thng tin c lu gi nhiu
ln trong c s d liu th ta gi l d tha thng tin v iu s lm lng ph
khng gian nh. V d, gi s ta c bng c s sau y:
NHNVIN_NV
MsNV Hm Tn Ngy sinh ach MsV TnV MsNQL
NV001 L Vn 12/02/79 H ni 5 Nghincu NV002
NV002 Trn c Nam 14/02/66 H ni 5 Nghincu NV002
NV010 Hong Thanh 05/08/79 Ngh an 4 Hnhchnh NV014
NV014 Phm Bng 26/06/52 Bc ninh 4 Hnhchnh NV014
NV016 Nguyn Sn 14/08/73 H nam 5 Nghincu NV002
NV018 V Hng Giang 26/03/83 Nam nh 5 Nghincu NV002
NV025 Trn L Hoa 15/03/80 Ph th 4 Hnhchnh NV014
NV061 Hong Gip 02/05/47 H tnh 1 Lnho NV061
y c s d tha thng tin. Nu mt n v c nhiu nhn vin lm vic th
thng tin v n v (M s, Tn n v, M s ngi qun l) c lu gi nhiu
88
ln trong bng. So vi vic dng hai bng NHNVIN v NV ring r nh
trong lc CNG TY, vic s dng bng ny lm lng ph khng gian nh.
Ngoi vic lng ph khng gian nh n cn dn n mt vn nghim trng
l s d thng cp nht. D thng cp nht bao gm: D thng Chn, d thng
Xo, d thng Sa i. Nhng d thng cp nht ny s a vo c s d liu
nhng thng tin l v lm cho c s d liu mt tnh ng n.
D thng Chn: Gy ra kh khn khi chn cc b gi tr vo bng hoc dn
n vi phm rng buc. V d:
chn mt b gi tr cho mt nhn vin mi vo bng
NHNVIN_NV ngoi cc thng tin v nhn vin, ta phi a vo cc thng
tin v n v m anh ta lm vic hoc cc gi tr null (nu nhn vin khng lm
vic cho n v no c). Cc thng tin v n v phi c a vo mt cch ng
n, ph hp vi cc thng tin ca n v trong cc b khc. Trong lc , vi
lc c s d liu CNGTY chng ta khng phi lo lng g, v cc thng tin
v mt n v ch c lu tr mt ln.
Rt kh chn mt n v mi vo quan h NHNVIN_NV nu n v
khng c nhn vin no lm vic. Cch gii quyt duy nht l in cc gi tr
null vo cc thuc tnh ca nhn vin. iu lm ny sinh vn v rng buc
bi v MsNV l kha chnh ca quan h.
D thng Xa: Gy ra vic mt thng tin khi xa. V d khi ta xa mt b gi
tr trong bng NHNVIN_NV. Nu nhn vin tng ng vi b gi tr l
ngi cui cng lm vic cho n v th php xa s ko theo vic lm mt thng
tin v n v.
D thng Sa i: Gy ra vic sa i hng lot khi ta mun sa i mt gi
tr trong mt b no . V d, ta mun sa gi tr ca thuc tnh MsNQL ca
n v 5. iu ko theo ta phi sa gi tr ca thuc tnh ny trong tt c cc b
ng vi n v 5. Da trn cc d thng trn, chng ta c th pht biu nguyn
tc sau:
Nguyn tc 2: Thit k cc lc quan h c s sao cho khng sinh ra
nhng d thng cp nht trong cc quan h. Nu c xut hin nhng d thng cp
nht th phi ghi chp li mt cch r rng v phi m bo rng cc chng trnh
cp nht d liu s thc hin mt cch ng n.
89
I.3- Cc gi tr khng xc nh trong cc b
Trong mt s thit k lc , chng ta c th nhm nhiu thuc tnh vi nhau
vo mt quan h bo. Nu nhiu thuc tnh khng thch hp cho mi b trong
mt quan h, chng ta s kt thc vi nhiu gi tr null trong cc b . iu c
th lm tng khng gian mc lu tr v c th dn n vn v hiu ngha
ca cc thuc tnh. Vic ch ra cc php ni mc lgic cng s gp kh khn. Mt
vn na vi cc gi tr null l cc hm nhm nh COUNT, SUM khng m
c i vi chng. Hn na, cc gi tr null c th nhiu cch gii thch, chng
hn nh thuc tnh khng p dng c cho b ny, gi tr ca thuc tnh cho b
ny l khng c hoc gi tr cho thuc tnh l c nhng vng mt. Tm li, cc gi
tr null c nhiu ngha khc nhau .
Nguyn tc 3: Trnh cng xa cng tt vic t vo trong cc quan h c s
nhng thuc tnh m cc gi tr ca chng thng xuyn l null. Nu khng th
trnh c cc gi tr null th phi m bo rng chng ch p dng trong cc
trng hp c bit v khng p dng cho mt s ln cc b trong quan h.
I.4- Sinh ra cc b gi
Nhiu khi chng ta a vo c s d liu nhng quan h khng ng, vic p
dng cc php ton (nht l cc php ni) s sinh ra cc b gi tr khng ng, gi
l cc b gi. V d, xt hai lc quan h:
NV_ (Tn, aimDA)
NV_DA1(M sNV, M sDA, Sgi, TnDA, aimDA)
NV_ Tn aimDA
Vn Hni
Vn Namnh
Sn Bcninh
Giang Hni

NV_DA1 MsNV MsDA Sgi TnDA aimDA
NV001 1 32 DA01 Hni
90
NV001 2 7 DA02 Namnh
NV016 3 40 DA03 Bcninh
NV018 1 20 DA01 Hni
By gi ta ni hai quan h trn vi nhau, ta c quan h
MsNV MsDA Sgi TnDA aim Tn
NV001 1 32 DA01 Hni Vn

*
NV001 1 32 DA01 Hni Giang
NV001 2 7 DA02 Namnh Vn
NV016 3 40 DA03 Bcninh Sn

*
NV018 1 20 DA01 Hni Vn
NV018 1 20 DA01 Hni Giang
Ta thy cc dng nh du * l cc b gi. y l cc b gi tr khng c
trn thc t.
Nguyn tc 4: Thit k cc lc quan h sao cho chng c th c ni vi
iu kin bng trn cc thuc tnh l kho chnh hoc kho ngoi theo cch m
bo khng sinh ra cc b gi. ng c cc quan h cha cc thuc tnh ni khc
vi cc t hp kho chnh-kho ngoi. Nu khng trnh c nhng quan h nh
vy th ng ni chng trn cc thuc tnh , bi v cc php ni c th sinh ra cc
b gi.
II- Cc ph thuc hm
Khi nim c bn nht trong thit k lc quan h l khi nim ph thuc
hm. Trong phn ny chng ta s nh ngha hnh thc khi nim ny v cch s
dng n nh ngha cc dng chun cho cc lc quan h.
II.1- nh ngha ph thuc hm
Mt ph thuc hm l mt rng buc gia hai nhm thuc tnh ca mt c s
d liu. Gi s rng lc c s d liu ca ta c n thuc tnh A
1
,A
2
,,A
n
v ta
91
hy ngh rng ton b c s d liu c m t bng mt lc quan h chung
R={A
1
, A
2
,., A
n
}. ng nn ngh rng c s d liu ca chng ta s c lu tr
trong mt bng chung, chng ta ch s dng khi nim ny pht trin l thuyt
hnh thc v s ph thuc d liu. Gi s X v Y l hai tp con ca R.
Mt ph thuc hm, k hiu l X Y, gia hai tp thuc tnh X v Y ch ra
mt rng buc trn cc b c th c to nn mt trng thi quan h r ca R. Rng
buc l: vi hai b bt k t
1
v t
2
trong r , nu c t
1
[X] = t
2
[X] th cng phi c
t
1
[Y] = t
2
[Y]. iu c ngha l cc gi tr ca thnh phn Y ca mt b trong R
ph thuc vo, hoc c xc nh bi, cc gi tr ca thnh phn X. Ni cch
khc, cc gi tr ca thnh phn X ca mt b xc nh mt cch duy nht cc gi
tr ca thnh phn Y. Chng ta cng ni rng c mt ph thuc hm t X vo Y
hoc Y ph thuc hm vo X. Ph thuc hm c vit tt l FD (functional
dependency). Tp thuc tnh X c gi l v tri ca FD, tp thuc tnh Y c
gi l v phi ca FD.
Nh vy, X xc nh hm Y trong lc quan h R khi v ch khi nu hai b
ca r(R) bng nhau trn cc gi tr ca X th chng nht thit phi bng nhau trn
cc gi tr ca Y. Ta c cc nhn xt sau:
- Nu c mt rng buc trn cc trng thi ca R l ch c mt b gi tr duy
nht ca X trong mi th hin quan h r(R) th iu ko theo X Y vi
mi tp con cc thuc tnh Y ca R.
- Nu X Y th khng th ni g v Y X.
Mt ph thuc hm l mt tnh cht ng ngha ca cc thuc tnh. Nhng
ngi thit k c s d liu s dng hiu bit ca h v ngha ca cc thuc tnh
ca R ch ra cc ph thuc hm c th c trn mi trng thi quan h ca r(R)
ca R. Khi ng ngha ca hai tp thuc tnh trong R ch ra rng c th c mt ph
thuc hm, chng ta s c t ph thuc hm nh mt rng buc. Cc trng thi
quan h r(R) tho mn cc rng buc ph thuc hm c gi l cc trng thi hp
php ca R, bi v chng tun theo cc rng buc ph thuc hm. Nh vy, vic s
dng ch yu ca cc ph thuc hm l dng m t mt lc quan h R bng
vic ch ra cc rng buc trn cc thuc tnh phi tho mn mi thi im.
Mt ph thuc hm l mt tnh cht ca lc quan h R ch khng phi l
tnh cht ca mt trng thi hp php r ca R. V vy, mt ph thuc hm khng
92
th c pht hin mt cch t ng t mt trng thi r m phi do mt ngi hiu
bit ng ngha ca cc thuc tnh xc nh mt cch r rng. V d, ta c quan h
sau
DY Giovin Mnhc Tiliu
AA Mnhc1 XX
AA Mnhc2 YY
BB Mnhc3 ZZ
CC Mnhc4 TT
Mi nhn qua, chng ta c th ni c mt ph thuc hm Tiliu Mnhc,
tuy nhin chng ta khng th khng nh c v iu ch ng vi trng thi
quan h ny, bit u trong trng thi quan h khc c th c hai mn hc khc
nhau s dng cng mt ti liu tham kho. Vi mt trng thi c th, chng ta ch
c th khng nh l khng c mt ph thuc hm gia nhm thuc tnh ny v
nhm thuc tnh khc. lm iu chng ta ch cn a ra mt phn v d.
Chng hn, trong quan h trn chng ta c th khng nh rng khng c ph
thuc hm gia Giovin v Mnhc bng cch ch ra v d l AA dy hai mn hc
Mnhc1 v Mnhc2 vy Gio vin khng th xc nh duy nht Mn hc.
biu din cc ph thuc hm trong mt lc quan h, chng ta s dng
khi nim s ph thuc hm. Mi FD c biu din bng mt ng nm
ngang. Cc thuc tnh v tri ca FD c ni vi ng biu din FD bng cc
ng thng ng, cc thuc tnh v phi ca FD c ni vi ng biu din
FD bng mi tn ch n cc thuc tnh.
V d: Ta c lc quan h
MN(Sth, Mssch, Tnngimn, Tnsch, Ngymn)
Vi cc ph thuc hm:
Sth Tnngimn
Mssch Tnsch
Sth, Mssch Ngymn
C s ph thuc hm nh sau:
93
MN

II.2- Cc quy tc suy din i vi cc ph thuc hm
Chng ta k hiu F l tp cc ph thuc hm c xc nh trn mt lc
quan h R. Mt ph thuc hm X Y c gi l suy din c t mt tp cc
ph thuc hm F c xc nh trn R nu X Y ng trong mi trng thi quan
h r l m rng hp php ca R, ngha l mi khi r lm tho mn mi ph thuc
hm trong F, X Y cng ng trong r. Tp hp tt c cc ph thuc hm suy din
c t F c gi l bao ng ca F v c k hiu l F
+
. xc nh mt cch
suy din cc ph thuc hm c h thng, chng ta phi pht hin mt tp hp cc
quy tc suy din. Tp quy tc ny s c s dng suy din cc ph thuc hm
mi t mt tp cc ph thuc hm cho trc. Ta s dng k hiu F |= X Y k
hiu ph thuc hm X Y c suy din t tp cc ph thuc hm F. cho tin,
ta vit tt ph thuc hm c dng {X,Y} Z thnh XY Z ( ngha l ta ni cc
bin v b du ngoc nhn i). C 6 quy tc suy din i vi cc ph thuc hm:
QT1 (quy tc phn x) : Nu X Y th X Y
QT2 (quy tc tng) : { X Y } |= XZ YZ
QT3 (quy tc bc cu) : { X Y, Y Z } |= X Y
QT4 (quy tc chiu) : { X YZ } |= X Y v X Z
QT5 (quy tc hp) : { X Y , X Z } |= X YZ
QT6 (quy tc ta bc cu) : { X Y, WY Z } |= WX Z
Quy tc phn x pht biu rng mt tp hp cc thuc tnh lun lun xc nh
chnh n hoc mt tp con bt k ca n. V QT1 to ra cc ph thuc lun lun
ng, nhng ph thuc nh vy c gi l tm thng. Mt cch hnh thc, mt
ph thuc hm X Y l tm thng nu X Y, ngc li, n c gi l khng
tm thng. Quy tc tng ni rng vic thm cng mt tp thuc tnh vo c hai v
Sth M s
sch
Tn ngi
mn
Tn sch Ngymn
94
ca mt ph thuc hm s to ra mt ph thuc hm ng n. Theo quy tc 3, cc
ph thuc hm l bc cu. Quy tc chiu (QT4) ni rng chng ta c th b bt cc
thuc tnh ra khi v phi ca ph thuc hm. Vic p dng nhiu ln quy tc ny
c th tch ph thuc hm X {A
1
, A
2
,, A
n
} thnh mt tp hp ph thuc hm
{ X A
1
, X A
2
, ..., X A
n
}. Quy tc hp cho php chng ta lm ngc li, ta
c th gp cc ph thuc hm { X A
1
, XA
2
, ..., X A
n
} thnh mt ph thuc
hm n X {A
1
, A
2
, ..., A
n
}.
C th chng minh cc quy tc suy din trn mt cch trc tip hoc bng
phn chng da trn nh ngha ca ph thuc hm. chng minh phn chng, ta
gi thit mt quy tc l khng ng v ch ra rng iu l khng th. Sau y l
chng minh cc quy tc.
Quy tc 1:
Gi s rng X Y v hai b t
1
v t
2
trong mt th hin quan h r ca R sao
cho t
1
[X] = t
2
[X]. Khi t
1
[Y] = t
2
[Y] bi v X Y, nh vy X Y phi xy ra
trong r.
Quy tc 2: (chng minh phn chng)
Gi s rng XY ng trong mt th hin quan h r ca R nhng XZ YZ
khng ng. Khi phi c hai b t
1
v t
2
trong r sao cho:
(1) t
1
[X] = t
2
[X],
(2) t
1
[Y] = t
2
[Y],
(3) t
1
[XZ] = t
2
[XZ] v
(4) t
1
[YZ] = t
2
[YZ]. iu l khng th bi v t (1) v (3) chng ta suy ra
(5) t
1
[Z] = t
2
[Z], v t (2) v (5) ta suy ra t
1
[YZ] = t
2
[YZ], mu thun vi (4).
Quy tc 3: Gi s rng
(1) X Y v (2) Y Z c hai ng trong mt quan h r. Khi vi mi b t
1

v t
2
trong r sao cho t
1
[X] = t
2
[X] ta phi c (3) t
1
[Y] = t
2
[Y] theo gi thit (1). Nh
vy chng ta cng phi c (4) t
1
[Z] = t
2
[Z] theo (3) v gi thit (2). Vy X Z phi
ng trong r.
95
Chng ta c th chng minh cc quy tc t quy tc 4 n quy tc 6 theo
phng php trn. Tuy nhin ta c th li dng cc quy tc c chng minh l
ng chng minh chng. Sau y ta chng minh theo cch .
Quy tc 4:
1. X YZ (cho trc)
2. YZ Y (s dng QT1 v YZ Y)
3. X Y (s dng QT3 trn 1. v 2.)
Quy tc 5:
1. X Y (cho trc)
2. X Z (cho trc)
3. X YX (s dng QT2 trn 1. bng cch thm vo c hai v X, v XX=X)
4. YX YZ (s dng QT2 trn 2. bng cch thm vo c hai v Y)
5. XYZ (s dng QT3 trn 3. v 4.)
Quy tc 6:
1. XY (cho trc )
2. WYZ (cho trc)
3. WXWY (s dng QT2 trn 1. bng cch thm vo c hai v W)
4. WX Y (s dng QT3 trn 3. v 2.)
Amstrong chng minh rng cc quy tc suy din t QT1 n QT3 l ng
v y . ng c ngha l cho trc mt tp cc ph thuc hm F trn mt lc
quan h R , bt k mt ph thuc hm no suy din c bng cch p dng cc
quy tc t QT1 n QT3 cng ng trong mi trng thi quan h r ca R tho mn
cc ph thuc hm trong F. y c ngha l vic s dng cc quy tc t QT1
n QT3 lp li nhiu ln suy din cc ph thuc hm cho n khi khng cn
suy din c na s cho kt qu l mt tp hp y cc ph thuc hm c th
c suy din t F. Ni cch khc, tp hp cc ph thuc hm F
+
(bao ng ca F)
c th xc nh c t F bng cch p dng cc quy tc suy din t QT1 n QT3.
Cc quy tc t QT1 n QT3 c gi l cc quy tc suy din Amstrong.
96
Thng thng, nhng ngi thit k c s d liu u tin ch ra mt tp cc
ph thuc hm d xc nh c nh ng ngha ca cc thuc tnh ca R. Sau ,
s dng cc quy tc Amstrong suy din cc ph thuc hm b sung. Mt cch
c h thng, xc nh tt c cc ph thuc hm b sung l u tin hy xc nh
mi tp thuc tnh X xut hin v tri ca mt ph thuc hm no y trong F v
sau xc nh tp hp tt c cc thuc tnh ph thuc vo X. Nh vy, vi mi
tp thuc tnh X, chng ta xc nh tp X
+
cc thuc tnh ph thuc hm vo X da
trn F. X
+
c gi l bao ng ca X di F. Thut ton xc nh X
+
nh sau:
Thut ton 4.1: ( xc nh X
+
, bao ng ca X di F)
X
+
= X;
Repeat
Old X
+
= X
+
;
vi mi ph thuc hm Y Z trong F thc hin
nu X
+
Y th X
+
= X
+
Z;
until ( X
+
= Old X
+
);
V d: Xt lc quan h
R = {MsNV, HtnNV, MsDA, TnDA, aimDA, Sgi}
v tp ph thuc hm F = {MsNV HtnNV,
MsDA TnDA, aimDA,
{MsNV, MsDA} S gi}
p dng thut ton 4.1 ta c:
{MsNV}
+
= { MsNV, HtnNV}
{MsDA }
+
= { MsDA, TnDA, aimDA}
{MsNV, MsDA}
+
= {MsNV, HtnNV, MsDA, TnDA, Sgi}
Bao ng v kha: rng nu X
+
l l tp tt c cc thuc tnh ca quan
h th c ngha l X xc nh hm cc thuc tnh cn li, hay ni cch khc X l
mt siu kha. Chng ta c th kim tra xem mt tp thuc tnh X c phi l kha
ca mt quan h bng cch trc tin xem X
+
c cha tt c cc thuc tnh ca
quan h hay khng sau kim tra khng c mt tp con S no c lp t X bng
97
cch loi b mt thuc tnh ca X tha mn S
+
cha tt c cc thuc tnh ca quan
h (ngha l X l siu kha ti thiu). V d:
Xt lc quan h R( A,B,C,D,E,F) v tp ph thuc hm
F ={ A,B F ; A C,D; B E }
Ta c {A,B}
+
= {A,B,C,D,E,F}, A
+
= {A,C,D}, B
+
= {B,E} , vy AB l kha
ca quan h.
II.3- S tng ng ca cc tp ph thuc hm
Trong phn ny chng ta tho lun v s tng ng ca hai tp ph thuc
hm. Mt tp hp cc ph thuc hm E c ph bi mt tp cc ph thuc hm F
- hoc F ph E - nu mi mt ph thuc hm trong E u trong F
+
,iu c
ngha l mi ph thuc hm trong E c th suy din c t F. Hai tp ph thuc
hm E v F l tng ng nu E
+
= F
+
. Nh vy tng ng c ngha l mi
ph thuc hm trong E c th suy din c t F v mi ph thuc hm trong F c
th suy din c t E.
Chng ta c th xc nh xem F c ph E hay khng bng cch tnh X
+
i vi
F i vi mi thuc hm XY trong E v sau kim tra xem X
+
ny c cc
thuc tnh trong Y hay khng (ngha l X
+
Y). Nu iu xy ra vi mi ph
thuc hm trong E, th F ph E. Chng ta xc nh xem E v F c tng ng hay
khng bng cch kim tra E ph F v F ph E.
V d : Xt hai tp ph thuc hm
F = {A C, AC D, EAD, E H }
E = { A CD, E AH }
Ta chng minh F ph E:
Tm bao ng ca cc v tri ca cc ph thuc hm trong E theo F. p dng
thut ton 4.1 trn, ta c:
{A}
+
= { A, C, D };
{E}
+
= {E, A,D, H}
ta thy cc bao ng ny cha cc v phi tng ng. T suy ra F ph E.
Ta chng minh E ph F:
Tm bao ng ca cc v tri ca cc ph thuc hm trong F theo E. Ta c
98
{A}
+
={A,C,D},
{AC}+ = { A,C,D},
{E}+ = {E,A,H}, ta thy cc bao ng ny cha cc v phi tng
ng. T suy ra E ph F.
Tm li E tng ng vi F.
II.4- Cc tp ph thuc hm ti thiu
Mt tp ph thuc hm l ti thiu nu n tho mn cc iu kin sau y:
1. V phi ca cc ph thuc hm trong F ch c mt thuc tnh.
2. Chng ta khng th thay th bt k mt ph thuc hm X A trong F bng
ph thuc hm YA, trong Y l tp con ng ca X m vn cn l mt tp ph
thuc hm tng ng vi F.
3. Chng ta khng th b i bt k ph thuc hm no ra khi F m vn c
mt tp ph thuc hm tng ng vi F.
Chng ta c th ngh v tp ti thiu cc ph thuc hm nh l mt tp hp
dng chun khng c s d tha. iu kin 1 m bo rng mi ph thuc hm l
dng chnh tc vi mt thuc tnh v phi. iu kin 2 v 3 m bo rng
khng c s d tha trong cc ph thuc hoc do c cc thuc tnh d tha v
tri ca ph thuc, hoc do c mt ph thuc c th c suy din t cc ph thuc
khc trong F.
Mt ph ti thiu ca mt tp ph thuc hm F l mt tp ti thiu cc ph
thuc hm F
min
tng ng vi F. Thng c rt nhiu cc ph ti thiu cho mt
tp cc ph thuc hm. Chng ta lun lun c th tm c t nht l mt ph ti
thiu G cho mt tp cc ph thuc hm F bt k theo thut ton 4.2 sau y:
Thut ton 4.2: ( Tm ph ti thiu G cho F)
1. t G := F;
2. Thay th mi ph thuc hm X {A
1
, A
2
, ..., A
n
} trong G bng n ph
thuc hm X A
1
, X A
2
, , X A
n
.
3. Vi mi ph thuc hm X A trong G,
vi mi thuc tnh B l mt phn t ca X
99
nu ((G (X A) ((X {B}) A) l tng ng vi G
th thay th XA bng (X {B})A trong G
4. Vi mi ph thuc hm XA cn li trong G
nu (G {X A}) l tng ng vi G
th loi b X A ra khi G
V d p dng : Tm ph ti thiu cho tp ph thuc hm:
{A B, A C, B A, B C, C A, C B}
p dng thut ton trn, chng ta c th tm c cc ph ti thiu sau:
1) Do AB v BC nn AC l tha. Do CB v BA nn CA l tha.
B nhng ph thuc hm tha i, ta c {AB, BA, BC, CB} l mt
ph ti thiu.
2) Do AB v BC nn AC l tha. Do c BC v CA nn BA l tha.
Do c CA v AB nn CB l tha. B nhng ph thuc hm tha i, ta
nhn c mt ph ti thiu khc l {AB, BC, CA}
III- Cc dng chun da trn kha chnh
Sau khi nghin cu cc ph thuc hm v mt s tnh cht ca chng, by
gi chng ta s s dng chng nh thng tin v ng ngha ca cc lc quan h.
Ta gi s rng mi mt quan h c cho trc mt tp cc ph thuc hm v mi
quan h c mt kho chnh. Trong phn ny chng ta s nghin cu cc dng chun
v qu trnh chun ho cc lc quan h.
III.1- Nhp mn v chun ho
Qu trnh chun ho (do Codd ngh 1972) ly mt lc quan h v thc
hin mt lot cc kim tra xc nhn n c tho mn mt dng chun no hay
khng. Qu trnh ny c thc hin theo phng php trn xung bng vic nh
gi mi quan h vi tiu chun ca cc dng chun v tch cc quan h nu cn.
Qu trnh ny c th xem nh l vic thit k quan h bng phn tch. Lc u,
Codd ngh ba dng chun gi l dng chun 1, dng chun 2 v dng chun 3.
Mt nh ngha mnh hn cho dng chun 3 gi l dng chun Boyce-Codd do
Boyce v Codd ngh mun hn. Tt c cc dng chun ny da trn cc ph
100
thuc hm gia cc thuc tnh ca mt quan h. Sau , dng chun 4 (4NF) v
dng chun 5 (5NF) c ngh da trn cc ph thuc hm a tr v cc ph
thuc hm ni.
Chun ho d liu c th c xem nh mt qu trnh phn tch cc lc
quan h cho trc da trn cc ph thuc hm v cc kho chnh ca chng t
n cc tnh cht mong mun:
(1) Cc tiu s d tha v
(2) Cc tiu cc php cp nht bt thng.
Cc lc quan h khng tho mn cc kim tra dng chun s c tch ra
thnh cc lc quan h nh hn tho mn cc kim tra v c cc tnh cht mong
mun. Nh vy, th tc chun ho cung cp cho nhng ngi thit k c s d
liu:
- Mt c cu hnh thc phn tch cc lc quan h da trn cc kho ca
n v cc ph thuc hm gia cc thuc tnh ca n.
- Mt lot cc kim tra dng chun c th thc hin trn cc lc quan h
ring r sao cho c s d liu quan h c th c chun ho n mt mc
cn thit.
Dng chun ca mt quan h lin quan n iu kin dng chun cao nht m
n tho mn. Cc dng chun khi c xem xt c lp vi cc s kin khc khng
m bo mt thit k c s d liu tt. Ni chung, vic xc minh ring bit tng
lc quan h dng chun ny dng chun n l cha . Tt hn l qu trnh
chun ho thng qua php tch phi khng nh mt vi tnh cht h tr m tt c
cc lc quan h phi c. Chng gm hai tnh cht sau:
- Tnh cht ni khng mt mt (hoc ni khng ph thm), n m bo rng vn
to ra cc b gi khng xut hin i vi cc lc quan h c to ra
sau khi tch.
- Tnh cht bo ton s ph thuc, n m bo rng tng ph thuc hm s
c biu hin trong cc quan h ring r nhn c sau khi tch.
Tnh cht ni khng mt mt l rt quan trng, phi t c bng mi gi,
cn tnh cht bo ton ph thuc th cng rt mong mun nhng i khi c th hy
sinh.
101
Trc khi nh ngha cc dng chun chng ta xem li nh ngha cc kha
ca mt quan h. Mt siu kha (superkey) ca mt lc quan h R = {A
1
, A
2
,
.., A
n
} l mt tp con S cc thuc tnh ca R, S _ R, c tnh cht l khng c hai b
t
1
, t
2
trong mt trng thi quan h hp php r no ca R m t
1
[S] = t
2
[S]. Mt kha
K l mt siu kha c tnh cht l nu b i bt k thuc tnh no ra khi K th K
khng cn l siu kha na. iu c ngha l kha l mt siu kha ti thiu.
Nu mt lc quan h c nhiu hn mt kha th cc kha c gi l cc
kha d tuyn. Mt trong nhng kha d tuyn s c ch nh lm kha chnh v
cc kha cn li c gi l cc kha ph (secondary key). Mt lc quan h
phi c mt kha chnh. Mt thuc tnh ca mt lc quan h R c gi l mt
thuc tnh kha ca R nu n l mt thnh phn ca kha chnh ca R. Mt thuc
tnh c gi l thuc tnh khng kha nu n khng phi l mt thuc tnh kha.
III.2- Dng chun 1
Mt quan h c gi l dng chun 1 (1NF) nu min gi tr ca mt thuc
tnh ch cha cc gi tr nguyn t (n, khng phn chia c) v gi tr ca mi
thuc tnh trong mt b phi l mt gi tr n ly t min gi tr ca thuc tnh .
Nh vy, 1NF khng cho php quan h c cc thuc tnh a tr hoc c cc nhm
thuc tnh lp (quan h trong quan h). N ch cho php cc gi tr ca cc thuc
tnh l nguyn t.
V d, xt cc quan h NV v NHNVIN_DN nh hnh v di
y. Cc quan h ny khng tha mn iu kin 1NF. Quan h NV cha thuc
tnh a tr aim, quan h NHNVIN_DN cha nhm cc thuc tnh lp
(Tnnhnvin, Sgi).
NV MsV TnV M sNQL aim
5 Nghincu NV002 Namnh, Hni,Bcninh
4 Hnhchnh NV014 Hni
1 Lnho NV061 Hni

NHNVIN_DN MsDA TnDA Tnnhnvin Sgi
1 DA01 Vn 15
102
Nam 20
2 DA02 Nam
Thanh
Bng
10
12
28
3 DA03 Thanh 20
t n dng chun 1 i vi cc quan h trn chng ta dng phng
php sau:
Loi b cc thuc tnh vi phm dng chun 1 v t chng vo mt bng ring
cng vi kho chnh ca quan h ban u. Kho chnh ca bng ny l mt t hp
ca kho chnh ca quan h ban u v thuc tnh a tr hoc kho b phn ca
nhm lp.
Cc thuc tnh cn li lp thnh mt quan h vi kha chnh l kha chnh ban
u.
p dng : Lc quan h NV trn s c tch thnh hai:
NV (M sV, TnV, M sNQL)
NV_AIM ( MsV, aim)
Lc quan h NHNVIN_DN cng c tch thnh hai:
DN (MsDA, TnDA)
NHNVIN_DN(MsDA, Tnnhnvin, Sgi)
III.3- Dng chun 2
Dng chun 2 (2NF) da trn khi nim ph thuc hm y . Mt ph
thuc hm X Y l mt ph thuc hm y nu loi b bt k thuc tnh A
no ra khi X th ph thuc hm khng cn ng na. iu c ngha l, vi
thuc tnh A bt k, A e X, (X {A}) khng xc nh Y. Mt ph thuc hm X
Y l ph thuc b phn nu c th b mt thuc tnh Ae X, ra khi X ph thuc
hm vn ng, iu c ngha l vi Ae X, (X {A}) Y.
V d, xt lc quan h
NHNVIN_DN(MsNV, MsDA, Sgi, HtnNV, TnDA, aimDA)
103
MsNV, MsDA Sgi l ph thuc hm y
MsNV, MsDA HtnNV l ph thuc hm b phn, bi v c ph
thuc hm
MsNV HtnNV
Vic kim tra i vi 2NF bao gm vic kim tra i vi cc ph thuc hm
c cc thuc tnh v tri ca n l mt b phn ca kho chnh. Nu kho chnh
cha mt thuc tnh n th khng cn phi kim tra. Mt lc quan h R l
dng chun 2 nu n tha mn dng chun 1 v mi thuc tnh khng kho A
trong R l ph thuc hm y vo kho chnh ca R.
Nu mt quan h khng tho mn iu kin 2NF ta c th chun ho n c
cc quan h 2NF nh sau: Loi b cc thuc tnh khng kho ph thuc vo mt b
phn kho chnh v tch thnh ra mt bng ring, kho chnh ca bng l b phn
kho m chng ph thuc vo. Cc thuc tnh cn li lp thnh mt quan h, kha
chnh ca n l kha chnh ban u.
V d, xt lc quan h:
NHNVIN_DN(MsNV, MsDA, Sgi, HtnNV, TnDA, aimDA)
vi cc ph thuc hm:
MsNV, MsDA Sgi
MsNV HtnNV
MsDATnDA, aimDA
Ta thy y c nhng thuc tnh khng kho ph thuc vo mt b phn ca
kho chnh, nh vy n khng tho mn iu kin 2NF.
p dng phng php chun ho trn, lc c tch thnh cc lc
nh sau:
N_D1(MsDA, TnDA, aimDA)
N_D2(MsNV , HtnNV)
N_D3(MsNV, MsDA, Sgi)
104
III.4- Dng chun 3
Dng chun 3 (3NF) da trn khi nim ph thuc bc cu. Mt ph thuc
hm X Y trong mt lc quan h R l mt ph thuc hm bc cu nu c
mt tp hp thuc tnh Z khng phi l mt kho d tuyn cng khng phi l mt
tp con ca mt kho no v c hai X Z v Z Y u ng. Theo nh ngha
nguyn thu ca Codd, mt lc quan h R l 3NF nu n tho mn 2NF v
khng c thuc tnh khng kho no ca R l ph thuc bc cu vo kho chnh.
Nu mt lc quan h khng tho mn iu kin 3NF, ta c th chun ho
n c c cc lc 3NF nh sau: Loi b cc thuc tnh ph thuc bc cu
ra khi quan h v tch chng thnh mt quan h ring c kho chnh l thuc tnh
bc cu. Cc thuc tnh cn li lp thnh mt quan h c kha chnh l quan h ban
u.
V d: Xt lc quan h
NHNVIN_NV(HtnNV, MsNV, Ngysinh, ach, MsV, TnV,
MsNQL)
Vi cc ph thuc hm:
MsNV HtnNV, Ngy sinh, ach, MsV, TnV, MsNQL
MsDV TnV, M sNQL
Cc thuc tnh TnV, MsNQL ph thuc bc cu vo kho chnh, lc
quan h khng tho mn iu kin 3NF.
p dng phng php chun ho trn, lc c tch ra nh sau:
NV_DV1(HtnNV, MsNV, Ngysinh, ach, MsV)
NV_DV2(MsV, TnV, MsNQL)
III.5- Dng chun Boyce-Codd
Mt lc quan h R c gi l dng chun Boyce-Codd (BCNF) nu n
l dng chun 3NF v khng c cc thuc tnh kha ph thuc hm v thuc tnh
khng kha.
V d: Lc
R (A
1
,A
2
,A
3
,A
4
,A
5
)
105
Vi cc ph thuc hm:
A1,A
2
A
3
,A
4
,A
5

A
4
A
2

Quan h ny vi phm dng chun BCNF bi v c thuc tnh kha (A
2
) ph
thuc hm vo thuc tnh khng kha (A
4
).
Nu mt lc quan h khng tho mn iu kin BCNF, ta c th chun
ho n c c cc lc BCNF nh: Loi b cc thuc tnh kha ph thuc
hm vo thuc tnh khng kha ra khi quan h v tch chng thnh mt quan h
ring c kho chnh l thuc tnh khng kha gy ra ph thuc.
p dng phng php chun ha trn, lc c tch ra nh sau:
R1( A
4
, A
2
)
R2(A
1
, A
4
, A
3
, A
5
)
V d p dng:
Cho lc quan h R = {A,B,C,D,E,F,G,H,I,J} c kha chnh l A,B
Vi tp cc ph thuc hm :
A,B C,D,E,F,G,H,I,J
A E,F,G,H,I,J
F I, J
D B
Do c c ph thuc hm A E,F,G,H,I,J m A l mt b phn ca kha chnh
nn quan h R l vi phm 2NF. Ta tch R thnh R
1
(A,E,F,G,H,I,J) v R
2
(A,B,C,D).
Trong R
1
, do c ph thuc hm F I, J, nn ta c I,J ph thuc bc cu vo kha
chnh, R
1
l quan h vi phm 3NF. Trong R
2
ta c ph thuc hm D B trong
B l mt thuc tnh kha, R
2
vi phm BCNF. Tch R
1
v R
2
ta c:
R
11
( F,I,J) , R
12
( A,E,F,G,H), R
21
(D,B), R
22
( A,D,C)
106
IV- Cc thut ton thit k c s d liu quan h v cc dng chun
cao hn
Nh chng ta tho lun trong u chng IV, c hai cch chnh thit k
c s d liu quan h. Cch th nht l thit k trn-xung (top-down design). y
l cch hay c s dng nht trong thit k ng dng c s d liu thng mi.
N bao gm vic thit k mt lc quan nim trong mt m hnh d liu bc
cao, chng hn nh m hnh EER, sau nh x lc quan nim vo mt tp
quan h s dng cc th tc nh x nh ni n trong chng III. Sau , mi
mt quan h c phn tch da trn cc ph thuc hm v cc kha chnh c
ch nh bng cch p dng cc th tc chun ha nh ni n trong phn III
chng ny loi b cc ph thuc hm b phn v cc ph thuc hm bc cu.
Vic phn tch cc ph thuc khng mong mun cng c th c thc hin trong
qu trnh thit k quan nim bng cch phn tch cc ph thuc hm gia cc thuc
tnh bn trong cc kiu thc th v cc kiu lin kt ngn nga s cn thit c s
chun ha ph thm sau khi vic nh x c thc hin.
Cch th hai l thit k di-ln (bottom-up design), mt k thut tip cn v
nhn nhn vic thit k lc c s d liu quan h mt cch cht ch trn c s
cc ph thuc hm c ch ra trn cc thuc tnh ca c s d liu. Sau khi ngi
thit k ch ra cc ph thuc, ngi ta p dng mt thut ton chun ha tng
hp cc lc quan h. Mi mt lc quan h ring r dng chun 3NF hoc
BCNF hoc dng chun cao hn.
Trong phn ny chng ta ch yu trnh by cch tip cn th hai. Trc tin
chng ta s nh ngha li cc dng chun mt cch tng qut, sau trnh by cc
thut ton chun ha v cc kiu ph thuc khc. Chng ta cng s trnh by chi
tit hn v hai tnh cht cn c l ni khng ph thm (mt mt) v bo ton ph
thuc. Cc thut ton chun ha thng bt u bng vic tng hp mt lc
quan h rt ln, gi l quan h ph qut (universal relation), cha tt c cc thuc
tnh ca c s d liu. Sau chng ta thc hin lp i lp li vic tch
(decomposition) da trn cc ph thuc hm v cc ph thuc khc do ngi thit
k c s d liu ch ra cho n khi khng cn tch c na hoc khng mun tch
na.
107
IV.1- nh ngha tng qut cc dng chun
Ni chung, chng ta mun thit k cc lc ca chng ta sao cho chng
khng cn cc ph thuc b phn v cc ph thuc bc cu bi v cc kiu ph
thuc ny gy ra cc sa i bt thng. Cc bc chun ha thnh 3NF, BCNF
c trnh by trong phn trc loi b cc ph thuc b phn v bc cu da
trn kha chnh. Cc nh ngha ny khng tnh n cc kha d tuyn ca quan h.
Trong phn ny chng ta s a ra cc nh ngha v cc dng chun tng qut hn,
c tnh n tt c cc kha d tuyn. C th, thuc tnh kha c nh ngha li l
mt b phn ca mt kha d tuyn. Cc ph thuc hm b phn, y , bc cu
by gi s c nh ngha i vi tt c cc kha d tuyn ca quan h.
nh ngha dng chun 1: Mt lc quan h R l dng chun 1 (1NF)
nu min gi tr ca cc thuc tnh ca n ch cha cc gi tr nguyn t (n,
khng phn chia c) v gi tr ca mt thuc tnh bt k trong mt b gi tr phi
l mt gi tr n thuc min gi tr ca thuc tnh .
nh ngha dng chun 2: Mt lc quan h R l dng chun 2 (2NF)
nu mi thuc tnh khng kha A trong R khng ph thuc b phn vo mt kha
bt k ca R.
V d: Xt lc quan h
R={A,B,C,D,E,F}
Vi cc ph thuc hm A B,C,D,E,F; B,C A,D,E,F; B F; D E.
Lc trn c hai kha d tuyn l A v {B,C}. Ta chn A lm kha chnh.
Do c ph thuc hm B F nn F ph thuc b phn vo kha {B,C}, lc vi
phm chun 2NF (ch rng, trong nh ngha dng chun da trn kha chnh,
lc ny khng vi phm 2NF).
nh ngha dng chun 3: Mt lc quan h R l dng chun 3 (3NF)
nu khi mt ph thuc hm X A tha mn trong R, th:
1) Hoc X l mt siu kha ca R.
2) Hoc A l mt thuc tnh kha ca R.
V d: Xt lc quan h R v d trn. Gi s n c tch thnh hai lc
:
R1 = {A,B,C,D,E}
108
R2 = {B, F}.
Do c ph thuc hm D E trong D khng phi thuc tnh kha, E cng
khng phi l thuc tnh kha, nn R1 vi phm chun 3NF
nh ngha dng chun Boyce- Codd: Mt lc quan h l dng chun
Boyce-Codd (BCNF) nu khi mt ph thuc hm X A tha mn trong R th X l
mt siu kha ca R.
V d: Xt lc R = {A, B, C, D} c A l kha chnh v {B,C} l kha d
tuyn. Nu c tn ti mt ph thuc hm D B th lc ny vi phm BCNF v
B l mt thuc tnh kha (ch rng trong trng hp nh ngha dng chun da
trn kha chnh, lc ny khng vi phm BCNF).
IV.2- Cc thut ton thit k lc c s d liu quan h
IV.2.1- Tch quan h v tnh khng y ca cc dng chun
Tch quan h: Cc thut ton thit k c s d liu quan h c trnh by
trong phn ny bt u t mt lc quan h v tr n R = {A
1
, A
2
, , A
n
}
cha tt c cc thuc tnh ca c s d liu. Vi gi thit quan h v tr, tn ca
mi thuc tnh l duy nht. Tp hp F cc ph thuc hm tha mn trn cc thuc
tnh ca R do nhng ngi thit k c s d liu ch ra s c cc thut ton s
dng. S dng cc ph thuc hm, cc thut ton s tch lc quan h v tr R
thnh mt tp hp cc lc quan h D = {R
1
, R
2
, , R
m
}, tp hp s l lc
c s d liu quan h. D c gi l mt php tch (decomposition) ca R.
Chng ta phi m bo rng mi thuc tnh trong R s xut hin trong t nht l
mt lc quan h R
i
trong php tch n khi b mt . Mt cch hnh thc,
ta c iu kin bo ton thuc tnh sau y:
R
i
= R
Tnh khng y ca cc dng chun: Mc ch ca chng ta l mi quan h
ring r R
i
trong php tch D l dng chun BCNF hoc 3NF. Tuy nhin, iu
khng m bo mt thit k c s d liu tt. Bn cnh vic xem xt tng
quan h ring r, chng ta cn xem xt ton b php tch. V d, xt hai quan h:
NV_(Tn, aimDA)
NV_DA1(M sNV, M sDA, Sgi, TnDA, aimDA)
109
phn I.4 chng ny, ta thy rng d quan h NV_ l mt quan h dng
BCNF nhng khi chng ta em ni t nhin vi quan h NV_DA1 th chng ta
nhn c mt quan h c cha cc b gi. iu xy ra l do ng ngha khng
r rng ca quan h NV_. l mt lc quan h c thit k ti. Chng
ta cn phi c tiu chun khc cng vi cc iu kin 3NF v BCNF ngn nga
cc thit k ti nh vy. Trong cc phn tip theo chng ta s ni n cc iu kin
ph thm phi tha mn trn php tch D.
IV.2.2- Php tch v s bo ton ph thuc
Vic mi ph thuc hm X Y trong F hoc c xut hin trc tip trong
mt trong cc lc quan h R
i
trong php tch D hoc c th c suy din t
cc ph thuc hm c trong R
i
l rt c li. Ta gi l iu kin bo ton ph
thuc. Chng ta mun bo ton ph thuc bi v mi ph thuc trong F biu th
mt rng buc trong c s d liu. Nu nh mt trong cc ph thuc khng c
th hin trong mt quan h ring r R
i
no ca php tch, chng ta khng th p
buc rng buc ny i vi quan h ring r, thay vo , chng ta ni hai hoc
nhiu quan h trong php tch v sau kim tra rng ph thuc hm tha mn
trong kt qu ca php ni. R rng l mt th tc khng hiu qu v khng
thc tin.
Vic cc ph thuc chnh xc c ch ra trong F xut hin trong cc quan
h ring r ca php tch D l khng cn thit. Ch cn hp ca cc ph thuc tha
mn trn cc quan h ring r trong D l tng ng vi F l . By gi chng ta
nh ngha cc khi nim ny mt cch hnh thc.
Cho trc mt tp hp cc ph thuc F trn R, php chiu ca F trn R
i
, k
hiu l t
Ri
(F) trong R
i
l mt tp con ca R, l mt tp hp cc ph thuc hm
XY trong F
+
sao cho cc thuc tnh trong X Y u c cha trong R
i
. Nh
vy, php chiu ca F trn mi lc quan h R
i
trong php tch D l tp hp cc
ph thuc hm trong F
+
, bao ng ca F, sao cho cc thuc tnh v tri v v phi
ca chng u trong R
i
. Ta ni rng php tch D = {R1, R2, , Rm} ca R bo
ton ph thuc i vi F nu hp ca cc php chiu ca F trn mi R
i
trong D l
tng ng vi F. iu c ngha l:
( (t
R1
(F)) (t
R2
(F)) (t
Rm
(F)))
+
= F
+
110
Nu mt php tch l khng bo ton ph thuc, mt vi ph thuc s b mt
trong php tch. kim tra xem mt ph thuc hm X B, trong X l tp
thuc tnh thuc v R
i
, B l mt thuc tnh thuc R
i
c tha mn trong R
i
hay
khng ta lm nh sau: Trc ht tnh X
+
, sau vi mi thuc tnh B sao cho
1. B l mt thuc tnh ca R
i

2. B l trong X
+

3. B khng trong X
Khi ph thuc hm X B tha mn trong R
i
.
Mt v d v php tch khng bo ton ph thuc. Xt lc quan h:
R = { A,B,C,D} vi cc ph thuc hm:
A BCD; BC DA; D B
Lc ny c hai kha d tuyn l A v BC. Lc ny vi phm BCNF.
N c tch thnh:
R1 = {D,B}, lc ny cha ph thuc hm D B
R2 = {A,C,D}, lc ny cha ph thuc hm A CD
R rng sau khi tch, ph thuc hm BC DA b mt.
nh l: Lun lun tm c mt php tch bo ton ph thuc D i vi F
sao cho mi quan h R
i
trong D l 3NF. Php tch D c thc hin theo thut
ton sau y:
Thut ton 5.1: To mt php tch bo ton ph thuc D = {R
1
,R
2
, ,R
m
}
ca mt quan h v tr R da trn mt tp ph thuc hm F sao cho mi R
i
trong D
l 3NF. Thut ton ny ch m bo tnh cht bo ton ph thuc, khng m bo
tnh cht ni khng mt mt.
Input: Mt quan h v tr R v mt tp ph thuc hm F trn cc thuc tnh
ca R.
1) Tm ph ti thiu G ca F.
2) Vi mi v tri X ca mt ph thuc hm xut hin trong G, hy to mt
lc trong D vi cc thuc tnh {X {A
1
} {A
2
} {A
k
}} trong
111
XA
1
, XA
2
,, XA
k
ch l cc ph thuc hm trong G vi X l
v tri (X l kha ca quan h ny).
3) t cc thuc tnh cn li (nhng thuc tnh cha c t vo quan h
no) vo mt quan h n m bo tnh cht bo ton thuc tnh.
V d p dng:
Xt lc : R = { A,B,C,D} , vi cc ph thuc hm:
F = {A BCD; BC DA; D B}
Lc ny c hai kha d tuyn l A v BC.
Ta thc hin thut ton nh sau: Trc tin ta tm G l ph ti thiu ca F.
Theo thut ton tm ph ti thiu, u tin ta lm cho cc v phi trong G ch cha
mt thuc tnh, ta c:
G = {A B; A C; A D; BC D; BC A; D B}
Sau ta b i cc ph thuc hm tha (l cc ph thuc hm c th suy din
c t cc ph thuc hm khc). Ta thy A B l tha v c A D, D B. Vy
G cn li l:
G = {A C; A D; BC D; BC A; D B}. Lc R s c tch
thnh:
R
1
( A,C,D); R2(B,C,D,A); R3(D,B) vi cc kha chnh c gch di.
R rng rng tt c cc ph thuc hm trong G u c thut ton bo ton
bi v mi ph thuc xut hin trong mt trong cc quan h ca php tch D. Bi v
G tng ng vi F, tt c cc ph thuc ca F cng c bo ton hoc trc tip
bng thut ton hoc c suy din t nhng ph thuc hm trong cc quan h kt
qu, nh vy tnh cht bo ton ph thuc c m bo.
IV.2.3- Php tch v kt ni khng mt mt
Php tch D phi c mt tnh cht na l ni khng mt mt (hoc tnh cht
ni khng ph thm), n m bo rng khng c cc b gi c to ra khi p dng
mt php ni t nhin vo cc quan h trong php tch. Chng ta a ra v d v
php tch khng c tnh cht ni khng mt thng tin phn I.4 chng ny.
Trong php tch , khi ta thc hin php ni t nhin trn cc quan h ca php
tch, rt nhiu cc b gi sinh ra.
112
Mt cch hnh thc, ta ni rng mt php tch D = { R
1
, R
2
,,R
m
} ca R c
tnh cht ni khng mt mt (khng ph thm) i vi mt tp hp ph thuc hm
F trn R nu vi mi trng thi quan h r ca R tha mn F th
* ( t
R1
(r) , t
R1
(r) , t
R1
(r) ) = r
trong * l php ni t nhin ca cc quan h trong D.
Nu mt php tch khng c tnh cht ni khng mt mt thng tin th chng
ta c th nhn c cc b ph thm (cc b gi) sau khi p dng cc php chiu v
ni t nhin. Ngha ca t mt mt y l mt mt thng tin cha khng phi mt
cc b gi tr. V vy, vi tnh cht ny ta nn gi chnh xc hn l tnh cht ni
khng ph thm.
Chng ta c thut ton kim tra mt php tch c tnh cht ni khng mt
mt thng tin hay khng nh sau:
Thut ton 5.2: Kim tra tnh cht ni khng mt mt
Input: Mt quan h v tr R(A
1
,A
2
,A
n
), mt php tch D = {R
1
, R
2
, , R
m
}
ca R v mt tp F cc ph thuc hm.
1) To mt ma trn S c m hng, n ct. Mi ct ca ma trn ng vi mt
thuc tnh, mi hng ng vi mi quan h R
i

2) t S(i,j) = 1 nu thuc tnh A
j
thuc v quan h R
i
v

bng 0 trong trng
hp ngc li.
3) Lp li vng lp sau y cho n khi no vic thc hin vng lp khng
lm thay i S: Vi mi ph thuc hm X Y trong F, xc nh cc
hng trong S c cc k hiu 1 nh nhau trong cc ct ng vi cc thuc
tnh trong X. Nu c mt hng trong s cha 1 trong cc ct ng vi
thuc tnh Y th hy lm cho cc lm cho cc ct tng ng ca cc hng
khc cng cha 1.
4) Nu c mt hng cha ton k hiu 1 th php tch c tnh cht ni
khng mt mt, ngc li, php tch khng c tnh cht .
Cho trc mt quan h R c tch thnh mt s quan h R
1
, R
2
, ..,R
m
. Thut
ton 5.2 bt u bng vic to ra mt trng thi quan h r trong ma trn S. Hng i
trong S biu din mt b t
i
(tng ng vi quan h R
i
). Hng ny c cc k hiu
1 trong cc ct tng ng vi cc thuc tnh ca R
i
v cc k hiu 0 trong cc
113
ct cn li. Sau thut ton bin i cc hng ca ma trn ny (trong vng lp ca
bc 3) sao cho chng biu din cc b tha mn tt c cc ph thuc hm trong F.
cui vng lp p dng cc ph thuc hm, hai hng bt k trong S chng biu
din hai b trong r c cc gi tr ging nhau i vi cc thuc tnh ca X v tri
ca ph thuc hm X Y trong F s cng c cc gi tr ging nhau i vi cc
thuc tnh ca v phi Y. C th ch ra rng sau khi p dng vng lp ca bc 3,
nu mt hng bt k trong S kt thc vi ton k hiu 1 th D c tnh cht ni
khng mt mt i vi F. Mt khc, nu khng c hng no kt thc bng tt c k
hiu 1 th D khng tha mn tnh cht ni khng mt mt. Trong trng hp sau,
trng thi quan h r c biu din bng S cui thut ton s l mt v d v mt
trng thi quan h r ca R tha mn cc ph thuc trong F nhng khng tha mn
iu kin ni khng mt mt . Nh vy, quan h ny c dng nh mt phn v
d chng minh rng D khng c tnh cht ni khng mt mt i vi F. Ch rng
cc k hiu 1 v 0 khng c ngha c bit g cui thut ton.
V d p dng 1:
R = ( MsNV, TnNV, MsDA, TnDA, aimDA, Sgi)
R1= ( TnNV, aimDA)
R2 = ( MsNV, MsDA, Sgi, TnDA, aimDA )
F= { M sNV TnNV, MsDA {TnDA, aimDA}, {MsNV,
M sDA} Sgi}
MsNV TnNV M sDA TnDA aimDA Sgi
R1 0 1 0 0 1 0
R2 1 0 1 1 1 1
Xt ln lt ph thuc hm MsNV TnNV, MsDA {TnDA,
aimDA}, {MsNV, M sDA} Sgi. Ta thy khng c trng hp no
cc thuc tnh tng ng vi cc v tri u c gi tr bng 1, v vy ta khng th
lm g bin i ma trn. Ma trn khng cha mt hng gm ton k hiu 1.
Php tch l mt mt.
V d p dng 2:
R = (MsNV, TnNV, MsDA, TnDA, aimDA, Sgi)
114
R1= (MsNV, TnNV)
R2 = (MsDA, TnDA, aimDA)
R3 = (MsNV, MsDA, Sgi)
F= {M sNV TnNV, MsDA {TnDA, aimDA}, {MsNV,
MsDA} Sgi}
MsNV TnNV M sDA TnDA aimDA Sgi
R1 1 1 0 0 0 0
R2 0 0 1 1 1 0
R3 1 0 1 1 1 0
(Gi tr ban u ca ma trn S)

MsNV TnNV M sDA TnDA aimDA Sgi
R1 1 1 0 0 0 0
R2 0 0 1 1 1 0
R3 1 0 1 1 0 1 0 1 1
(Ma trn S sau khi p dng hai ph thuc hm u tin dng cui cng ko cha
ton k hiu a). Ma trn cha mt hng gm ton k hiu 1. Php tch ny l
khng mt mt.
Hnh IV-1. Thut ton kim tra ni khng mt mt
Thut ton 5.2 cho php chng ta kim tra xem mt php tch D c th c
tun theo tnh cht ni khng mt mt hay khng. Cu hi tip theo l liu c mt
thut ton tch mt lc quan h v tr R = {A
1
, A
2
, , A
n
} thnh mt php
tch D = {R
1
, R
2
, ,R
m
} sao cho mi R
i
l BCNF v php tch D c tnh cht ni
khng mt mt i vi F hay khng? Cu tr li l c. Trc khi trnh by thut
ton, ta xem mt s tnh cht ca cc php tch ni khng mt mt ni chung.
Tnh cht 1: Mt php tch D = {R
1
,R
2
} ca R c tnh cht ni khng mt mt
i vi mt tp ph thuc hm F trn R khi v ch khi
- Hoc ph thuc hm ((R
1
R
2
) (R
1
R
2
)) trong F
+
.
115
- Hoc ph thuc hm ((R
1
R
2
) (R
2
R
1
)) trong F
+
.
Vi tnh cht ny, chng ta c th kim tra li cc php tch chun ha trong
4.3 v s thy rng cc php tch l tha mn tnh cht ni khng mt mt.
Tnh cht 2: Nu mt php tch D = {R
1
, R
2
, , R
m
} ca R c tnh cht ni
khng mt mt i vi mt tp ph thuc hm F trn R v nu mt php tch D
1
=
{Q
1
, Q
2
, ,Q
k
} ca R
i
c tnh cht ni khng mt mt i vi php chiu ca F
trn R
i
th php tch D2 = { R
1
, R
2
,, R
i-1
, Q
1
, Q
2
,,Q
k
, R
i+1
,, R
m
} ca R c tnh
cht ni khng mt mt i vi F.
Tnh cht ny ni rng nu mt php tch D c tnh cht ni khng mt mt
i vi mt tp F v chng ta tip tc tch mt trong cc quan h R
i
trong D thnh
php tch khc D
1
(l = 1,2,..k) c tnh cht ni khng mt mt i vi t
Ri
(F) th
vic thay R
i
trong D bng D
1
(l = 1,2,..k) cng to ra mt php tch c tnh cht ni
khng mt mt i vi F.
Thut ton 5.3 sau y s dng hai tnh cht trn to ra mt php tch D =
{R
1
, R
2
, , R
m
} ca mt quan h v tr R da trn mt tp cc ph thuc hm F
sao cho mi R
i
l BCNF.
Thut ton 5.3: Tch quan h thnh cc quan h BCNF vi tnh cht ni
khng mt mt.
Input: Mt quan h v tr R v mt tp hp cc ph thuc hm F trn cc
thuc tnh ca R.
1. t D := {R} ;
2. Khi c mt lc quan h Q trong D khng phi BCNF, thc hin vng
lp: Vi mi mt lc quan h Q trong D khng BCNF hy tm mt ph
thuc hm X Y trong Q vi phm BCNF v thay th Q trong D bng hai
lc quan h (Q-Y) v (XY). Qu trnh lp dng khi khng cn quan h
no trong D vi phm BCNF.
Mi ln i vo vng lp trong thut ton 5.3, chng ta tch mt quan h Q
khng phi BCNF thnh hai lc quan h. Theo cc tnh cht 1 v 2, php tch
D c tnh cht ni khng mt mt. Kt thc thut ton, tt c cc quan h trong D s
BCNF.
116
Trong bc 2 ca thut ton 5.3, cn xc nh xem mt lc quan h Q c
BCNF hay khng. Mt phng php lm iu l kim tra. Vi mi ph
thuc hm X Y trong Q, ta tnh X
+
. Nu X
+
khng cha tt c cc thuc tnh
trong Q th X Y vi phm BCNF bi v X khng phi l mt siu kha.
Mt k thut na da trn quan st rng khi mt lc quan h Q vi phm
BCNF th c tn ti mt cp thuc tnh A,B trong Q sao cho {Q {A,B}} A.
Bng vic tnh bao ng {Q {A,B}}
+
cho mi cp thuc tnh {A,B} ca Q v
kim tra xem bao ng c cha A (hoc B) hay khng, chng ta c th xc nh
c Q c BCNF hay khng.
V d p dng: Xt lc quan h
R = { A, B, C, D, E, F)
Vi cc ph thuc hm:
A BCDEF, BC ADEF, B F, D E, D B
Lc quan h ny c hai kha d tuyn l A v BC.
Ta c B F vi phm BCNF v B khng phi l siu kha, R c tch thnh:
R1(B,F) vi ph thuc hm B F
R2(A,B,C,D,E) vi cc ph thuc hm ASCDE, BCADF, DE, DB
Do D E vi phm BCNF ( D l mt thuc tnh khng kha ), R2 c tch
thnh:
R21(D,E) vi ph thuc hm D E
R22(ABCD) vi cc ph thuc hm A BCD, BC AD, D B
Do D B vi phm BCNF (Dkhng phi l thuc tnh kha), R22 c tch
thnh:
R221(D,B)
R222(A,B,D) vi ph thuc hm A BD (ph thuc hm BC AD b mt)
Tm li, ta c php tch D = {R1, R21, R221, R222}. Php tch ny c tnh
cht ni khng mt thng tin nhng khng bo ton ph thuc.
117
Nu chng ta mun c mt php tch c tnh cht ni khng mt mt v bo
ton ph thuc th ta phi hi lng vi cc lc quan h dng 3NF. Thut ton
sau y l ci tin ca thut ton 5.1, to ra mt php tch tha mn :
- Bo ton ph thuc.
- C tnh cht ni khng mt mt.
- Mi lc quan h kt qu l dng 3NF.
Thut ton 5.4: Thut ton tng hp quan h vi tnh cht bo ton ph thuc
v ni khng mt mt.
Input: Mt quan h v tr R v mt tp cc ph thuc hm F trn cc thuc
tnh ca R.
1) Tm ph ti thiu G cho F.
2) Vi mi v tri X ca mt ph thuc hm xut hin trong G hy to ra mt
lc quan h trong D vi cc thuc tnh {X{A
1
}{A
2
} {A
k
}},
trong X A
1
, XA
2
,, X A
k
ch l cc ph thuc hm trong G vi
X l v tri (X l kha ca quan h ny).
3) Nu khng c lc quan h no trong D cha mt kha ca R th hy to
ra thm mt lc quan h trong D cha cc thuc tnh to nn mt kha
ca R.
Bc 3 ca thut ton 5.4 i hi phi xc nh mt kha K ca R. xc
nh mt kha K ca R, ta s dng thut ton sau
Thut ton xc nh kha: Tm mt kha K ca R da trn tp F cc ph
thuc hm.
1) t K := R;
2) Vi mi thuc tnh A trong K
{tnh (K-A)
+
i vi F;
Nu (K-A)
+
cha tt c cc thuc tnh trong R th t K := K-{A}};
*Ch : Chng ta c nhn xt sau: Nu quan h c kha th cc thuc tnh
kha ca quan h phi l cc tp con ca tp hp cc thuc tnh v phi cc ph
thuc hm trong F. V vy, tm c cc kha nhanh hn, trc tin chng ta
tnh R
F
l hp ca cc thuc tnh cc v tri ca cc ph thuc hm trong F, sau
118
i tnh bao ng ca tt c cc tp con ca R
F
. Nu bao ng ca tp con no
cha tt c cc thuc tnh ca R th tp l mt siu kha. kim tra n l mt
kha ta thc hin nh bc 2) ca thut ton trn.
Khng phi lc no cng c kh nng tm c mt php tch thnh cc lc
quan h bo ton ph thuc v mi lc trong php tch l BCNF. Cc
lc quan h trong php tch theo thut ton trn thng l 3NF. c cc
lc BCNF, chng ta c th kim tra cc lc quan h 3NF trong php tch
mt cch ring r xem n c tha mn BCNF khng. Nu c lc quan h R
i

khng BCNF th ta c th tch tip hoc nguyn n l 3NF.
IV.3- Cc ph thuc hm a tr v dng chun 4
Trong phn ny chng ta tho lun khi nim ph thuc hm a tr v nh
ngha dng chun 4. Cc ph thuc a tr h qu ca dng chun 1 khng cho php
mt thuc tnh ca mt b c mt tp gi tr (ngha l cc thuc tnh a tr). Nu
chng ta c hai hoc nhiu hn cc thuc tnh c lp v a tr trong cng mt lc
quan h th chng ta phi lp li mi mt gi tr ca mt trong cc thuc tnh vi
mi gi tr ca thuc tnh khc gi cho trng thi quan h nht qun v duy tr
tnh c lp gia cc thuc tnh. Rng buc c ch ra bng mt ph thuc a
tr.
IV.3.1- nh ngha ph thuc a tr
Gi thit c mt lc quan h R, X v Y l hai tp con ca R. Mt ph
thuc a tr (MVD), k hiu l X Y , ch ra rng buc sau y trn mt trng
thi quan h bt k ca R: Nu hai b t
1
v t
2
tn ti trong R sao cho t
1
[X] = t
2
[X]
th hai b t
3
v t
4
cng tn ti trong R vi cc tnh cht sau:
. t
3
[X] = t
4
[X] = t
1
[X] = t
2
[X]
. t
3
[Y] = t
1
[Y] v t
4
[Y] = t
2
[Y]
. t
3
[Z] = t
2
[Z] v t
4
[Z] = t
1
[Z] vi Z = (R- (X Y))
Khi XY tha mn, ta ni rng X a xc nh Y. Bi v tnh i xng
trong nh ngha, khi X Y tha mn trong R, XZ cng tha mn trong R.
Nh vy XY ko theo XZ v v th i khi n c vit l XY|Z
nh ngha hnh thc ch ra rng, cho trc mt gi tr c th ca X, tp hp
cc gi tr ca Y c xc nh bi gi tr ny ca X l c xc nh hon ton bi
119
mt mnh X v khng ph thuc vo cc gi tr ca cc thuc tnh cn li Z ca R.
Nh vy, mi khi hai b tn ti c cc gi tr khc nhau ca Y nhng cng mt gi
tr X th cc gi tr ny ca Y phi c lp li trong cc b ring r vi mi gi tr
khc nhau ca Z c mt vi cng gi tr ca X. iu tng ng mt cch khng
hnh thc vi Y l mt thuc tnh a tr ca cc thc th c biu din bng cc
b trong R.
V d v ph thuc a tr:
NHNVIN TnNV TnDA TnconNV
Nam DA01 Lan
Nam DA02 Hoa
Nam DA01 Hoa
Nam DA02 Lan
Trong bng trn c hai ph thuc a tr l:
TnNVTnDA, TnNVTnconNV
Mt MVD XY c gi ph thuc a tr tm thng nu:
a) Y l mt tp con ca X
b) hoc X Y = R
Mt MVD khng tha mn a) hoc b) c gi l mt MVD khng tm
thng. Nu chng ta c mt ph thuc a tr khng tm thng trong mt quan
h, chng ta c th phi lp cc gi tr mt cch d tha trong cc b. Trong quan
h NHNVIN v d trn, cc gi tr DA01, DA02 ca TnDA c lp li
vi mi gi tr ca TnconNV (mt cch i xng, cc gi tr Lan, Hoa c lp
li vi mi gi tr ca TnDA). R rng ta khng mong mun c s d tha .
Tuy nhin, lc quan h trn l BCNF bi v khng c ph thuc hm no
tha mn trong quan h . V vy, chng ta phi nh ngha mt dng chun th t
mnh hn BCNF v ngn cm cc lc quan h nh quan h NHNVIN.
120
IV.3.2- Cc quy tc suy din i vi cc ph thuc hm v ph thuc
a tr
Cc quy tc t Qt1 n Qt8 sau y to nn mt tp hp ng n v y
cho vic suy din cc ph thuc hm v ph thuc a tr t mt tp cc ph thuc
cho trc. Gi thit rng tt c cc thuc tnh c cha trong mt lc quan h
v tr R = {A
1
, A
2
, ,A
n
} v X, Y, Z, W l cc tp con ca R.
Qt1) (quy tc phn x cho FD): Nu X _ Y th X Y
Qt2) (quy tc tng cho FD): {X Y} |= XZ YZ
Qt3) (quy tc bc cu cho FD): { X Y, Y Z } |= X Z
Qt4) (quy tc b cho MVD): {X Y } |= {X (R-(X Y))}
Qt5) (quy tc tng cho MVD): Nu X Y v W _ Z th WX YZ
Qt6) (quy tc bc cu cho MVD): {X Y, Y Z } |= X (Z Y)
Qt7) (quy tc ti to cho FD v MVD): {X Y} |= X Y
Qt8) (quy tc lin hp cho FD v MVD): Nu X Y v c tn ti W vi
cc tnh cht a) W Y = , b) W Z v c) Y _ Z th X Z.
Qt1 n Qt3 l cc quy tc suy din Amstrong i vi cc ph thuc hm. Qt4
n Qt6 l cc quy tc suy din ch lin quan n cc ph thuc a tr. Qt7 v Qt8
lin kt cc ph thuc hm v cc ph thuc a tr. c bit, Qt7 ni rng mt ph
thuc hm l mt trng hp c bit ca mt ph thuc a tr. iu c ngha l
mi ph thuc hm cng l mt ph thuc a tr bi v n tha mn nh ngha hnh
thc ca ph thuc a tr. V c bn, mt ph thuc hm X Y l mt ph thuc
a tr X Y vi mt hn ch ph rng c nhiu nht l mt gi tr ca Y c
kt hp vi mi gi tr ca X. Cho trc mt tp hp cc ph thuc hm v ph
thuc a tr ch ra trn R = {A1, A2, , An}, chng ta c th s dng cc quy tc
t Qt1 n Qt8 suy ra tp hp y cc ph thuc (hm v a tr) F
+
ng
trong mi trng thi quan h r ca R tha mn F. Chng ta li gi F
+
l bao ng
ca F.
121
IV.3.3- Dng chun 4
nh ngha: Mt lc quan h R l dng chun 4 (4NF) i vi mt tp
hp cc ph thuc F (gm cc ph thuc hm v ph thuc a tr) nu vi mi ph
thuc a tr khng tm thng XY trong F
+
, X l mt siu kha ca R.
Nh vy, mt lc quan h vi phm 4NF nu n cha cc ph thuc hm
a tr khng mong mun. V d, lc quan h NHNVIN v d trn l vi
phm 4NF bi v trong cc ph thuc hm a tr TnNVTnDA v
TnNV Tncon, TnNV khng phi l mt siu kha .
Gi s chng ta tch bng NHNVIN thnh hai bng nh sau:
NV_DA TnNV TnDA NV_CON TnNV TnconNV
Nam DA01 Nam Lan
Nam DA02 Nam Hoa
Hai bng ny l 4NF bi v cc ph thuc a tr TnNVTnDA v
TnNVTnconNV l cc ph thuc a tr tm thng. Trong hai bng ny
khng c cc ph thuc a tr khng tm thng cng nh khng c cc ph thuc
hm.
IV.3.4- Tch c tnh cht ni khng mt mt thnh cc quan h 4NF
Khi chng ta tch mt lc quan h R thnh R
1
= (XY) v R
2
= (R-Y)
da trn ph thuc hm a tr XY ng trong R, php tch c tnh cht ni
khng mt mt. cng l iu kin cn v cho mt php tch mt lc
thnh hai lc c tnh cht ni khng mt mt. Ta c tnh cht sau:
Tnh cht 1: Cc lc quan h R
1
v R
2
to thnh mt php tch c tnh
cht ni khng mt mt ca R khi v ch khi (R
1
R
2
) (R
1
R
2
) (hoc (R
1
R
2
)
(R
1
R
2
)).
p dng tnh cht trn chng ta c thut ton to mt php tch c tnh cht
ni khng mt mt thnh cc lc quan h dng 4NF.
Thut ton 5.5: Tch quan h thnh cc quan h 4NF vi tnh cht ni khng
mt mt.
Input: Mt quan h v tr R v mt tp ph thuc hm v ph thuc a tr F.
122
1. t D := {R};
2. Khi c mt lc quan h Q trong D khng 4NF, thc hin:
{Chn mt lc quan h Q trong D khng 4NF;
Tm mt ph thuc a tr khng tm thng XY trong Q vi phm 4NF;
Thay th Q trong D bng hai lc quan h (Q Y) v (X Y)};
V d p dng:
Xt lc NHNVIN(TnNV, TnDA, TnconNV). Ta c ph thuc hm
a tr TnNVTnDA trong TnNV khng phi l mt siu kha, vy n vi
phm 4NF. Ta tch thnh NV_DA(TnNV, TnDA), NV_CON(TnNV,
TnconNV).
IV.4- Cc ph thuc ni v dng chun 5
Nh chng ta thy, cc tnh cht 1 v tnh cht 1 cho iu kin mt
lc quan h R c tch thnh hai lc quan h R1 v R2 v php tch c
tnh cht ni khng mt mt. Tuy nhin, trong mt s trng hp, c th khng c
php tch c tnh cht ni khng mt mt ca R thnh hai lc quan h nhng
c th c php tch c tnh cht ni khng mt mt thnh nhiu hn hai quan h.
Hn na, c th khng c ph thuc hm no trong R cc chun cho n BCNF v
c th khng c ph thuc a tr no c trong R vi phm 4NF. Khi chng ta phi
s dng n mt ph thuc khc gi l ph thuc ni v nu c ph thuc ni th
thc hin mt php tch a chiu thnh dng chun 5 (5NF).
Mt ph thuc ni (JD), k hiu l JD(R
1
, R
2
, , R
n
) trn lc quan h R
ch ra mt rng buc trn cc trng thi r ca R. Rng buc tuyn b rng mi
trng thi hp php r ca R phi c php tch c tnh cht ni khng mt mt
thnh R1, R2, , Rn. iu ngha l:
*( t
R1
(r), t
R2
(r), , t
Rn
(r)) = r
Mt ph thuc ni JD(R
1
, R
2
, , R
n
) l mt ph thuc ni tm thng nu
mt trong cc lc quan h R
i
trong JD(R
1
, R
2
, , R
n
) l bng R.
Mt lc quan h R l dng chun 5 (5NF) (hoc dng chun ni chiu
PJNF Project-Join normal form) i vi mt tp F cc ph thuc hm, ph thuc
123
a tr v ph thuc ni nu vi mi ph thuc ni khng tm thng JD(R
1
, R
2
, ,
R
n
) trong F
+
, mi

R
i
l mt siu kha ca R.
V d: Xt quan h CUNGCP gm ton cc thuc tnh kha
CUNGCP Tnnhcungcp Tnhng TnDn
Ncc1 Bulong Dn1
Ncc1 aic Dn2
Ncc2 Bulong Dn2
Ncc3 aic Dn3
Ncc2 inh Dn1
Ncc2 Bulong Dn1
Ncc1 Bulong Dn2
Gi thit rng rng buc ph thm sau y lun ng: Khi mt nh cung cp S
cung cp hng P V mt d n J s dng hng P V nh cung cp S cung cp t
nht l mt hng cho d n J TH nh cung cp S cng s cung cp hng P cho d
n J. Rng buc ny ch ra mt ph thuc ni JD(R
1
,R
2
,R
3
) gia ba php chiu
R
1
(Tnnhcungcp,Tnhng), R
2
(Tnnhcungcp,Tndn),R
3
(Tnhng,TnDn)
ca quan h CUNGCP. Quan h CUNGCP c tch thnh ba quan h R
1
, R
2
,
R
3
dng chun 5. Ch rng nu ta p dng php ni t nhin cho tng i quan
h mt th s sinh ra cc b gi, nhng nu p dng php ni t nhin cho c ba
quan h th khng sinh ra cc b gi.
R1

R2

R3
Tnnhcungcp Tnhng Tnnhcungcp Tndn Tnhng Tndn
Ncc1 Bulong Ncc1 Dn1 Bulong Dn1
Ncc1 aic Ncc1 Dn2 aic Dn2
Ncc2 Bulong Ncc2 Dn2 Bulong Dn2
Ncc3 aic Ncc3 Dn3 aic Dn3
Ncc2 inh Ncc2 Dn1 inh Dn1
124
Vic pht hin cc ph thuc ni trong cc c s d liu thc t vi hng trm
thuc tnh l mt iu rt kh khn. V vy, thc tin thit k c s d liu hin nay
thng khng ch n n.
Ni chung, trong thc t thit k c s d liu, ngi ta ch chun ha cc
bng n 3NF, BCNF l
V- Tng kt chng v cu hi n tp
V.1- Tng kt chng
Trong chng ny chng ta ni n cc nguy him c th xy ra trong vic
thit k c s d liu, xc nh mt cch khng hnh thc mt s chun mc ch
ra mt lc quan h l tt hay ti v a ra mt s nguyn tc khng hnh
thc cho mt thit k tt. Sau chng ta trnh by mt vi khi nim cho php
ta thit k quan h theo cch trn-xung bng cch phn tch cc quan h mt cch
ring r. Chng ta nh ngha qu trnh thit k ny bng phn tch v tch bng
cch gii thiu qu trnh chun ha.
Nhng vn v cc bt thng cp nht xy ra khi c s d tha xy ra
trong cc quan h cng c cp n. Cc chun mc khng hnh thc ca
cc lc quan h tt bao gm ng ngha ca thuc tnh r rng v n gin, t
gi tr null trong cc m rng ca quan h. Mt php tch tt phi trnh c vic
sinh ra cc b gi khi thc hin php ni.
Chng ta nh ngha khi nim ph thuc hm v tho lun mt s tnh cht
ca n. Cc ph thuc hm l cc ngun thng tin ng ngha c bn v cc thuc
tnh ca lc quan h. Chng ta ch ra cch suy din cc ph thuc ph thm
da trn mt tp cc ph thuc hm cho trc v mt tp cc quy tc suy din.
Chng ta nh ngha cc khi nim bao ng v ph ti thiu ca mt tp ph
thuc hm v cung cp thut ton tnh ph ti thiu. Ta cng ch ra lm th no
kim tra xem hai tp ph thuc hm c tng ng nhau hay khng.
Tip theo, chng ta m t qu trnh chun ha t n cc thit k tt
bng cch kim tra cc quan h i vi cc kiu ph thuc hm khng mong mun.
Chng ta cung cp cch chun ha lin tip da trn kha chnh c nh ngha
trc trong mi quan h v sau gim nh i hi ny v a ra cc nh ngha
tng qut ca cc dng chun c tnh n tt c cc kha d tuyn ca mt quan h.
125
Trong phn IV chng ta trnh by nhiu thut ton chun ha. l thut
ton tng hp quan h to ra cc quan h 3NF t mt lc quan h v tr da
trn mt tp cc ph thuc hm do ngi thit k c s d liu xc nh. Cc thut
ton to ra cc quan h BCNF (hoc 4NF) bng cch tch khng mt mt lin tip
cc quan h khng chun ha thnh hai quan h thnh phn ti mt thi im.
Chng ta tho lun v hai tnh cht quan trng ca php tch: tnh cht ni
khng mt mt (hoc khng ph thm) v tnh cht bo ton ph thuc. Mt thut
ton kim tra php tch khng mt mt v mt thut ton kim tra tnh khng mt
mt ca mt php tch thnh hai quan h cng c trnh by. Chng ta cng
thy rng vic tng hp cc quan h dng 3NF m bo c hai tnh cht trn l c
kh nng cn vic tng hp cc quan h BCNF ch c kh nng m bo tnh
khng mt mt, khng th m bo tnh bo ton ph thuc.
Cui cng, chng ta nghin cu cc loi ph thuc khc: ph thuc a tr
v ph thuc ni, a ra nh ngha cc dng chun 4, dng chun 5 v thut ton
tch cc quan h vi phm thnh quan h 4NF, 5NF. Vic pht hin cc ph thuc
ni rt kh khn nn trong thit k thc tin ngi ta thng b qua n.
V.2- Cu hi n tp
1) Hy gii thch ng ngha ca thuc tnh nh l mt o khng hnh thc v
tnh tt i vi mt lc quan h.
2) Hy tho lun v cc bt thng chn, xa v sa i. V sao chng c xem
l khng tt? Hy minh ha bng v d.
3) Hy trnh by vn cc b gi v lm th no ngn nga chng?
4) Trnh by cc nguyn tc i vi vic thit k lc quan h. Hy minh ha
vic vi phm cc nguyn tc s c hi nh th no?
5) Ph thuc hm l g? Ai l ngi ch ra cc ph thuc hm gia cc thuc tnh
ca mt lc quan h?
6) V sao chng ta khng th suy ra mt ph thuc hm t mt trng thi quan h
c th?
7) V sao cc quy tc suy din ca Amstrong (Qt1 n Qt3) l quan trng?
8) Tnh y v tnh ng n ca cc quy tc suy din Amstrong l g?
9) Bao ng ca mt tp ph thuc hm l g?
126
10) Khi no th hai tp ph thuc hm l tng ng? Lm th no kim tra
tnh tng ng ca chng?
11) Tp ti thiu cc ph thuc hm l g? C phi mi tp ti thiu ph thuc hm
c mt tp ti thiu tng ng hay khng?
12) Thut ng quan h khng chun ha m ch ci g?
13) nh ngha cc dng chun 1NF, 2NF, 3NF, BCNF da trn kha chnh v cc
dng chun di dng tng qut. S khc nhau ca hai nh ngha l g?
14) Ph thuc hm no cn trnh khi mt quan h l 3NF?
15) nh ngha dng chun Boyce-Codd. N khc g vi 3NF? V sao n c xem
l mnh hn 3NF?
16) iu kin bo ton thuc tnh trn mt php tch l g?
17) V sao cc dng chun t n l cha nh l mt iu kin cho mt thit k
lc tt?
18) Tnh cht bo ton ph thuc i vi mt php tch l g? V sao n l quan
trng?
19) V sao chng ta khng th m bo rng mt php tch cc lc quan h
khng BCNF thnh BCNF l bo ton ph thuc? Hy cho mt phn v d.
20) Tnh cht ni khng mt mt (khng ph thm) ca mt php tch l g? V sao
n l quan trng?
21) Gia cc tnh cht bo ton ph thuc v ni khng mt mt ci no l nht
thit phi tha mn? V sao? Ph thuc hm a tr l g? N ch ra rng buc
g? Khi no n sinh ra?
22) Hy minh ha qu trnh to ra cc quan h dng chun 1? Lm th no c
dng chun 1 mt cch ng n, trnh c ph thuc a tr?
23) nh ngha dng chun 4. N c li g?
24) nh ngha ph thuc ni v dng chun 5.
V.3- Bi tp
1) Hy kim tra cc quy tc suy din i vi cc ph thuc hm sau y l ng
hay sai:
127
a) {W Y, X Z} |= {WX Y}
b) {X Y} v Y _Z |= {X Z}
c) {X Y , X W, WY Z} |= {X Z}
d) {XY Z, Y W} |= {XW Z}
e) {X Z, Y Z} |= {X Y}
f) {X Y, Z W} |= {XZ YW}
g) {XY Z , Z X} |= {Z Y}
h) {X Y, Y Z} |= {X YZ}
i) {XY Z, Z W} |= {X W}
2) Cho lc quan h R(A,B,C,D,E,F,G,H,I,J) v tp ph thuc hm sau y:
F1 = {AB C, A DE, B F, F GH, D IJ}
a) Kha ca quan h l g? Hy tch quan h thnh 2NF, sau thnh 3NF.
b) Lm li cu a) vi tp ph thuc hm sau:
G1= { AB C, BD EF, AD GH, A I , H J }
3) Xt quan h R(A,B,C,D,E) v cc ph thuc hm sau:
AB C, CD E, DE B.
AB c phi l kha d tuyn ca quan h khng? V sao? Hy tm mt kha ca
n.
4) Cho quan h sau:
A B C BID
10 b1 c1 #1
10 b2 c2 #2
11 b4 c1 #3
12 b3 c4 #4
13 b1 c1 #5
14 b3 c4 #6
128

Nhng ph thuc hm no sau y l ng: A B , B C, C B, B A,
C A. Nu c nhng ph thuc hm sai, hy gii thch v sao.

You might also like