Chỉång
1.
TÄØNG
QUAN
VÃƯ
CÅ
SÅÍ
DỈỴ
LIÃÛU
Chỉång
1:
TÄØNG
QUAN
VÃƯ
CÅ
SÅÍ
DỈỴ
LIÃÛU
1
Chỉïc
Nàng
Ca
Mäüt
Hãû
Qun
Trë
Cå
Såí
Dỉỵ
Liãûu
1.1.
Cạc
Khại
Niãûm
Vãư
Cå
Såí
Dỉỵ
Liãûu
Âãø dãù dng cho viãûc gii thiïch cạc khại niãûm
vãư Cå Såí Dỉỵ Liãûu, trỉåïc hãút ta
xem xẹt hãû thäúng bạn vẹ may bay bàòng mạy tênh. Dỉỵ liãûu lỉu trỉỵ trong mạy tênh
bao gäưm cạc thäng tin vãư hnh khạch, chuún bay, âỉåìng bay Mi thäng tin vãư
mäúi quan hãû ny âỉåüc biãøu diãùn trong mạy tênh thäng qua viãûc âàût chäø
ca khạch
hng.
Váûy
lm
thãú
no
âãø
biãøu
diãùn
âỉåüc
dỉỵ
liãûu
âọ
v
âãø
âm
bo
cho
khạch
hng âi âụng chuún bay.
Táûp
håüp
dỉỵ
liãûu
trãn
âỉåüc
lỉu
trỉỵ
trong
mạy
tênh
theo
mäüt
quy
âënh
no
âọ
v
âỉåüc
gi
l
Cå
Såí
Dỉỵ
Liãûu(
Database
-
CSDL)
1.2.
Hãû
qun
trë
Cå
Såí
Dỉỵ
Liãûu
1.2.1
.
Âënh
nghéa
: Pháưn Chỉång trçnh cọ thãø xỉí l, thay âäøi dỉỵ liãûu
gi l hãû qun
trë Cå Såí Dỉỵ Liãûu (Database management System -
viãút tàõt DBMS)
1.2.2 Nhỉỵng kh nàng ca Hãû qun trë Cå Såí Dỉỵ Liãûu
Cọ hai âàûc tênh âãø phán biãût
DBMS våïi cạc hãû thäúng láûp trçnh khạc, âọ l:
1. Kh nàng qun l nhỉỵng dỉỵ liãûu cäú âënh
2.
Kh nàng truy xút cọ hiãûu qu
mäüt khäúi lỉåüng dỉỵ liãûu låïn
Âiãøm (1) khàón âënh ràòng
cọ mäüt CSDL täưn tải thỉåìng xun ; näüi dung ca Cå
Såí Dỉỵ Liãûu ny l nhỉỵng dỉỵ liãûu âỉåüc DBMS truy xút v qun l. Âiãøm (2) phán
biãût mäüt DBMS
våïi mäüt hãû thäúng táûp tin cng qun l dỉỵ liãûu nhỉng nọi chung
khäng cho phẹp truy xút nhanh chọng cạc thnh pháưn ty ca dỉỵ liãûu . Nhỉỵng
kh nàng ca mäüt DBMS s ráút cáưn thiãút khi säú lỉåüng dỉỵ liãûu ráút låïn.
Hai
âàûc
tênh
trãn
l
hai
âàûc
tênh
cå
bn
ca
mäüt
DBMS,
ngoi
ra
mäüt
DBMS thỉåìng cọ cạc kh nàng sau:
- Häù tråü êt nháút mäüt mä hçnh dỉỵ liãûu (Data model) nhåì âọ ngỉåìi sỉí dủng cọ thãø
xem âỉåüc dỉỵ liãûu.
- Häù tråü mäüt säú ngän ngỉỵ báûc cao cho phẹp ngỉåìi sỉí dủng âënh nghéa cạc cáúu trục
dỉỵ liãûu, truy xút v thao tạc dỉỵ liãûu .
-
Qun l giao dëch, nghéa l cho phẹp nhiãưu ngỉåìi sỉí dủng truy xút âäưng thåìi v
chênh xạc âãún mäüt Cå Såí Dỉỵ Liãûu .
-
Âiãưu khiãøn cạc quạ trçnh truy xút, l kh nàng giåïi hản cạc quạ trçnh truy xút
dỉỵ liãûu
ca nhỉỵng ngỉåìi khäng âỉåüc phẹp , v kh nàng kiãøm tra âäü tin cáûy ca
dỉỵ liãûu
Bi soản män Cå såí dỉỵ liãûu Nguùn Vàn Chỉï c
Trang 1
Chỉång
1.
TÄØNG
QUAN
VÃƯ
CÅ
SÅÍ
DỈỴ
LIÃÛU
-
Cạc âàûc tênh
tỉû thêch
ỉïng,
l kh nàng tỉû phủc häưi lải dỉỵ liãûu do sỉû cäú ca hãû
thäúng m khäng lm máút dỉỵ liãûu
1.3
Cạc
mä
hçnh
dỉỵ
liãûu
Mäüt DBMS cáưn phi cung cáúp êt nháút mäüt mä hçnh trỉìu tỉåüng qua âọ ngỉåìi
sỉí dủng cọ thãø tháúy âỉåüc dỉỵ liãûu khäng phi bàòng cạc bit “thä” m bàòng cạc dảng
dãù hiãøu, dãù nháûn biãút hån.
Trong thỉûc tãú cạc Cå Såí Dỉỵ Liãûu cọ thãø cọ mäüt vi mỉïc trỉìu tỉåüng , trong
âọ mỉïc tháúp nháút l táûp håüp cạc file dỉỵ liãûu ( Mỉïc váût l)
Vê dủ: Xẹt mäüt täøng cäng ty cọ nhiãưu cäng ty con v häư så vãư cạc nhán viãn ca
täøng cäng ty cọ thãø âỉåüc lỉu trỉỵ trong mäüt file dỉỵ liãûu gäưm cạc trỉåìng MNV( m
nhán viãn), HOTEN,
LUONG_NV,
ÂIACHI âãø âån gin ta gi thiãút cáúu trục
bn ghi gäưm 2 trỉåìng sau:
TEN_NV: h tãn nhán viãn
NGUOI_QL: H tãn giạm âäúc cäng ty nåi nhán viãn lm viãûc.
Khi âọ cáúu trục bn ghi nhỉ sau:
Record
TEN_NV: char[30];
NGUOI_QL: char[30];
end;
Khi âọ file dỉỵ liãûu l táûp cạc bn ghi v mäùi bn ghi chỉïa thäng tin vãư mäüt nhán
viãn
ca cäng ty.
Trong nhiãưu mä hçnh Cå Såí Dỉỵ Liãûu ngỉåìi ta sỉí dủng cạc quan hãû thay cho cạc file
Quan hãû : NHAN_VIEN(TEN_NV,NGUOI_QL)
Ta cáưn phán biãût giỉỵa file v quan hãû
Trong file cạc bn ghi khäng nháút thiãút phi phán biãût
Trong quan hãû, cạc bn ghi(bäü) cáưn phi phán biãût nhau.
1.4
Hiãûu
qu
truy
cáûp
dỉỵ
liãûu
Cạc hãû âiãưu hnh âãưu cọ kh nàng täø chỉïc v lỉu trỉỵ cạc táûp tin vç váûy viãûc lỉu trỉỵ
cạc táûp tin dỉỵ liãûu âäúi våïi DBMS l khäng âạng chụ . Hiãûu qu ca cạc DBMS trong
viãûc xỉí l trãn cạc táûp tin l täø chỉïc cạc táûp tin phủ hồûc cạc cäng củ häù tråü âãø truy cáûp
dỉỵ liãûu nhanh chọng, këp thåìi . Chàón hản cạc file INDEX, hồûc cạc hm HASH.
1.5
Qun
l
giao
dëch
Ngy nay do sỉû phạt triãøn ca mảng mạy tênh m cạc Cå Såí Dỉỵ Liãûu låïn cọ thãø
âỉåüc
sỉí
dủng
båíi nhiãưu
ngỉåìi trãn cạc mạy tênh khạc nhau vç váûy cạc DBMS cáưn phi
cung cáúp mäüt kh nàng qun l sỉû truy cáûp dỉỵ liãûu ca nhiãưu ngỉåìi sỉí dủng. Chàón hản
cạc dỉỵ liãûu vãư ti khon cụa ngán hng âỉåüc sỉí dủng båíi hng vản khạch hng trãn cạc
mạy tênh khạc nhau hồûc trãn cạc mạy âäøi tiãưn tỉû âäüng; Cå Såí Dỉỵ Liãûu phủc vủ cho viãûc
âàût
chäø
cho
mäüt
hng
hng
khäng
âỉåüc
sỉí
dủng
båíi
hng
ngn
âải
l
ca
hng
hng
khäng âọ trãn khàõp thãú giåïi. Viãûc truy cáûp âäưng thåìi thỉåìng xy ra hiãûn tỉåüng
xung âäüt
Bi soản män Cå såí dỉỵ liãûu Nguùn Vàn Chỉï c
Trang 2
Chỉång
1.
TÄØNG
QUAN
VÃƯ
CÅ
SÅÍ
DỈỴ
LIÃÛU
giao dëch giỉỵa cạc khạch hng trãn cng mäüt hảng mủc dỉỵ liãûu , vç váûy DBMS cáưn phi
cung cáúp mäüt kh nàng khọa dỉỵ liãûu (clock data) khi cọ ngỉåìi sỉí dủng truy cáûp âãún hảng
mủc dỉỵ liãûu âọ.
1.6
An
ton
dỉỵ
liãûu
Mäüt DBMS cáưn phi cọ kh nàng phủc häưi lải dỉỵ liãûu khi cọ sỉû hng học xy ra,
âäưng thåìi v ráút quan trng l bo vãû sỉû truy cáûp ca cạc ngỉåìi sỉí dủng khäng âỉåüc phẹp
. Âãø thỉûc hiãûn cäng viãûc ny cạc DBMS cho phẹp tảo ra cạc khung nhçn (View) m ngỉåìi
sỉí dủng chè âỉåüc phẹp quan sạt dỉỵ liãûu trãn cạc view. Chàón hản chụng ta cọ mäüt file dỉỵ
liãûu l NHAN_VIEN gäưm cạc trỉåìng
TEN ( H tãn nhán viãn)
DIA_CHI(âëa chè nhán viãn)
TEN_CTY( tãn cäng ty)
LUONG(lỉång nhán viãn)
nãúu sỉí dủng mä hçnh Quan hãû ta cọ Quan hãû sau:
NHAN_VIEN(TEN, DIA_CHI, TEN_CTY,LUONG)
Âãø mi ngỉåìi cọ thãø truy cáûp vo file dỉỵ liãûu ny nhỉng khäng âỉåüc biãút lỉång ca nhán
viãn. Trong ngän ngỉỵ SQL khung nhçn âỉåüc
tảo ra nhỉ sau:
CREAT VIEW L_NHAN_VIEN
SELECT TEN, DIA_CHI,TEN_CTY
FROM NHAN_VIEN;
Khi
âọ
khung
nhçn
âỉåüc
tảo
ra
nhỉ
mäüt
quan
hãû våïi
tãn
L_NHAN_VIEN(TEN,
DIA_CHI, TEN_CTY). Khung nhçn ny khäng täưn tải váût l nhỉ táûp tin , nhỉng cọ thãø
váún tin nọ giäúng nhỉ táûp tin.
2.
Kiãún
trục
mäüt
Hãû
qun
trë
Cå
Såí
Dỉỵ
Liãûu
Mäüt Hãû qun trë
Cå Såí Dỉỵ Liãûu âỉåüc mä t båíi 3 mỉïc trỉìu tỉåüng sau
Nhọm UESR 1
Nhọm UESR 2
.
.
.
Nhọm UESR n
Khung nhçn 1
Khung nhçn 2
.
.
.
Khung nhçn n
Cå Såí Dỉỵ Liãûu
khại niãûm
CSDL
váût
l
Âỉåüc viãút bàòng
ngän ngỉỵ âënh
nghéa dỉỵ liãûu
lỉåüc âäư con
Âỉåüc viãút bàòng ngän
ngỉỵ âënh nghéa dỉỵ liãûu
Âỉåüc ci âàût trãn
thiãút bë váût l
Bi soản män Cå såí dỉỵ liãûu Nguùn Vàn Chỉï c
Trang 3
Chỉång
1.
TÄØNG
QUAN
VÃƯ
CÅ
SÅÍ
DỈỴ
LIÃÛU
2.1
Mỉïc
Cå
Såí
Dỉỵ
Liãûu
váût
l(
physical
level)
L mäüt táûp cạc táûp tin (file) v cạc file chè mủc (Index) hồûc cạc cáúu trục lỉu trỉỵ
khạc
dng âãø truy xút
chụng mäüt cạch cọ hiãûu qu , gi l Cå Såí Dỉỵ Liãûu váût l. Cå Såí
Dỉỵ Liãûu váût l täưn tải thỉåìng xun trong thiãút bë lỉu trỉỵ nhỉ âéa tỉì.
2.2
Mỉïc
Cå
Såí
Dỉỵ
Liãûu
khại
niãûm
(Concept
level
)
Cå Såí Dỉỵ Liãûu khại niãûm l sỉû trỉìu tỉåüng họa
ca thãú giåïi thỉûc khi nọ dỉåüc gàõn
våïi
ngỉåìi
sỉí
dủng
Cå
Såí
Dỉỵ
Liãûu.
Cạc
DBMS
cung
cáúp
ngän
ngỉỵ
âëng
nghéa
dỉỵ
liãûu
(data definition language DDL), âãø mä t lỉåüc âäư khại niãûm
(conceptual scheme)v nọ
s âỉåüc ci âàût bàòng lỉåüc âäư váût l (physical scheme). DDL cho chụng ta mä t Cå Såí Dỉỵ
Liãûu khại niãûm nhåì cạc thût ngỉỵ ca “Mä hçnh dỉỵ liãûu “ , chàón hản nhỉ trong mä hçnh
quan hãû dỉỵ liãûu âỉåüc trçnh by
qua cạc bng våïi cạc cäüt l cạc thüc tênh
cạc hng l cạc
“bäü” tỉång tỉû nhỉ cạc máùu tin.
2.3
Khung
nhçn(VIEW)
Khung nhçn(view) hay lỉåüc âäư con (Subscheme)l mäüt pháưn ca Cå Såí Dỉỵ Liãûu
khại
niãûm hồûc
l
sỉû
trỉìu tỉåüng họa mäüt
pháưn Cå Såí
Dỉỵ
Liãûu
khại niãûm
. háưu
hãút cạc
DBMS
âãưu cung cáúp phỉång tiãûn âãø khai bạo khung nhçn ,
âỉåüc gi l ngän ngỉỵ âënh
nghéa
dỉỵ
liãûu
lỉåüc
âäư
con(
subscheme
data
definition
language)
v
cạc
phỉång
tiãûn
âãø
thao
tạc
v
váún
tin
trãn
khung
nhçn
gi
l
ngän
ngỉỵ
thao
tạc
dỉỵ
liãûu
lỉåüc
âäư
con
(subscheme data manipulation language)
Thê
dủ1
Chụng ta thỉí phán têch cạc khạc biãût giỉỵa cạc mỉïc váût l, khêa niãûm, khung nhçn
nhåì vo tênh tỉång tỉû ca chụng våïi cạc ngän ngỉỵ láûp trçnh. Củ thãø ta s nọi vãư mng:
- ÅÍ mỉïc khại niãûm
mng cọ thãø khia bạo nhỉ sau:
Integer array A[1 n,1 m]
Cn
åí
mỉïc
váût
l,
mng
A
âỉåüc
lỉu
trỉỵ
trong
mäüt
vng
liãn
tủc
bàõt
âáưu
tỉì
âëa
chè
a
0
theo
thỉï
tỉû
hãút
cäüt
âãún
dng.
Pháưn
tỉí
A[i,j]
s
åí
vë
trê
a
0
+4(m(i-j)+j-1)
ÅÍ mỉïc khung nhçn, ta cọ thãø tảo ra nhiãưu khung nhçn ty . Chàón hản
m
j=1
Lỉåüc
âäư
v
thãø
hiãûn
f(i)=
∑
]j,i[A
cho
biãút
täøng
cạc
pháưn
tỉí
trãn
dng
Ngoaỡi vióỷc phỏn chia
mổùc trổỡu tổồỹng
nhổ trong phỏửn (2)
chuùng ta coỡn coù mọỹt
caùch hióứu khaùc vóử Cồ Sồớ Dổợ Lióỷu . Khi thióỳt kóỳ
chuùng ta quan tỏm õóỳn nhổợng hoaỷch õởnh
(plan) trón Cồ Sồớ Dổợ Lióỷu ;
nhổng khi sổớ duỷng chuùng ta laỷi quan tỏm õóỳn nhổợng dổợ lióỷu
thổỷc sổỷ tọửn taỷi trong Cồ Sồớ Dổợ Lióỷu . Cỏửn phaới hióứu rũng dổợ lióỷu trong Cồ Sồớ Dổợ Lióỷu
thổoỡng xuyón thay õọứi , trong khi caùc plan vỏựn nhổ cuợ.
Nọỹi
dung
hióỷn
thồỡi
cuớa
Cồ
Sồớ Dổợ
Lióỷu goỹi laỡ thóứ hióỷn
(instance)
cuớa
Cồ
Sồớ
Dổợ
Lióỷu .Thuỏỷt ngổợ Lổồỹc õọử (Scheme) õổồỹc duỡng õóứ noùi õóỳn caùc hoaỷch õởnh naỡy vỗ vỏỷy khi
noùi õóỳn lổồỹc õọử khaùi nióỷm laỡ noùi vóử hoaỷch õởnh cho Cồ Sồớ Dổợ Lióỷu khaùi nióỷm , vaỡ chuùng
ta goỹi hoaỷch õởnh Cồ Sồớ Dổợ Lióỷu vỏỷt lyù laỡ lổồỹc õọử vỏỷt lyù.
Thờ
duỷ
2
Baỡi soaỷn mọn Cồ sồớ dổợ lióỷu Nguyóựn Vn Chổù c
Trang 4
Chổồng
1.
TỉNG
QUAN
Vệ
C
S
Dặẻ
LIU
Chuùng ta tióỳp tuỷc vồùi maớng trong vờ duỷ 1. Mọ taớ maớng vaỡ haỡm õổồỹc õổa ra trong
thờ duỷ õoù thổỷc sổỷ laỡ thọng tin kióứu lổồỹc õọử.
1.
Lổồỹc
õọử
vỏỷt
lyù
laỡ
móỷnh
õóử:
Phỏửn
tổớ
A[i,j]
seợ
ồớ
vở
trờ
a
0
+4(m(i-j)+j-1),
khún
õởnh
rũng
maớng
A
õổồỹc
lổu
taỷi
vở
trờ
bừt
õỏửu
laỡ
a
0
vaỡ
phỏửn
tổớ
a[i,j]
õổồỹc
lổu
ồớ
vở
trờ
a
0
+4(m(i-j)+j-1)
2. Lổồỹc õọử khaùi nióỷm laỡ khai baùo Integer array A[1 n,1 m]; A laỡ mọỹt maớng sọỳ nguyón
vồùi n haỡng vaỡ m cọỹt.
3. Lổồỹc õọử con laỡ õởnh nghộa cuớa haỡm f, nghộa laỡ
m
j=1
óứ õổa ra mọỹt thờ duỷ vóử mọỹt thóứ hióỷn cuớa lổồỹc õọử khaùi nióỷm naỡy , chuùng ta coù thóứ
cho n=m=3 khi õoù A laỡ mọỹt ma phổồng:
8
1
6
3
5
7
4
9
2
Khi
õoù
thóứ
hióỷn
vỏỷt
lyù
(Physical
instance)seợ
laỡ
9
word
khồới
õỏửu
tổỡ
vở
trờ
a
0
theo
thổù
tổỷ chổùa 8
1
6
3
5
7
4
9
2. Cuọỳi cuỡng thóứ hióỷn khung nhỗn view laỡ haỡm
f(1)=f(2)=f(3)=15
Tờnh
ọỹc
lỏỷp
dổợ
lióỷu
.
Sồ õọử vóử caùc mổùc trổỡu tổồỹng trong phỏửn (2)
chố roợ õi tổỡ khung nhỗn qua Cồ Sồớ Dổợ
Lióỷu khaùi nióỷm õóỳn Cồ Sồớ Dổợ Lióỷu vỏỷt lyù
õổa ra hai mổùc õọỹc lỏỷp dổợ lióỷu (data
independence).
-
ọỹc lỏỷp
dổợ
lióỷu
vỏỷt
lyù
(physcal data independence) :
Chuùng
ta coù
thóứ
thay õọứi
lổồỹc
õọử
vỏỷt
lyù
maỡ
khọng
laỡm
aớnh
hổồớng
õóỳn
lổồỹc
õọử
khaùi
nióỷm
hay
phaới
õởnh
f(i)=
]j,i
nghộa laỷi caùc lổồỹc õọử con. Noù khún õởnh rũng vióỷc sổớa õọứi vóử tọứ chổùc vóử Cồ Sồớ Dổợ
Lióỷu vỏỷt lyù coù thóứ aớnh hổồớng õóỳn tờnh hióỷu cuớa caùc chổồng trỗnh ổùng duỷng , nhổng
khọng bao giồỡ phaới vióỳt laỷi nhổợng chổồng trỗnh naỡy.
- ọỹc lỏỷp dổợ lióỷu logic (logical data independence) õổồỹc õổa ra bồới mọỳi quan hóỷ
giổợa khung nhỗn vaỡ Cồ Sồớ Dổợ Lióỷu khaùi nióỷm. Khi sổớ duỷng Cồ Sồớ Dổợ Lióỷu cuợng
coù
thóứ
cỏửn
phaới
sổớa
õọứi
lổồỹc
õọử
khaùi
nióỷm,
coù
nhióửu
sổớa
õọứi
lổồỹc
õọử
khaùi
nióỷm
khọng
laỡm
aớnh
hổồớng
õóỳn
caùc
lổồỹc
õọử
con
hióỷn
coù,
vaỡ
cuợng
coù
mọỹt
sọỳ
sổớa
õọứi
khaùc seợ cỏửn phaới õởnh nghộa laỷi
caùc aùnh xaỷ tổỡ lổồỹc õọử con õóỳn lổồỹc õọử khaùi nióỷm .
trổồỡng hồỹp naỡy khọng cỏửn thay õọứi chổồng trỗnh ổùng duỷng . Mọỹt laoỹi thay õọứi duy
nhỏỳt trong lổồỹc õọử khaùi nióỷm buọỹc phaới thay õọứi lổồỹc õọử con
laỡvióỷc xoùa caùc thọng
Baỡi soaỷn mọn Cồ sồớ dổợ lióỷu Nguyóựn Vn Chổù c
Trang 5
Chổồng
1.
TỉNG
QUAN
Vệ
C
S
Dặẻ
LIU
tin tổồng ổùng
vồùi caùc thọng tin õang tọửn taỷi trong lổồỹc õọử con .
Nhổợng thay õọứi
naỡy õoỡi hoới phaới thay õọứi chổồng trỗnh ổùng duỷng.
3.
Caùc
ngọn
ngổợ
cuớa
Cồ
Sồớ
Dổợ
Lióỷu
Trong
caùc
ngọn
ngổợ lỏỷp
trỗnh
caùc chố thở mọ
taớ vaỡ caùc chố thở thổỷc hióỷn laỡ 2 bọỹ
phỏỷn cuớa mọỹt ngọn ngổợ, trong caùc Hóỷ quaớn trở Cồ Sồớ Dổợ Lióỷu hai chổùc nng mọ taớ
vaỡ xổớ lyù noùi chung õổồỹc chia thaỡnh 2 ngọn ngổợ khaùc nhau.
1. Ngọn ngổợ õởnh nghộa dổợ lióỷu(data definition language - DDL)
ỏy khọng phaới laỡ ngọn ngổợ thuớ tuỷc maỡ chố laỡ mọỹt hóỷ thọỳng kyù hióỷu õóứ mọ taớ caùc
loaỷi õọỳi tổồỹng vaỡ quan hóỷ giổợa chuùng .
Vờ
duỷ
3
Chuùng ta coù thóứ õởnh nghộa mọỹt quan hóỷ
mọ taớ mọỹt chuyóỳn bay thổỷc hióỷn bồới mọỹt
haợng haỡng khọng vồùi õởnh nghộa dổợ lióỷu nhổ sau:
CREAT TABLE FLIGHT(NUMBER: INT, DATE CHAR(6), SEAT:INT, FROM
: CHAR(3),
TO : CHAR(3))
oaỷn maợ trón laỡ mọỹt thờ duỷ vóử ngọn ngổợ õởnh nghộa dổợ lióỷu SQL , noù mọ taớ quan hóỷ vaỡ
caùc thuọỹc tờnh cuỡng vồùi vióỷc caỡi õỷt vỏỷt lyù cuớa chuùng
laỡ caùc sọỳ nguyón vaỡ chuọứi coù õọỹ daỡi
cọỳ õởnh.
2.
Ngọn
ngổợ
thao
taùc
dổợ
lióỷu
Caùc thao taùc trón Cồ Sồớ Dổợ Lióỷu õọửi hoới phaới coù mọỹt ngọn ngổợ õỷc bióỷt
goỹi laỡ ngọn ngổợ
thao
taùc
dổợ
lióỷu
(data
manipulation
language-
DML)
hay
coỡn
goỹi
laỡ
ngọn
ngổợ
vỏỳn
tin
(Query language).
Vờ
duỷ
4
Vồùi Cồ Sồớ Dổợ Lióỷu caùc chuyóỳn bay FLIGHT õổồỹc õởnh nghộa bũng ngọn ngổợ SQL trong
vê dủ 3, trong ngän ngỉỵ SQL ta cọ thãø thỉûc hiãûn cạc thao tạc sau:
a. Gim 4 chäø ngäưi cn träúng trãn chuún bay 123 ngy 31 thạng tạm
UPDATE FLIGHT
SET SEAT=SEAT-4
WHERE
NUMBER=123 AND DATE=’AUG 31’
b. nháûp vo chuún bay 456 våïi 100 chäø ngäưi tỉì h näüi âi â nàơng ngy 21 thạng tạm
INSERT INTO FLIGHT
VALUE(456, ‘AUG 21’, ‘HANOI’, ‘DANANG’)
c. Tçm xem trong Cå Såí Dỉỵ Liãûu cọ bao nhiãu chäø ngäưi cn träúng
trong chuún bay säú
999 ngy 24 thạng 7
SELECT SEAT
FROM FLIGHT
WHERE NUMBER=999AND DATE=’JUL 24’
Bi soản män Cå såí dỉỵ liãûu Nguùn Vàn Chỉï c
Trang 6
Chỉång
1.
TÄØNG
QUAN
VÃƯ
CÅ
SÅÍ
DỈỴ
LIÃÛU
3. Ngän ngỉỵ ch
Cạc
chè thë ca
cạc
ngän
ngỉỵ
thao tạc
dỉỵ
liãûu
thỉåìng
l
âån
gin hay nọi cạch khạc l
thỉûc
hiãûn
nhỉỵng
phẹp
xỉí
l
âån
gin,
nhỉng
trong
trong
quạ trçnh
thỉûc hiãûn cäng viãûc
trãn Cå Såí Dỉỵ Liãûu cọ thãø phi xỉí l cạc cäng viãûc phỉïc tảp hån
nhỉ soản tho vàn bn
bạo cạo , in áún vç váûy cạc Hãû qun trë Cå Såí Dỉỵ Liãûu cáưn phi cọ sỉû häø tråü
ca cạc
ngän ngỉỵ thûn tiãûn
cho viãûc láûp trçnh
nhỉ C hay COBOL gi l cạc ngän ngỉỵ ch(
host language).
Cạc lãûnh ca DMLb âỉåüc nhụng vo ngän ngỉỵ ch
theo hai cạch
a. Cạc lãûnh ca DML
âỉåüc kêch hoảt bàòng viãûc gi cạc th tủc
âỉåüc cung cáúp båíi Hãû
qun trë Cå Såí Dỉỵ Liãûu
b. Cạc lãûnh ny
l cạc chè thë trong ngän ngỉỵ ch âỉåüc måí räüng
Bi soản män Cå såí dỉỵ liãûu Nguùn Vàn Chỉï c
Trang 7
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LIÃÛ
U
CHỈÅNG
2
CẠC
MÄ
HÇNH
DỈỴ
LIÃÛU
CHO
CẠC
HÃÛ
CÅ
SÅÍ
DỈỴ
LIÃÛU
2.1
MÄ
HÇNH
DỈỴ
LIÃÛU
Âënh
nghéa:
Mä hçnh dỉỵ liãûu l mäüt hãû hçnh thỉïc toạn hc
gäưm hai pháưn:
1. Mäüt hãû thäúng k hiãûu âãø mä t dỉỵ liãûu .
2. Táûp håüp cạc phẹp toạn thao tạc trãn dỉỵ liãûu âo.ï
Trong chỉång ny ta s tçm hiãøu cạc mä hçnh
âỉåüc sỉí dủng räüng ri hiãûn nay l Mä hçnh
THỈÛC
THÃØ
-
QUAN
HÃÛ
,mä hçnh
QUAN
HÃ,
mä hçnh
MẢNG
v mä hçnh
PHÁN
CÁÚP
2.2
MÄ
HÇNH
THỈÛC
THÃØ
-QUAN
HÃÛ
Mủc âêch ca mä hçnh thỉûc thãø -quan hãû (Entity - relationship model) l cho phẹp
mä t lỉåüc âäư khại niãûm
ca thãú giåïi thỉûc(xê nghiãûp, cå quan ) m khäng cáưn chụ âãún
tênh hiãûu qu hồûc thiãút kãú Cå Såí Dỉỵ Liãûu váût l. Âáy l mä hçnh trung gian âãø chuøn
âäøi qua cạc mä hçnh dỉỵ liãûu khạc nhỉ mä hçnh quan hãû , mä hçnh mảng, mä hçnh phán
cáúp
Sau
âáy l cạc khại niãûm sỉí dủng trong mä hçnh ny:
2.2.1THỈÛC
THÃØ
Thût ngỉỵ “thỉûc thãø ”(entity)khäng âỉåüc âënh nghéa mäüt cạch hçnh thỉïc , cng
giäúng nhỉ cạc thût ngỉỵ “Âiãøm” v “âỉåìng” trong hçnh hc, Chụng ta cọ thãø hiãøu ràòng
thỉûc thãø l mäüt
sỉû váût
hay mäüt cại gç âọ
täưn tải v phán biãût âỉåüc. Thê dủ mäùi con ngỉåìi
l mäüt thỉûc thãø , mäùi chiãúc xe mạy cng l mäüt thỉûc thãø , chụng ta cng cọ thãø nọi mäùi
con kiãún l mäüt thỉûc thãø
nãúu chụng ta cọ cạch phán biãût âỉåüc con ny våïi con khạc( chàón
hản ta âạnh mäüt säú cỉûc nh trãn mäùi con kiãún).
Khại niãûm vãư “tênh phán biãût âỉåüc” âäưng nháút våïi khại niãûm “ nháûn dảng âäúi
tỉåüng” , vç l do ny m mä hçnh
thỉûc
thãø
-quan
hã
thỉåìng âỉåüc xem nhỉ l mäüt mä hçnh
hỉåïng âäúi tỉåüng.
2.2.2TÁÛP
THỈÛC
THÃØ
Mäüt nhọm bao gäưm cạc thỉûc thãø “tỉång tỉû”
tảo ra mäüt táûp thỉûc thãø (entity set)
vê dủ
1. Táút c mi ngỉåìi l mäüt táûp thỉûc thãø
2. Táút c cạc Giạo viãn
thüc ÂHKT&QTKD l mäüt táûp thỉûc thãø
3. táút c cạc sinh viãn khoa TC_THÄÚNG KÃ cng l mäüt táûp thỉûc thãø
Âãø xạc âënh táûp thỉûc thãø
cáưn phi xạc âënh mäüt táûp hỉỵu hản cạc tênh cháút khạc
nhau ca cạc thỉûc thãø trong táûp thỉûc thãø âọ.
Mäüt trong nhỉỵng bỉåïc then chäút trong viãûc lỉûa chn cạc mä hçnh Cå Såí Dỉỵ Liãûu
chỉïa thäng tin phn ạnh vãư mäüt hãû thäúng no âọ l viãûc chn cạc táûp thỉûc thãø
trong hãû
thäúng âọ.
Bi soản Cå såí dỉỵ liãûu Trang 1
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LI
ÃÛU
2.2.3
THÜC
TÊNH
v
KHỌA
Mäüt táûp thỉûc thãø cọ mäüt táûp cạc tênh cháút âàûc trỉng gi l táûp thüc tênh(atribute),
mäùi thỉûc thãø âỉåüc xạc dënh båíi mäüt bäü dỉỵ liãûu ca cạc thüc tênh thãø hiãûn thäng tin vãư
thüc tênh âọ. ỈÏng våïi mäùi thüc tênh cọ mäüt táûp giạ trë
m thüc tênh âọ cọ thãø nháûn
gi
l miãưn(domain) giạ trë ca thüc tênh âọ.
Vê dủ miãưn giạ trë ca thüc tênh Tøi l (0,120), ca thüc tênh Tãn l cạc chøi
k tỉû cọ âäü di täúi âa 30 k tỉû , hay domain ca thüc tênh Giåïi tênh l { Nam, Nỉỵ},
Viãûc chn cạc thüc tênh l bỉåïc quan trng
trong thiãút kãú så âäư Cå Såí Dỉỵ Liãûu.
Mäüt
thüc
tênh
hay
1
táûp
täúi
thiãøu
cạc
thüc
tênh
m
giạ
trë
ca
nọ
nháûn
dảng
1
thỉûc
thãø
mäüt
cạch
duy
nháút
trong
táûp
thỉûc
thãø
gi
l
khọa
(key)
ca
táûp
thỉûc
thãø
.
vê dủ 5
Xẹt táûp thỉûc thãø Sinh viãn ca khoa TC_THÄÚNG KÃ
våïi cạc thüc tênh
Htãn,
û
nGy
sinh,
LåïP,
Âchè
ta cọ thãø chn
Htãn
lm khọa
nãúu xạc âënh âỉåüc ràòng trong khoa
khäng cọ 2 ngỉåìi no
trng h v tãn nhau, ngỉåüc lải ta cọ thãø ch thãm cạc thüc tênh khạc
âãø phán biãût nhỉ
nGy
sinh
âãø lm khạo cho táûp thỉûc thãø sinh viãn .
2.2.4.CẠC
MÄÚI
QUAN
HÃÛ
Cho
cạc
táûp
thỉûc
thãø
E
1
,
E
2
, ,
E
k
.
Mäüt
mäúi
quan
hãû
R
giỉỵa
cạc
táûp
thỉûc
thãø
l
mäüt
danh sạch cọ thỉï tỉû giỉỵa cạc táûp thỉûc thãø âọ, Danh sạch cạc táûp thỉûc thãø khäng nháút thiãút
phi phán biãût. Cọ nghéa l mäüt táûp thỉûc thãø cọ thãø xút hiãûn nhiãưu hån mäüt láưn trong
Quan hãû.
R=<F
1
,
F
2
, ,F
n
>
trong
âọ
F
i
∈
{
E
1
,
E
2
, ,
E
k
}.
Mäùi
hiãûn
hnh
ca
mäúi
quan
hãû
R
l
mäüt
táûp
cạc
bäü
<e
1
,
e
2
, ,e
n
>
trong
âọ
e
i
∈
F
i
gi
l
n_bäü.
Cho
2
táûp
thỉûc
thãø
E
1
,E
2
,
R
l
mäúi
quan
hãû
giỉỵa
E
1
v
E
2
.
ta
cọ
cạc
âënh
nghéa
sau:
1.Quan
hãû
ISA
(is
a)
Nãúu
mäùi
thỉûc
thãø
ca
E
1
cng
l
thỉûc
thãø
ca
E
2
thç
quan
hãû
R
gi
l
mäúi
quan
hãû
ISA
E
1
ISA
E
2
âc
l
E
1
l
“mäüt”
E
2
.
vê
dủ:
E
2
l
táûp
thỉûc
thãø
cạc
sinh
viãn
khoa
THÄÚNG
KÃ-TIN
HC
E
1
l
táûp
thỉûc
thãø
cạc
sinh
viãn
khoa
THÄÚNG
KÃ-TIN
HC
cọ
hc
bäøng
nàm
hc
98-99
khi
âọ
ta
cọ
E
1
ISA
E
2.
Mủc
âêch
ca
mäúi
quan
hãû
ny
l
cạc
thỉûc
thãø
ca
táûp
thỉûc
thãø
E
1
thỉìa
hỉåíng
cạc
thüc
tênh
ca
E
2
ngoi
ra
E
1
cn
cọ
nhỉỵng
thüc
tênh
riãng
ca
mçnh.
Vê
dủ
trong
cäng
ty
cọ
táûp thỉûc thãø NHÁN_VIÃN( MANV, TÃNNV, TI, ÂËA_CHÈ,LỈÅNG). Nãúu cäng ty
thnh láûp mäüt âäüi bọng chuưn thç täút nháút nãn thiãút kãú mäüt táûp thỉûc thãø PLAY(NÀM_
táûp thỉûc thãø PLAY cọ mäúi quan hãû ISA våïi táûp thỉûc thãø NHÁN_VIÃN. Nhỉ váûy mäùi thỉûc
Bi soản Cå såí dỉỵ liãûu Trang 2
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LIÃÛ
U
thãø trong THI_ÂÁÚU, CHIÃƯU_CAO) v táûp thỉûc thãø PLAY cng cọ táút c cạc thüc tênh
ca táûp thỉûc thãø NHÁN_VIÃN nhỉng chè cọ nhỉỵng thỉûc thãø trong táûp thỉûc thãø PLAY måïi
cọ cạc thüc tênh nhỉ NÀM_THI_ÂÁÚU, CHIÃƯU_CAO.
2.
Mäúi
quan
hãû
mäüt_mäüt(one_one
relationshiP)
Nãúu mäùi thỉûc thãø ca E1 cọ quan hãû våïi âụng 1 thỉûc thãø ca E2 v ngỉåüc lải, thç
mäúi quan hãû ny gi l mäúi quan hãû mäüt_mäüt giỉỵa E1 v E2.
Vê dủ Mäúi quan hãû
QUAN_L giỉỵa hai táûp thỉûc thã LANH_ÂAO
v táûp thỉûc thãø
PHONG_BAN
l mäúi quan hãû Mäüt_mäüt nãúu gi thiãút ràòng mäüt lnh âảo chè qun l mäüt
Ỵ Ø
Í Ỵ Û
Ì
phng v mäüt phng chè
cọ mäüt ngỉåìi qun l.
3.
Mäúi
quan
hãû
nhiãưu_mäüt(many-one
relationshiP)
Nãúu
mäùi
thỉûc
thãø
trong
E
1
cọ
quan
hãû
våïi
nhiãưu
nháút
1
thỉûc
thãø
trong
E2,
v
mäùi
thỉûc thãø trong E2 cọ thãø
khäng cọ quan hãû våïi thỉûc thãø no hồûc cọ quan hãû våïi 1 hồûc
nhiãưu thỉûc thãø trong E1. Mäúi quan hãû ny âỉåüc gi l mäúi quan hãû nhiãưu_mäüt tỉì E1 vo
E2.
Vê dủ: mäúi quan hãû giỉỵa hai táûp thỉûc thãø NHÁN_VIÃN v PHONG_BAN l mäúi
quan hãû nhiãưu_mäüt tỉì NHÁN_VIÃN vo PHONG_BAN, cọ nghéa l mäùi nhán viãn chè
lm viãûc trong mäüt phng v mäùi phng cọ thãø cọ nhiãưu nhán viãn lm viãûc, cng cọ
trỉåìng håüp mäüt vi nhán viãn khäng thüc mäüt phng no c nhỉ giạm âäúc.
Khại niãûm mäúi quan hãû nhiãưu_mäüt âỉåüc täøng quạt họa cho ba táûp thỉûc thãø tråí lãn
nhỉ sau:
Nãúu
cọ
mäüt
mäúi
quan
hãû
R
giỉỵa
cạc
táûp
thỉûc
thãø
E
1
,E
2
, ,E
k
v
våïi
cạc
thỉûc
thãø
trong táút c cạc táûp thỉûc thãø trỉì Ei chè cọ nhiãưu nháút mäüt thỉûc thãø ca Ei quan hãû våïi
chụng
,
thç
ta
gi
R
l
mäúi
quan
hãû
nhiãưu_mäüt
tỉì
E
1
, ,E
i-1
, ,E
k
vo
E
i
.
4.
mäúi
quan
hãû
nhiãưu_nhiãưu(
many_many
relationshiP)
Trong mäúi quan hãû ny khäng cọ mäüt hản chãú trãn táûp cạc k_bäü ca cạc thỉûc thãø
khi xút hiãûn trong cạc quan hãû . thê dủ mäúi quan hãû CHA_ME_CA ca táûp thỉûc thãø
NGỈÅÌI l mäúi quan hãû nhiãưu nhiãưu, vç
mäùi âỉïa tr cọ thãø tçm âỉåüc cha mẻ cho chụng v
mäüt ngỉåìi cọ thãø cọ säú lỉåüng con ty .
vê dủ:
E
1
:
táûp
cạc
sinh
viãn
ca
khoa
TC_THÄÚNG
KÃ
E
2
táûp
håüp
cạc
män
thãø
thao
R l quan hãû
thêch
thãø
thao
l mäúi quan hãû nhiãưu_nhiãưu
Trong thỉûc tãú cạc hãû qun trë cå såí dỉỵ liãûu khäng häù tråü mäúi quan hãû ny, âãø biãøu diãùn
mäúi quan hãû ny trong thiãút kã thäng thỉåìng ngỉåìi ta tạch thnh cạc mäúi quan hãû nhiãưu
_mäüt
2.2.5
Så
âäư
mäúi
quan-hãû
thỉûc
thãø
Âãø mä t thäng tin vãư cạc táûp thỉûc thãø v cạc mäúi quan hãû giỉỵa chụng
ngỉåìi ta sỉí
dủng så âäư gi l så âäư mäúi quan hãû thỉûc thãø. Trong så âäư ny:
Bi soản Cå såí dỉỵ liãûu Trang 3
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LI
ÃÛU
1. Hçnh chỉỵ nháût
biãøu diãùn táûp thỉûc thãø cọ
ghi tãn bãn trong
2. hçnh Oval biãøu diãùn thüc tênh, ghi tãn thuc tênh bãn trong
3. Hçnh thoi biãøu diãùn mäúi quan hãû giỉỵa cạc táûp thỉûc thãø
ghi tãn mäúi quan hãû
bãn trong.
4.
Nãúu
R
l
mäúi
quan
hãû
mäüt_mäüt
giỉỵa
2
táûp
thỉûc
thãø
E
1
v
E
2
thç
v
cạc
cảnh
âënh
hỉåïng
Ì
Û
tỉì
hçnh
Oval
nhn
R
âãún
cạc
hçnh
chỉỵ
nháût
nh
E
1
v
E
2
.
5.
Nãúu
R
l
mäúi
quan
hãû
nhiãưu_mäüt
tỉì
<E
1
,E
2
, ,E
k-1
>
vo
E
k
thç
v
cạc
cảnh
khäng
âënh
hỉåïng
tỉì
hçnh
thoi
nhn
R
âãún
cạc
HCN
cọ
nhn
E
1
,E
2
, ,E
k-1
v
v
cảnh
âënh
hỉåïng
tỉì
hçnh
thoi
cọ
nhn
R
vo
HCN
nhn
E
k
.
6
Nãúu
R
l
mäúi
quan
hãû
nhiãưu_nhiãưu
giỉỵa
E
1
v
E
2
thç
v
cạc
cảnh
khäng
âënh
hỉåïng
tỉì
hçnh
thoi
nhn
R
âãún
hçnh
chỉỵ
nháût
nhn
E
1
v
E
2
.
Vê dủ: så âäư sau trçnh by mäüt så âäư âån gin, gäưm 3 táûp EMPS, DETPS v
MANAGERS
Hai táûp
EMPS v DEPTS
liãn kãút nhåì mäúi quan hãû
WORK
IN
,
âáy
l
mäúi
quan
hãû
nhiãưu
_mäüt tỉì EMPS vo DEPTS.
Táûp thỉûc thãø DEPTS v MANAGERS liãn kãút våïi nhau qua mäúi quan hãû MANAGES.
Âáy l mäúi quan hãû
mäüt mäüt, Mäüt xút hiãûn ca mäúi quan hãû ny l mäüt bäü(d,p) nọi
ràòng
vàn phng p âỉåüc qun l båíi nhán viãn d.
Hồûc så âäư quan hãû _thủc thãø
sau:
Giỉỵa táûp thỉûc thãø PERSONS v PERSONS våïi mäúi quan hãû PARENT_OF. Cảnh thỉï nháút
biãøu diãùn con cn táûp thỉï hai biãøu diãùn cha. Giạ trë hiãûn hnh ca mäúi quan hãû
PARENT_OF
l
táûp
cạc
càûp
(p
1
,p
2
)
nọi
ràòng
p
2
l
cha
ca
p
1
Bi soản Cå såí dỉỵ liãûu Trang 4
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LI
ÃÛU
Vờ duỷ: Sau dỏy laỡ mọỹt vờ duỷ tổồng õọỳi õỏửy õuớ, sồ õọử mọỳi quan hóỷ thổỷc thóứ sau õỏy tọứ chổùc
hóỷ thọỳng thọng tin cỏửn thióỳt õóứ chố huy hoaỷt õọỹng cuớa sióu thở YVCB. Trong sồ õọử coù caùc
tỏỷp thổỷc thóứ vaỡ caùc mọỳi quan hóỷ sau:
1.NHAN_VIEN: tỏỷp thổỷc thóứ bao gọửm caùc nhỏn vión laỡm vióỷc trong sióu thở , caùc thuọỹc
tờnh :
TENNV
MANV
LUONG
2. NGUOI_QL Ngổồỡi quaớn lyù goỡm caùc trổồớng phoỡng trong sióu thở
3. GIAN_HANG: tỏỷp thổỷc thóứ caùc gian haỡng trong sióu thở goỡm caùc thuọỹc tờnh
TEN_GH
MA_GH
4. MAT_HANG: tỏỷp thổỷc thóứ caùc mỷt haỡng baùn trong sióu thở, caùc thuọỹc tờnh
TEN_MH
MA_MH
5. NGUOI_CC: tỏỷp thổỷc thóứ caùc ngổồỡi cung cỏỳp caùc mỷt haỡng cho sióu thở, caùc thuọỹc tờnh
TEN_NCC
DIA_CHI_NCC
6. DON_DATH: tỏỷp thổỷc thóứ gọửm caùc õồn dỷt haỡng cuớa khaùch haỡng, gọửm caùc thuọỹc tờnh
SO_HOA_DON
NGAY_DAT_HANG
7.KHACH_HANG: tỏỷp thổỷc thóứ caùc khaùch haỡng cuớa sióu thi, gọửm caùc thuọỹc tờnh
TEN_KH
DIA_CHIKH
TAI_K_KH
Caùc mọỳi quan hóỷ
8. LAM_VIEC: quan hóỷ laỡm vióỷc giổợa tỏỷp thổỷc thóứ NHAN_VIEN vaỡ tỏỷp thổỷc thóứ
GIAN_HANG
ta noùi: nhỏn vión x laỡm vióỷc ồớ gian haỡng y
9. QUAN_LY : mọỳi quan hóỷ quaớn lyù
giổợa tỏỷp thổỷc thóứ GIAN_HANG vaỡ NGUOI_QL, ta
noùi : gian haỡng x õổồỹc quaớn lyù bồới ngổồỡi quaớn lyù y
10. CHUA: quan hóỷ chổùa giổợa MAT_HANG vồùi GIAN_HANG: ta noùi
mỷt haợng coù
trong gian haỡng y
11. CUNG_CAP: quan hóỷ cung cỏỳp giổợa NGUOI_CC vồùi MAT_HANG ta noùi
mỷt
haỡng x õổồỹc cung cỏỳp bồới ngổồỡi cung cỏỳp y.
12. DAT_HANG: quan hóỷ õỷt haỡng giổợa KHACH_HANG
vồùi DON_DATH, ta noùi õồn
õỷt haỡng x õổồỹc õỷt bồới
khaùch haỡng y
13. BAO_GOM: quan hóỷ bao gọửm giổuợa DON_DATH vồùi MAT_HANG , ta noùi õồn
õỷt haỡng x õỷt mỷt haỡng y vồùi sọỳ lổồỹng z
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 5
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
Sồ õọử
mọỳi
quan
hóỷ
-thổỷc
thóứ
cuớa YVCB nhổ sau
(Hỗnh veợ)
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 6
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
Bi soản Cå såí dỉỵ liãûu Trang 7
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LI
ÃÛU
2.3
MÄ
HÇNH
DỈỴ
LIÃÛU
QUAN
HÃÛ
Nhỉ â nọi,
mä hçnh
quan
hãû-thỉûc
thã
khäng phi l mä hçnh xỉí l,
nọ mä hçnh
họa thãú giåïi thỉûc
åí mỉïc khại niãûm. Âãø
lỉu trỉỵ thäng tin trãn mạy
v dng cạc hãû qun
trë Cå Såí Dỉỵ Liãûu
thao tạc trãn chụng
thç dỉỵ liãûu phi âỉåüc biãøu diãùn dỉåïi dảng khạc.
Hiãûn nay mä hçnh dỉỵ liãûu âỉåüc sỉí dủng räüng ri nháút
l mä hçnh dỉỵ liãûu quan hãû(
Database Relationship Model) âỉåüc E.F Code âãư xút nàm 1970 v ngy cng cọ nhiãưu
hãû qan trë Cå Såí Dỉỵ Liãûu
cho mä hçnh ny
gi l cạc hãû qun trë Cå Såí Dỉỵ Liãûu quan
hãû . Mä hçnh dỉỵ liãûu quan hãû
cọ ỉu âiãøm l
tênh âäüc láûp dỉỵ liãûu cao v mä hçnh âỉåüc xáy
dỉûng dỉûa trãn l thuút táûp håüp
nãn dãù hiãøu v dãù biãøu diãùn bàòng toạn hc.
2.3
.1
Âënh
nGhéa
quan
hãû
Quan hãû âỉåüc âënh nghéa
dỉûa trãn l thuút táûp håüp
v têch Âãư_cạc
ca cạc miãưn.
Miãưn( Domain) l táûp cạc giạ trë hỉỵu hản hồûc vä hản.
Vê dủ: Táûp cạc säú ngun l mäüt miãưn, táûp cạc xáu k tỉû cọ âäü di 20 l mäüt miãưn, hồûc
táûp{0,1} l mäüt miãưn
Cho k miãưn D1,D2, ,Dk. Khi âọ têch Âãư_cạc
ca k miãưn D1,D2, ,Dk k hiãûu l
D1xD2x xDk l táûp cạc bäü cọ dảng (v1,v2, ,vk) trong âọ vi thüc Di, mäùi bäü cọ k thnh
pháưn gi l k_bäü(k_tupe)
vê dủ: Våïi k=2, D1={0,1},D2={a,b,c}
Khi âọ D1xD2={(0,a),(0,b),(0,c),(1,a),(1,b),(1,c)}
tỉì âọ quan hãû âỉåüc âënh nghéa nhỉ sau:
Mäüt quan hãû (Relation)l mäüt táûp håüp con báút k
ca têch Âãư_cạc ca mäüt hồûc
nhiãưu miãưn. Nhỉ váûy mäüt quan hãû cọ thãø l vä hản
nhỉng åí âáy ln gi thiãút ràòng quan
hãû l hỉỵu hản.
vê dủ Våïi D1 v D2 trong vê dủ trãn
thç táûp {(0,a),(0,c),(1,b)} l mäüt quan hãû , mäüt táûp
con ca têch Âãư_cạc 2 miãưn D1 v D2
Thnh pháưn ca quan hãû gi l bäü (tupe), quan hãû l táûp con ca têch Âãư_cạc k
miãưn gi l quan hãû k_ngäi(k_Arity). Mäùi bäü ca quan hãû k_ngäi
gäưm k thnh pháưn gi
l k_bäü cọ dảng (v1,v2, ,vk) trong âọ vi thüc Di.
Trong mä hçnh dỉỵ liãûu quan hãû , mäùi quan hãû n_ngäi âỉåüc biãøu diãùn båíi mäüt bng
n cäüt. Trong bng mäùi cäüt tỉång ỉïng våïi mäüt thnh pháưn ca quan hãû gi l thüc tênh v
cọ tãn l tãn ca thnh pháưn tỉång ỉïng trong quan hãû.
Mäùi bäü trong quan hãû tỉång ỉïng
ø
vồùi 1 doỡng cuớa baớng.
Tón quan hóỷ
cuỡng vồùi danh saùch caùc thuọỹc tờnh
goỹi laỡ lổồỹc õọử quan hóỷ (Relational
Scheme). Nóỳu quan hóỷ coù tón laỡ REL vaỡ coù caùc thuọỹc tờnh laỡ A1,A2, ,Ak thỗ lổồỹc õọử
quan hóỷ tổồng ổùng laỡ REL(A1,A2, ,Ak).
Vờ duỷ: Thọng tin vóử caùc thaỡnh phọỳ
õổồỹc lổu trổợ trong lổồỹc õọử quan hóỷ
coù tón laỡ
CITY_INFO gọửm caùc thuọỹc tờnh nhổ TN_TP, S_TRặONG_H, S_DN.
Ta thỏỳy
rũng õỏy laỡ lổồỹc õọử quan hóỷ 3_ngọi(Gọửm 3 thuọỹc tờnh )khi õoù lổồỹc õọử quan hóỷ tổồng ổùng
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 8
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
laỡ : CITY_INFO(TN_TP, S_TRặOèNG_H, S_DN) vaỡ (HU, 6,2.000.000)
laỡ
mọỹt bọỹ cuớa lổồỹc õọử quan hóỷ . Vaỡ khi õoù
TN_TP S_TRặONG_H S_DN
HU 6 2.000.000
HAè
NĩI 12 5.000.000
Aè
NễNG 5 3.000.000
Laỡ mọỹt quan hóỷ
cuớa lổồỹc õọử quan hóỷ CITY_INFO,
laỡ tỏỷp con cuớa tờch õóử caùc 3
mióửn TN_TP, S_TRặONG_H, S_DN. ặẽng vồùi mọựi lổồỹc õọử quan hóỷ
coù nhióửu
quan hóỷ goỹi laỡ caùc hióỷn haỡnh(Current Instance) cuớa lổồỹc õọử quan hóỷ õoù.
2.3.2
Bióứu
dióựn
sồ
õọửỡ
Quan
Hóỷ
-
Thổỷc
Thóứ
tronG
mọ
hỗnh
Quan
Hóỷ
Tỏỷp caùc lổồỹc õọử quan hóỷ duỡng õóứ bióứu dióựn thọng tin cuớa mọỹt hóỷ thọỳng õổồỹc goỹi laỡ
lổồỹc õọử Cồ Sồớ Dổợ Lióỷu quan hóỷ . (Relational Database Scheme)vaỡ nhổợng giaù trở hióỷn haỡnh
cuớa caùc
quan hóỷ tổồng ổùng taỷo ra Cồ Sồớ Dổợ Lióỷu quan hóỷ.
Giaớ sổớ caùc thọng tin cuớa hóỷ thọỳng
õổồỹc bióứu dióựn
bồới 1 sồ õọử
vóử mọỳi quan hóỷ thổỷc
thóứ
thỗ ta coù thóứ thióỳt lỏỷp
lổồỹc õọử Cồ Sồớ Dổợ Lióỷu quan hóỷ
cho hóỷ thọỳng tổỡ
sồ õọử mọỳi
quan hóỷ thổỷc thóứ
dổỷa trón caùc nguyón tt sau:
1. Mọỹt tỏỷp thổỷc thóứ E trong sồ õọử quan hóỷ -thổỷc thóứ õổồỹc bióứu dióựn bồới mọỹt lổồỹc õọử quan
hóỷ coù tón laỡ E
vaỡ coù caùc thuọỹc tờnh laỡ tỏỷp tỏỳt caớ caùc thuọỹc tờnh
cuớa tỏỷp thổỷc thóứ E.Mọựi
thổỷc thóứ trong tỏỷp thổỷc thóứ tổồng ổùng vồùi mọỹt bọỹ trong lổồỹc õọử quan hóỷ tổồng ổùng.
Nóỳu E laỡ mọỹt tỏỷp thổỷc thóứ
maỡ caùc thổỷc thóứ cuớa noù õổồỹc õởnh nghộa thọng qua mọỹt
mọỳi quan hóỷ
vồùi mọỹt tỏỷp thổỷc thóứ F khaùc
thỗ lổồỹc õọử quan hóỷ tổồng ổùng coù tón laỡ E vaỡ coù
thuọỹc tờnh
laỡ caùc thuọỹc tờnh cuớa F duỡng laỡm khoùa cho E
è
è
è
ừ
2.Mäüt mäúi quan hãû R giỉỵa cạc táûp thỉûc thãø E1,E2, ,Ek âỉåüc biãøu diãùn bàòng mäüt lỉåüc âäư
quan hãû cọ tãn l R v cọ cạc thüc tênh l cạc thüc tênh khọa ca E1,E2, ,Ek. ÅÍ âáy cọ
thãø cọ sỉû âàût tãn lải
cạc thüc tênh
nãúu cọ hai hồûc nhiãưu táûp thỉûc thãø
cọ cạc thüc tênh
trng tãn âãø âm bo ràòng
giỉỵa
cạc táûp thỉûc thãø khäng cọ cạc thüc tênh trng tãn.
Mäùi bäü t trong quan hãû ny tỉång ỉïng våïi mäüt danh sạch cạc thỉûc thãø (e1,e2, ,ek) trong
âọ ei thücEi.
Âãø minh ha, thê dủ sau âáy s chuøn så âäư thỉûc quan hãû -thỉûc thãø
ca siãu thë
YVCB sang lỉåüc âäư Cå Såí Dỉỵ Liãûu quan hãû:
Lỉåüc âäư cho cạc táûp thỉûc thãø
1. EMPS(ENAME, SALARY)
Bi soản Cå såí dỉỵ liãûu Trang 9
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LIÃÛ
U
2. MANAGERS(ENAME)
3. DEPTS(DNAME, DEPT#)
4. SUPPLIERS(SNAME, SADDR)
5. ITEMS(INAME, ITEM#)
6. ORDERS(O#, DATE)
7. CUSTUMERS(CNAME, CADDR, BALANCE)
Lỉåüc âäư cho cạc mäúi quan hãû
8. WORK_IN(ENAME, DNAME)
9. MANAGES(ENAME, DNAME)
10. CARRIES(INAME, DNAME)
11. SUPPLIES(SNAME, INAME, PRICE)
12. INCLUDES(O#, INAME, QUANLITY)
13. PLACED_BY(O#, CNAME)
2.3.3
Khọa
ca
quan
hãû
(Keys of relation)
Cng giäúng nhỉ cạc táûp thỉûc thãø , quan hãû cng cọ khọa âãø phán biãût cạc bäü trong
quan hãû .
Táûp con S cạc thüc tênh ca quan hãû R gi l khọa ca R
nãúu tha mn hai têch
cháút sau:
1. Khäng cọ hiãûn hnh no ca R
cọ hai bäü trng nhau trãn táút c cạc thüc tênh ca S
nhỉng khäng phi l mäüt bäü.
2. Khäng cọ táûp con tháût sỉû no ca S cọ têch cháút (1).
Cọ nghéa l nãúu S l khọa
ca quan hãû R
thç trong thiãút kãú Cå Såí Dỉỵ Liãûu åí mỉïc váût l
khäng cho phẹp lỉu trỉỵ hai bäü
m cạc giạ trë ca chụng giäúng nhau trãn S.
Vê dủ:
Trong lỉåüc âäư quan hãû SUPPLIES(SNAME, INAME,PRICE) cọ khọa gäưm hai
thüc tênh SNAME v
INAME. Nãúu trong mäüt hiãûn hnh no âọ ca lỉåüc âäư
quan hãû
SUPPLIES täưn tải hai bäü (s,i,p1) v (s,i,p2) cọ nghéa l ngỉåìi cung cáúp s cung cáúp màût
hng i våïi hai
giạ
l p1 v p2
nhỉ váûy dỉỵ liãûu bë läùi trong trỉåìng håüp ny vç khäng tha
mn tênh cháút khọa.
Mäüt âiãưu quan trng cáưn phi nhåï l
tênh cháút khọa chè phủ thüc vo lỉåüc âäư m
khäng phủ thüc vo mäüt hiãûn hnh no ca lỉåüc âäư âọ.
Vãư ngun tàt âãø phán biãût cạc bäü trong quan hãû thç mäùi quan hãû
phi cọ êt nháút
mäüt khọa, nhỉ váûy mäüt lỉåüc âäư cọ thãú cọ nhiãưu khọa. Nãúu lỉåüc âäư quan hãû cọ nhiãưu khọa
thç ta chn mäüt khọa lm khọa chênh(Primary) v cạc khọa cn lải âỉåüc gi l khọa ỉïng
cỉí(indicate).
NGun
tàõt
thnh
láûP
khọa
1. Nãúu lỉåüc âäư quan hãû âỉåüc thnh láûp tỉì mäüt táûp thỉûc thãø thç khọa ca táûp thỉûc thãø âọ
âỉåüc láúy lm khọa cho lỉåüc âäư quan hãû.
Bi soản Cå såí dỉỵ liãûu Trang 10
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LI
ÃÛU
2. Nãúu lỉåüc âäư quan hãû âỉåüc thnh láûp tỉì mäúi quan hãû nhiãưu_nhiãưu giỉỵa cạc táûp thỉûc thãø
E1 v E2
thç táûp táút c cạc thüc tênh khọa ca E1 v E2
âỉåüc dng lm khọa cho lỉåüc
âäư quan hãû .
3. Nãúu lỉåüc âäư quan hãû âỉåüc thnh láûp tỉì mäúi quan hãû mäüt_mäüt giỉỵa cạc táûp thỉûc thãø E1
v E2
thç táûp táút c cạc thüc tênh khọa ca E1 hồûc khọa
E2
cọ thãø láúy lm khọa cho
lỉåüc âäư quan hãû .
4. Nãúu lỉåüc âäư quan hãû âỉåüc thnh láûp tỉì mäúi quan hãû nhiãưu_mäüt tỉì E1,E2, ,Ek-1 vo
Ek thç táûp táút c thüc tênh khọa
ca E1,E2, ,Ek-1 âỉåüc dng lm khọa cho lỉåüc âäư quan
hãû .
Báy giåì ạp dủng cạc ngun tàt trãn
âãø xạc âënh khọa cho 13 lỉåüc âäư quan hãû
âỉåüc thiãút láûp åí trãn. Khọa chênh in âáûm, khọa ỉïng cỉí in nghiãn.
1. EMPS(
ENAME
, SALARY)
2. MANAGERS(
ENAME
)
3. DEPTS(
DNAME
,
DEPT#
)
4. SUPPLIERS(
SNAME
, SADDR)
5. ITEMS(
INAME
,
ITEM
#)
6. ORDERS(
O#,
DATE)
7. CUSTUMERS(
CNAME
, CADDR, BALANCE)
Lỉåüc âäư cho cạc mäúi quan hãû
õ
õ
8. WORK_IN(
ENAME
, DNAME)
9. MANAGES(
ENAME
,
DNAME
)
10. CARRIES(
INAME
, DNAME)
11. SUPPLIES(
SNAME
,
INAME
, PRICE)
12. INCLUDES(
O#,
INAME
, QUANLITY)
13. PLACED_BY(
O#,
CNAME)
2.3.3
Cạc
PhẹP
toạn
trãn
mä
hçnh
dỉỵ
liãûu
quan
hãû
Cọ hai lai phẹp toạn :
1. Âải säú quan hãû (relatinal algebra)
2. Phẹp tênh logic
Trong pháưn ny chụng ta chè tçm hiãøu cạc phẹp toạn âải säú quan hãû
Phẹp toạn âải säú quan hãû cọ cạc toạn hảng l cạc hàòng quan hãû , biãún quan hãû
Cọ 5 phẹp toạn cå bn l phẹp håüp(Union), Trỉì(difference), Têch Descarstes, Phẹp
chiãúu(Projection), Phẹp chn(Selection) v mäüt säú phẹp toạn måí räüng tỉì 5 phẹp toạn cå
bn trãn. Sau âáy chụng ta tçm hiãøu củ thãø tỉìng phẹp toạn.
Bi soản Cå såí dỉỵ liãûu Trang 11
Chỉång 2
CẠC MÄ HÇNH DỈỴ LIÃÛU CHO CẠC HÃÛ QUN TRË CÅ SÅÍ DỈỴ LIÃÛ
U
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 12
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 13
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 14
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
Baỡi soaỷn Cồ sồớ dổợ lióỷu Trang 15
Chổồng 2
CAẽC M HầNH Dặẻ LIU CHO CAẽC H QUAN TRậ C S Dặẻ LI
U
Mọỹt
sọỳ
vờ
duỷ
ổùnG
duỷnG
caùc
PheùP
toaùn
aỷi
sọỳ
quan
hóỷ
Gi sỉí trong cạc lỉåüc âäư quan hãû
trong mä hçnh CSDL quan hãû YVCB, ghẹp mäüt säú
quan hãû thêch håüp âãø âỉåüc âãø âỉåüc cạc
lỉåüc âäư quan hãû sau:
NHAN_VIEN(TENNV,LUONG)
GIAMH(SOGH, TENGH,NGUOIQL)
MATH(MAMH, TENMH, TENGH)
DONDH(SOHD, NGAYHD, TENKH)
KHACHH(TENKH, DCHI,TAIK)
CUNGCAP(TENCC,TENH,GIA)
CHITIET(SOHD,TENH,SOLUONG)
Chụng ta cọ thãø sỉí dủng cạc phẹp toạn âải säú quan hãû âãø tr låìi cạc cáu hi sau:
1.tçm ngỉåìi cung cáúp cung cáúp sạch cå
såí dỉỵ liãûu (CSDL)
Π
TENCC(σTENH=’sạch CSDL’ (CUNGCAP))
2.Tçm xem nh cung cáúp A, cung cáúp nhỉỵng màût hng no giạ tháúp hån 1000
Π
TENH(σTENCC=’A’ AND GIA <1000 (CUNGCAP))
3. Xạc âënh xem khạch hng no
cọ âàût mua qng JEAN
Π
TENKH(σTENH=’ JEAN’ (DONDH
∞
CHITIET))
Bi soản Cå såí dỉỵ liãûu Trang 16