
LÜnh vùc C«ng nghÖ th«ng tin
Bµn vÒ tÝnh chuÈn hãa trong c¸c c¬ së d÷ liÖu hiÖn cã
TS.Phan §¨ng
CÇu
Khoa C«ng nghÖ th«ng tin I
Tãm t¾t:
ChuÈn hãa lµ mét kh¸i niÖm kh¸ quan träng trong lý thuyÕt c¬ së d÷ liÖu
quan hÖ vµ lµ mét trong nh÷ng yªu cÇu cÇn ®îc ®¶m b¶o khi x©y dùng mét c¬
së d÷ liÖu (CSDL). Nãi mét c¸ch trùc quan th× tÝnh chuÈn hãa b¶o ®¶m cho
CSDL lo¹i trõ ®îc tÝnh kh«ng nhÊt qu¸n vµ tr¸nh ®îc sù d thõa d÷ liÖu. Tuy
nhiªn nÕu kh¶o s¸t mét sè CSDL hiÖn cã ë ViÖt nam, ta cã thÓ thÊy r»ng cã
kh¸ nhiÒu trêng hîp tÝnh chuÈn hãa bÞ vi ph¹m, nÕu ta hiÓu tÝnh chuÈn hãa
®óng nh lý thuyÕt ®· ®Þnh nghÜa. Tuy nhiªn, v× b¶n th©n t¸c gi¶ kh«ng ph¶i
lµ chuyªn gia vÒ lý thuyÕt CSDL nªn môc ®Ých bµi viÕt nµy kh«ng nh»m phª
ph¸n thùc tÕ ®ã mµ ngîc l¹i, th«ng qua mét sè kinh nghiÖm thùc tÕ ®· tr¶i qua,
t¸c gi¶ muèn thuyÕt phôc c¸c nhµ lý thuyÕt vµ b¹n ®äc r»ng, thùc ra trong thùc
tÕ tÝnh chuÈn hãa nªn ®îc hiÓu mét c¸ch mÒm dÎo h¬n: CSDL ph¶i ®îc b¶o
®¶m chuÈn hãa trong thao t¸c vµ xö lý, nhng vÒ h×nh thøc cã thÓ kh«ng chuÈn
hãa ë møc nµo ®ã. ThÝ dô trong mét b¶ng d÷ liÖu mµ cã sù lÆp l¹i cña tªn
tØnh th× kh«ng nhÊt thiÕt chØ cã m· tØnh xuÊt hiÖn nh tÝnh chuÈn hãa ®ßi
hái, mµ cã thÓ cã ®ång thêi c¶ m· tØnh vµ tªn tØnh. Trong mét sè tr êng hîp khi
CSDL ®îc b¶o tr× trong mét m«i trêng mµ ®é an toµn kh«ng cao th× ®«i khi sù
d thõa cã thÓ trë thµnh nh÷ng th«ng tin cã Ých gióp ta hiÖu chØnh vµ kh«i phôc
d÷ liÖu. NÕu vÝ von mét c¸ch h×nh ¶nh th× viÖc lµm nµy còng gièng nh khi ta
s¾p lªn ®êng ®i ®Õn mét n¬i mµ mäi thø kh«ng dÔ mua th× nªn cã thªm mét sè
®å dù phßng thiÕt yÕu, thÝ dô nªn mang thªm mét chiÕc lèp xe, cho dï c¸c lèp xe
®ang dïng cßn rÊt tèt.
1. Kh¸i niÖm chuÈn hãa trong CSDL
Trong môc nµy chóng t«i tr×nh bµy s¬ lîc mét sè kh¸i niÖm c¬ b¶n liªn quan
®Õn tÝnh chuÈn hãa trong CSDL quan hÖ.
Häc viÖn C«ng nghÖ BCVT

Héi nghÞ Khoa häc lÇn thø 5
1.1. Kh¸i niÖm thùc thÓ
Thùc thÓ lµ mét ®èi tîng cô thÓ tån t¹i trong thÕ giíi thùc. §èi tîng nµy cã
thÓ lµ vËt chÊt nh×n thÊy ®îc vµ cã thÓ tiÕp xóc ®îc b»ng tay nh con ngêi, h¹t
c¸t, mÆt hµng; nhng còng cã thÓ lµ kh¸i niÖm trõu tîng nh dù ¸n, kÕ ho¹ch...
1.2. §Þnh nghÜa quan hÖ
Cho tËp h÷u h¹n c¸c phÇn tö U = {A1, A2,...,An}. Th«ng thêng Ai lµ c¸c thuéc tÝnh
cña mét thùc thÓ nµo ®ã. TËp U ®îc gäi lµ tËp c¸c thuéc tÝnh. Mçi phÇn tö
cña Ai cña tËp U cã miÒn gi¸ trÞ t ¬ng øng, ta ký hiÖu lµ Di = dom(Ai) (dom =
domain, tøc lµ miÒn).
Mçi tËp con R cña tÝch Descartes (§Ò-C¸c) cña c¸c miÒn gi¸ trÞ dom(Ai) víi i =
1,2,3,..., n ®îc gäi lµ mét quan hÖ trªn U vµ ®îc ký hiÖu lµ R (U) hay lµ R
(A1, A2,...,An). VËy R lµ quan hÖ trªn tËp thuéc tÝnh U nÕu:
R ⊂ D1 x D2 x ... x Dn
Ta còng cã thÓ viÕt
R = {(d1,d2,...,dn) / di ∈ Di, i = 1,2,...,n}
C¸c phÇn tö t = (d1,d2,...,dn) ∈ R ®«i khi ®îc gäi lµ c¸c bé, khi cµi ®Æt trªn m¸y
tÝnh th× ®îc gäi lµ c¸c b¶n ghi (record) . PhÇn tö thø i cña t t¬ng øng víi
thuéc tÝnh Ai vµ ®îc ký hiÖu lµ t.Ai. Nãi chung nÕu X lµ mét sè thuéc tÝnh
nµo ®ã trong U (tøc lµ X ⊆ U) th× ta ký hiÖu t.X lµ c¸c thµnh phÇn cña t t¬ng
øng víi c¸c thuéc tÝnh trong X. Nh vËy th× mét phÇn tö t bÊt kú cña R còng cã
thÓ viÕt lµ t.U, tuy nhiªn trong tr êng hîp nµy ®Ó ®¬n gi¶n ta chØ viÕt lµ t.
Tõ ®Þnh nghÜa trªn ta thÊy quan hÖ R lµ mét b¶ng hai chiÒu, trªn cét thø i lµ
c¸c gi¸ trÞ cña dom(Ai), trªn mçi dßng cña b¶ng lµ bé n gi¸ trÞ cña c¸c miÒn gi¸
trÞ cña c¸c thuéc tÝnh A1, A2,..., An. Mçi dßng lµ mét phÇn tö cña quan hÖ.
Khi cho tËp thuéc tÝnh U lµ ta ®· cho bé khung cho mét tËp c¸c quan hÖ. V×
vËy ngêi ta thêng gäi tËp thuéct tÝnh U lµ lîc ®å quan hÖ.
C¬ së d÷ liÖu quan hÖ lµ mét tËp hîp c¸c quan hÖ biÕn thiªn theo thêi
gian. Cã nghÜa lµ sè lîng vµ néi dung c¸c bé trong mét quan hÖ thay ®æi tïy
thuéc vµo ®èi tîng thùc tÕ mµ nã m« t¶.
HÖ qu¶n trÞ c¬ së d÷ liÖu quan hÖ lµ hÖ thèng phÇn mÒm trî gióp cho ng-
êi sö dông trong viÖc t¹o lËp vµ khai th¸c c¬ së d÷ liÖu quan hÖ.
Häc viÖn C«ng nghÖ BCVT

LÜnh vùc C«ng nghÖ th«ng tin
1.3. Khãa cña mét quan hÖ
Siªu khãa (super key) cña mét quan hÖ R trªn tËp thuéc tÝnh U = {A1,
A2,...,An} lµ tËp con S⊆ U sao cho kh«ng cã hai phÇn tö nµo cña R trïng nhau
trªn S. ViÕt mét c¸ch h×nh thøc ta cã: ∀ x,y ∈ R ∧ x≠y ⇒ x.S≠y.S
Ta thÊy r»ng nÕu S lµ siªu khãa th× mäi S', sao cho S⊆ S' ⊆ U , còng lµ siªu
khãa.
NÕu K lµ siªu khãa, nhng bÊt kú tËp con thùc sù nµo cña nã ®Òu kh«ng ph¶i
lµ siªu khãa th× K ®îc gäi lµ khãa.
1.4. Phô thuéc hµm
Phô thuéc hµm lµ mét kh¸i niÖm c¬ b¶n ®îc x©y dùng ®Ó m« t¶ c¸c rµng
buéc d÷ liÖu trong mét c¬ së d÷ liÖu.
Phô thuéc hµm trªn mét quan hÖ
Cho tËp thuéc tÝnh U vµ X, Y lµ c¸c tËp con cña U. R lµ mét quan hÖ trªn
U. Ta nãi r»ng Y phô thuéc hµm vµo X, ký hiÖu lµ X → Y, trªn R nÕu víi
mäi phÇn tö p, q cña R mµ chóng b»ng nhau trªn tËp X th× còng b»ng nhau
trªn Y. Ta cã thÓ diÔn ®¹t ®iÒu nµy b»ng c¸c ký hiÖu to¸n häc nh sau: ∀p, q ∈
R, p.X=q.X → p.Y = q.Y
Phô thuéc hµm trªn lîc ®å quan hÖ
Cho lîc ®å quan hÖ U = {A1, A2, ... An}. Ta nãi r»ng Y phô thuéc hµm vµo X
trªn lîc ®å quan hÖ U , nÕu X → Y trªn mäi quan hÖ R trªn U. NÕu sö
dông ký hiÖu ta cã:
∀ R(U), ∀p, q ∈ R ,p.X=q.X → p.Y = q.Y
NÕu cã mét tËp phô thuéc hµm F trªn mét lîc ®å quan hÖ U th× ta nãi r»ng cã
mét s¬ ®å quan hÖ W = <U,F>.
1.5. ChuÈn hãa lîc ®å quan hÖ
Häc viÖn C«ng nghÖ BCVT

Héi nghÞ Khoa häc lÇn thø 5
D¹ng chuÈn 1NF (First Normal Form)
Mét lîc ®å U (hoÆc mét s¬ ®å quan hÖ W = <U,F>) ë d¹ng chuÈn 1NF
nÕu c¸c miÒn gi¸ trÞ cña c¸c thuéc tÝnh dÒu ®¬n trÞ . VÒ sau trong c¸c
d¹ng chuÈn 2NF, 3NF ta xÐt trªn s¬ ®å quan hÖ W = <U,F>. Tuy nhiªn cã n¬i
nµo ®ã ta nãi R th× hiÓu lµ quan hÖ bÊt kú trªn U.
D¹ng chuÈn 2NF
Gi¶ sö X vµ Y lµ hai tËp con cña U. Ta nãi r»ng Y lµ phô thuéc hµm ®Çy
®ñ vµo X nÕu Y phô thuéc hµm vµo X nhng Y kh«ng phô thuéc hµm vµo
bÊt kú tËp hîp con thùc sù nµo cña X.
Lîc ®å quan hÖ U ®îc gäi lµ ë d¹ng chuÈn 2NF nÕu nã lµ 1NF vµ mçi
thuéc tÝnh kh«ng khãa cña R lµ phô thuéc hµm ®Çy ®ñ vµo khãa.
V× mçi thuéc tÝnh bÊt kú lu«n lu«n phô thuéc hµm vµo khãa. Ta cã thÓ ph¸t
biÓu l¹i ®Þnh nghÜa trªn ®Ó nhÊn m¹nh h¬n b¶n chÊt cña d¹ng chuÈn 2NF:
Lîc ®å quan hÖ U ®îc gäi lµ ë d¹ng chuÈn 2NF nÕu nã lµ 1NF vµ mçi
thuéc tÝnh kh«ng khãa cña R lµ kh«ng phô thuéc hµm vµo mét phÇn
cña khãa.
D¹ng chuÈn 3NF
D¹ng chuÈn hai cho phÐp lo¹i trõ d thõa vÒ khãa. D¹ng chuÈn ba cho phÐp lo¹i
bá c¸c phô thuéc b¾c cÇu.
§Þnh nghÜa d¹ng chuÈn ba (Third normal form):
Mét s¬ ®å quan hÖ W = <U,F> ®îc gäi lµ ë d¹ng chuÈn 3NF nÕu vµ chØ nÕu:
Nã lµ d¹ng chuÈn hai.
C¸c thuéc tÝnh kh«ng khãa kh«ng phô thuéc hµm vµo tËp con kh«ng ph¶i
khãa.
Cho s¬ ®å quan hÖ W = <U,F>, X⊆U. Thuéc tÝnh A trong U ®îc gäi lµ phô
thuéc b¾c cÇu vµo X nÕu tån t¹i tËp Y⊆U sao cho:
X→Y, Y→A, Y -/→ X vµ A∉XY
Trong tr êng hîp chØ cã mét khãa, cã thÓ ®Þnh nghÜa quan hÖ ë d¹ng chuÈn ba
nh sau:
Nã lµ d¹ng chuÈn hai.
Häc viÖn C«ng nghÖ BCVT

LÜnh vùc C«ng nghÖ th«ng tin
C¸c thuéc tÝnh kh«ng khãa, kh«ng phô thuéc b¾c cÇu vµo khãa.
Ngêi ta x© y dùng nhiÒu kh¸i niÖm chuÈn hãa. Tuy nhiªn khi thiÕt kÕ c¸c
CSDL trong thùc tÕ th× ngêi ta thêng chØ ® ßi hái lµ CSDL ph¶i cã d¹ng chuÈn
3NF.
2. Mét sè CSDL kh«ng tháa tÝnh chuÈn hãa trong thùc tÕ
Sau ®©y chóng t«i chØ ra mét sè tr êng hîp c¸c CSDL kh«ng tháa tÝnh chuÈn
hãa. §©y lµ nh÷ng CSDL chóng t«i cã dÞp b¶o tr× hoÆc tham gia x©y dùng.
2.1. CSDL ngêi håi h¬ng ViÖt nam
§Çu nh÷ng n¨m 90 chóng t«i cã dÞp lµm viÖc trong dù ¸n trî gióp ngêi håi h¬ng
ViÖt nam cña Céng ®ång ch©u ¢u (EC). Mét trong nh÷ng c«ng viÖc cña chóng
t«i lµ b¶o tr× CSDL ngêi håi h¬ng ViÖt nam. CSDL nµy do Cao ñy Liªn hîp quèc
vÒ ngêi tÞ n¹n ë Hång C«ng cung cÊp. CSDL gåm nhiÒu b¶ng, trong ®ã b¶ng
quan träng nhÊt lµ RETURNEE.DBF chøa danh s¸ch nh÷ng ngêi håi h¬ng.
Danh s¸ch nµy ®îc cËp nhËt thêng xuyªn. Cho ®Õn khi kÕt thóc dù ¸n th× tæng
sè ngêi håi h¬ng kho¶ng 120 ngh×n ngêi. TÖp RETURNEE.DBF cã nhiÒu tr-
êng, vÝ dô sè cao ñy gåm 12 ký tù, hä tªn, m· tØnh, m· huyÖn, tªn tØnh, tªn
huyÖn, lµng x·...DÔ thÊy r»ng c¸c tr êng tªn tØnh vµ tªn huyÖn lµ d thõa v×
trong tÖp nµy ®· cã m· tØnh, m· huyÖn, ®ång thêi cã c¸c tÖp danh s¸ch tØnh,
danh s¸ch huyÖn. TÖp nµy cã khãa lµ sè cao ñy. Nh vËy ta cã thÓ thÊy lµ tªn
tØnh phô thuéc hµm vµo m· tØnh, tªn huyÖn phô thîc hµm vµo m· tØnh vµ m·
huyÖn. Nh vËy CSDL nµy kh«ng tháa tÝnh chuÈn hãa 3NF. Vµo ®Çu nh÷ng
n¨m 90 cÊu h×nh cña c¸c m¸y vi tÝnh cßn rÊt thÊp: ®Üa cøng chØ kho¶ng 40 M,
bé nhí trong 1 M. Nh vËy víi tÖp hµng tr¨m ngh×n b¶n ghi th× sù d thõa lµ rÊt
®¸ng kÓ. Ban ®Çu b¶n th©n chóng t«i còng thÊy r»ng thiÕt kÕ nh vËy lµ kh«ng
hîp lý. Tuy nhiªn vÒ sau trong qu¸ tr×nh b¶o tr×, chóng t«i nhËn ra r»ng cã lóc
d÷ liÖu d thõa l¹i trë thµnh nh÷ng th«ng tin cã Ých gióp chóng t«i hiÖu chØnh
sè liÖu. Hµng th¸ng khi nhËn sè liÖu míi chóng t«i ph¶i kiÓm tra kü tr íc khi
cËp nhËt. NhiÒu lóc x¶y ra tr êng hîp cã ngêi trong danh s¸ch míi thùc ra ®· cã
trong danh s¸ch cò, nhng chØ v× cã mét sè sai sãt trong m· cao uû hay m· tØnh,
m· huyÖn. Lóc nµy nÕu kiÓm tra b»ng m¾t cã thÓ dÔ dµng ph¸t hiÖn ra sai sãt
nhê vµo th«ng tin d thõa. M· tØnh, m· huyÖn lµ c¸c con sè kh«ng cã tÝnh gîi
nhí: 01 lµ Hµ néi, 02 lµ H¶i Phßng, 03 lµ Tp HCM... NÕu chØ c¨n cø vµo m· sè
th× chØ cÇn mét chót sai sãt th× cã thÓ chuyÓn mét ngêi tõ Hµ Néi sang tØnh
kh¸c. Cßn nÕu cã thªm th«ng tin tªn tØnh th× rÊt khã cã thÓ xÈy ra sai sãt t-
Häc viÖn C«ng nghÖ BCVT

