Giáo trình cơ sở dữ liệu máy tính

76 443 0
Giáo trình cơ sở dữ liệu máy tính

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Giỏo trỡnh c s d liu CHNG I - CC KHI NIM C BN V C S D LIU I.1 CC KHI NIM C BN Cú th núi rng bt k lnh vc no ca Tin hc u ớt nhiu liờn quan ti vic t chc v khai thỏc c s d liu c bit c s d liu cú vai trũ rt quan trng h thng thụng tin I.1.1 D liu (Data) D liu l mt phn t hoc mt hp cỏc phn t m ta gi l tớn hiu Nú c biu hin di cỏc dng nh hỡnh nh, õm thanh, mu sc, mựi v T nhng tớn hiu ú chỳng ta cú s hiu bit v mt s vt, hin tng hay quỏ trỡnh no ú th gii khỏch quan thụng qua quỏ trỡnh nhn thc Trong cỏc dng d liu thỡ ngụn ng (ch vit, ch s, ting núi) l dng d liu ph bin nht c dựng lnh vc tin hc (dựng mụ t, nh lng cỏc c tớnh ca i tng) Phm vi ca d liu rt rng ln Trong cun bi ging ny chỳng ta ch cp n d liu lnh vc ca Tin hc Cỏc d liu lnh vc tin hc phi lng húa (cõn ong o m hay mụ t c) I.1.2 C s d liu (Database) C s d liu l mt hp cỏc d liu v cỏc i tng cn c qun lý, c lu tr ng thi trờn cỏc vt mang tin ca mỏy tớnh in t v c qun lý theo mt c ch thng nht gi l h qun lý (hoc qun tr) c s d liu nhm thc hin ba chc nng sau õy: (1) To lp d liu (2) Cp nht d liu: Np d liu vo c s d liu Xúa d liu c s d liu Sa d liu ó cú c s d liu (3) Tỡm kim v kt xut d liu theo yờu cu Núi mt cỏch khỏc c s d liu l hp cỏc d liu gn nht nhng y nht v cỏc i tng cn qun lý ỏp ng tt c cỏc yờu cu khai thỏc t I.1.3 H qun tr c s d liu (Database Management SystemDBMS) H qun tr c s d liu (HQTCSDL) l mt h thng phn mm (cỏc chng trỡnh) giỳp cho ngi s dng khai thỏc cỏc CSDL theo cỏc chc nng: (1) To lp d liu (2) Cp nht d liu: Np d liu vo c s d liu Trang Giỏo trỡnh c s d liu Xúa d liu c s d liu Sa d liu cú c s d liu (3) Tỡm kim v kt xut d liu theo yờu cu (4) Bo mt c s d liu Cho ti cú rt nhiu h qun tr c s d liu vi cht lng, tớnh nng v giỏ c khỏc nh: h FOX, DB2, DBASE, ORACLE, SYBASE, PARADOX, INFORMIX, SQL SERVER, MYSQL, POSTGRESQL, Cũn cỏc CSDL l i tng qun lý ca cỏc HQTCSDL Chỳng c to lp v lu tr cỏc vt mang tin ngoi Cỏc HQTCSDL thng cung cp cỏc cụng c cho phộp ngi dựng thc hin cỏc thao tỏc trờn Tuy nhiờn yờu cu a dng v cht ch ca ngi dựng m khai thỏc thụng tin hiu qu thỡ HQTCSDL cha m phi cn ti nhng phn mm chuyờn dng (specialized program) giỳp cho vic t chc, lu tr v khai thỏc c s d liu c hiu qu hn Thng ngi ta s dng cỏc cụng c ca HQTCSDL (cú th kt hp vi cỏc ngụn ng lp trỡnh) vit cỏc phn mm ny Vớ d h thng phn mm k toỏn, qun lý nhõn s ti cỏc c quan xớ nghip, h qun lý o to cỏc trng i hc Mi phn mm nh vy thng ch phc v cho mt lnh vc ca mt n v c th riờng bit no ú Mt H qun tr c s d liu l mt h thng gm mt hoc nhiu CSDL v cỏc chng trỡnh ng dng dựng khai thỏc v x lý d liu CSDL ú Ngi dựng Chng trỡnh ng dng H qun tr c s d liu CSDL Dng so sỏnh thụ thin sau õy gia kho vt cht v c s d liu, qun lý kho v h qun tr c s d liu, giỳp chỳng ta nhanh chúng hiu c mt vi thut ng chuyờn mụn u tiờn ca CSDL Mi CSDL ng vi mt kho Ging nh kho cú ngi qun tr (th kho) thỡ CSDL cng cú ngi qun tr CSDL Ngi qun tr cú nhim v qun lý v theo dừi ton b cỏc th tc sau õy: (1) Np d liu vo CSDL Np hng vo kho (2) Xúa d liukhi CSDL Loi b hng b hng hoc lý hng khụng cn dựng na Trang Giỏo trỡnh c s d liu (3) Sa d liu CSDL Sa li hng kho (4) To lp CSDL Xõy dng thờm kho (5) Tỡm kim v xut d liu Tỡm v xut hng (6) Bo trỡ d liu CSDL khụng b sai hng cỏc truy nhp khụng hp phộp hoc cỏc truy nhp khụng ỳng qui cỏch dn n s sai lch, mt mỏt d liu Bo v hng cho mt mỏt, h hng CSDL cú mt lp ngi s dng cng c phộp thc hin cỏc thao tỏc (1)-(6) nh ngi qun tr nhng gii hn mt gúc khai thỏc d liu Ngi s dng, tựy theo vai trũ v trỏch nhim ca mỡnh, c ngi qun tr cho phộp s dng mt phn no ú ca CSDL v vi phn ú h c phộp thc hin mt s thao tỏc nht nh Nu ngi s dng l mt n nhõn viờn bỏn hng ti mt quy no ú thỡ cụ ta cú th thụng qua mỏy tớnh in t (MTT) theo dừi nhng mt hng bỏn c ti quy ca mỡnh bao gm cỏc mc: mó hng, tờn hng, n v tớnh, n giỏ, thnh tin, s lng cũn li, tng s tin ó bỏn c phộp np d liu, sa, xúa d liu, phn ỏnh ỳng bin ng ca cỏc mt hng cú quy ca mỡnh Cũn cỏc d liu khỏc, mc dự c lu tr trờn cựng mt MTT, thm c lu tr cựng mt CSDL, s l khut i vi cụ ta D liu khut cú th l thụng tin v cỏc quy khỏc, tng thu chi ca ca hng, danh sỏch v thụng tin chi tit v cỏc quy khỏc, tng thu chi ca ca hng, danh sỏch v thụng tin chi tit v cỏc nhõn viờn Túm li, mc dự d liu c lu tr chung mt CSDL nhng ngi s dng ch c nhỡn vo CSDL ch qua mt cỏi khung (view) v h cm thy CSDL ch l mt cỏi khung ú thụi, nh l dnh riờng cho h vy Cỏc thao tỏc (1)-(3) c gi l thao tỏc cp nht Thao tỏc (4) c gi l mụ t d liu Thao tỏc (5) c gi l thao tỏc tỡm kim Ton b cỏc mỏy múc, thit b, qui nh, hng dn phc v cho vic thc hin cỏc thao tỏc (1)-(6) i vi cỏc kho hng to thnh h qun lý kho, h thng ny cú th cú cỏc mỏy nõng , bc xp hng, cỏc loi phiu v chng t xut-nhp kho, cỏc cỏch thc tỡm hng kho Tng t, ta cú h qun tr CSDL l chng trỡnh mỏy tớnh giỳp cho ta thc hin cỏc thao tỏc (1)-(6) I.1.4 S cn thit ca c s d liu Trc õy vic khai thỏc d liu bng cỏc cụng c th cụng bng giy t mt nhiu thi gian v hiu qu khụng cao Vi s phỏt trin ca cụng ngh thụng tin (c phn cng v phn mm) ó cho i mt ngnh cụng ngh mi: cụng ngh thụng tin Thụng tin thng c tinh lc t d liu Ban u vic t chc, khai thỏc d liu cha c nghiờn cu ỳng mc dn ti vic khai thỏc chỳng cũn hn ch thiu tớnh nht quỏn v bo mt cng nh kh nng lu tr cha nhiu Thm nu khụng nghiờn cu thu ỏo s gõy nờn tớnh mõu thun d liu v dn n nhng hu qu khụng lng Cú th cựng mt i tng d liu nhiu n v cựng khai thỏc nờn cú c t chc lu tr ti nhiờu ni, gõy nờn s trựng lp, tn kộm v nu khụng cp nht kp thi s cú s khụng nht quỏn, lm cho hiu qu khai thỏc thp Dn dn c s d liu c nghiờn Trang Giỏo trỡnh c s d liu cu nghiờm tỳc ỏp ng nhu cu khai thỏc ngy cng cao ca nhng nhúm ngi s dng khỏc Cú c mt c s d liu hp lý, ỏp ng tt c nhng ũi hi ca tt c nhng nhúm ngi mi h thng thụng tin l iu t cho nhng ngi lm tin hc núi chung v ngi nhng ngi nghiờn cu c s d liu núi riờng Núi túm li CSDL l b phn khụng th thiu c cỏc h lu tr v tỡm kim thụng tin, cỏc h thng qun lý kinh t cỏc ngnh, cỏc cp, cỏc h thng qun lý kho tng, t liu, cỏc h thng phc v cụng cng nh ngõn hng, bỏn vộ mỏy bay v cỏc phng tin giao thụng, cỏc h thng thit k t ng v v I.2 CC Mễ HèNH CSDL I.2.1 Mụ hỡnh húa tin hc Mụ hỡnh húa l s lp tng quan gia cỏc c trng, thuc tớnh ca i tng vi cỏc phn t ca mt no ú cho thụng tin v ng thỏi ca cỏc phn t ny th hin s ng ca i tng c mụ hỡnh húa Th gii thc 1992 Th gii thc 1988 Ngi x' Ngi x m P(m(x)) = m(t(x)) y=m(x) P y' = y'' Thụng tin ca i tng x (nm 1988) Thụng tin ca i tng x (nm 1992) H & tờn: V Trung Mó: 02 Nm sinh: 1960 Lng: 390.000 S con: Chc v: Nhõn viờn H & tờn: V Trung Mó: 02 Nm sinh: 1960 Lng: 505.000 S con: Chc v: trng phũng Hóy xột mt phn t x - nhõn viờn ca mt c quan no ú ú l mt i tng c th ca th gii thc Chỳng ta mụ t tng x thụng qua mt c ch m nh sau: m - lit kờ cỏc thuc tớnh ca cỏn b x, c th l h v tờn, mó (h s), nm sinh s v chc v Cn bao nhiờu thuc tớnh v thuc tớnh no l mc tiờu ca vic mụ hỡnh húa nh ot Nu cn qun lý hc sinh ca nh trng thỡ rừ rng l khụng cn n thuc tớnh lng, s v chc v Chỳng cú th c thay bng cỏc thuục tớnh khỏc nh: h v tờn ph huynh, a ch gia ỡnh v v Trang Giỏo trỡnh c s d liu Gi s thi im mụ t x l nm 1988 v thụng tin v x c lu mt CSDL n nm 1992, thi gian thay i, i tng x cng thay i theo: lng tng thờm, s tng thờm v nhn chc v mi v v Mt hm t ó bin i x sang hỡnh trng mi x' x'= t(x) Ti nm 1988, ỏnh x m, nh ó bit, lp thụng tin y cho x y = m(x) Nu h CSDL lu tr thụng tin v x cú c ch P cp nht (sa thụng tin cho phự hp vi thc t) thỡ P s bin i y thnh y Ta cú: y'= P(y) = P(m(x)) Nu ti nm 1992 ta li dựng c ch m ly thụng tin cho x (ng vi hỡnh trng x) thỡ s c: y' = m(x') = m(t(x)) Cp ỏnh x c gi l c ch mụ hỡnh húa D thy rng c ch lm vic ỳng n nu nh nú theo dừi ỳng i tng, tc l: y'= y'' hay P (m(x)) = m (t (x)) (*) ng thc (*) c gi l iu kin giao hoỏn ca mụ hỡnh húa Chỳng ta ln lt xột ba loi mụ hỡnh ba cỏch tip cn thit k cỏc h qun tr CSDL I.2.2 Mụ hỡnh mng Ni sinh Nhõn s Thnh ph Ni n cụng tỏc Mụ hỡnh mng c xõy dng trờn cỏc d liu v cỏc quan h Tp d liu c to t nhng d liu cựng mt kiu gi l bn ghi Mi bn ghi c to bi cỏc trng Theo hỡnh trờn ta cú hai d liu l Nhõn s v Thnh ph vi cỏc bn ghi tng ng nh sau: o Mi phn t ca nhõn s c mụ t qua trng (6 thuc tớnh): H V TấN: M: NM SINH: LNG: S CON: CHC V: Trang Giỏo trỡnh c s d liu o Mi phn t (thnh ph c th) ca thnh ph c miờu t qua thuc tớnh: M THNH PH: TấN GI: DIN TCH: KHONG CCH TI TH ễ: Quan h xỏc lp mt tng quan - ỏnh x gia hai d liu Theo hỡnh trờn ta cú: Quan h NI SINH: Nhõn s Thnh ph: Mi nhõn s c th ca Nhõn s cú mt ni sinh c th Gia hai trờn cũn cú th cú quan h th hai, chng hn NI N CễNG TC cho bit cỏn b x n lm vic ti nhng thnh ph no Cỏc quan h c phõn loi theo kiu ỏnh x n tr, nú c kớ hiu l 1:1 (mi ngi cú mt ni sinh), cũn NI N CễNG TC l ỏnh x khụng n tr, kớ hiu l 1:N - mt ngi cú th t chc chuyn cụng tỏc nhiu thnh ph to lp mt CSDL theo mụ hỡnh mng chỳng ta cn cỏc thao tỏc sau: To lp mt bao gm vic khai bỏo tờn v mụ t cỏc thuc tớnh ca Vớ d: CREATE SET SET NAME:Nhõn s ATTRIBUTE 1: H V TấN TYPE: string[30] ATTRIBUTE 2: M TYPE: integer (2) ATTRIBUTE 3: NM SINH TYPE: integer (2) ATTRIBUTE 3:NM SINH TYPE: integer (2) CREATE SET SET NAME:Thnh ph ATTRIBUTE 1: M THNH PH TYPE: string[3] ATTRIBUTE 2: TấN GI TYPE: string[30] ATTRIBUTE 3: DIN TCH TYPE: integer (12) ATTRIBUTE 3:KHONG CCH TI TH ễ TYPE: integer (5) Trang Giỏo trỡnh c s d liu Thit lp mt quan h gia hai tp: bao gm vic khai bỏo tờn quan h, tờn ngun v tờn ớch v kiu quan h Vớ d: SET RELATION: NI SINH FROM: Nhõn s TO: Thnh ph TYPE: 1:1 Cỏc thao tỏc i xng ca CREATE SET v SET RELATION s l DELETE SET v DELETE RELATION Cỏc thao tỏc ph tr khỏc cú th l: Sa li tờn (tp, quan h, thuc tớnh) Sa li kiu (thuc tớnh, quan h) Thờm, bt thuc tớnh vo mt ó cú v v Ta xột mt vớ d minh vic truy nhp ti CSDL mng Vớ d: Cho bit tng s lng ca nhng cỏn b cú ni sinh Hi Phũng GET Nhõn s /* m nhõn s */ GET Thnh ph /* v m thnh ph */ S:= /* t tng lng bng */ FOR each x in Nhõn s DO IF (NI SINH(x).TấN GI= 'HAI PHONG') THEN S:= S +x.LNG ENDIF ENDFOR CLOSE ALL /* úng tt c cỏc ó xột */ WRITE ('Tng lng: ',S); Cỏc thao tỏc h c s d liu cú th thc hin ch hi thoi trc tip ngi mỏy (Vớ d cỏc thao tỏc to lp) hoc ch chng trỡnh (vớ d truy nhp núi trờn c vit di dng ngụn ng ta Pascal) S dng ch no hoc ngụn ng gỡ khụng quan trng bng s hiu bit bn cht ca mụ hỡnh v cỏc thao tỏc cú th t thit k v ci t h c s d liu hoc s dng mt h cú sn theo yờu cu ũi hi I.2.3 Mụ hỡnh phõn cp õy l trng hp riờng ca mụ hỡnh mng, ú khỏi nim d liu c gi nguyờn cũn khỏi nim quan h c gii hn kiu phõn cp Gia hai d liu bt k cú ti a mt quan h v quan h ny tuõn th trt t trờn di Loi mụ hỡnh phõn cp phự hp vi nhng t chc cú hỡnh thc phõn cp Trang Giỏo trỡnh c s d liu Vớ d: T chc qun lý hnh chỏnh: Tnh Huyn Xó T chc th mc: a Th mc cp Th Cu trỳc phõn cp l cu trỳc cõy, nờn truy cp ti mt i tng mụ hỡnh phõn cp l i t gc (nh u tiờn) n phn t cn xột I.2.4 Mụ hỡnh quan h Mụ hỡnh quan h ln u tiờn c Codd mt nhõn viờn ca hóng IBM xut nm 1970 Mt CSDL quan h c to lp t cỏc quan h cú hỡnh nh trc quan l cỏc bng (table) Mi mt bng bao gm cỏc ct c gi l cỏc thuc tớnh v cỏc dũng c gi l cỏc b Vớ d: CSDL bỏn hng lu tr thụng tin v cỏc phỏt sinh bỏn hng ti cỏc ca hng ca mt cụng ty c to thnh t cỏc quan h sau õy: Quan h MT HNG M HNG TấN HNG N V TNH Quan h KHCH HNG M KHCH H TấN KHCH A CH KHCH Quan h CA HNG M CA HNG TấN CA HNG Trang A CH CA HNG Giỏo trỡnh c s d liu Quan h GC HểA N (Húa n xỏc nh bi s th t ca nú c bỏn ngy no, cho khỏch no, t ca hng no, t l v tin thu giỏ tr gia tng l bao nhiờu v thuc quyn húa n no) STT_H NGY BN MKHCH M CA HNG TLVAT THU GTGT QUYN_H Quan h CHI TIT HểA N (Húa n bỏn nhng mt hng no, s lng, n giỏ v s tin tng ng l bao nhiờu) STT_H M HNG S LNG N GI THNH TIN Cỏc c im ca mụ hỡnh quan h: T nhiờn, gn vi quan nim thụng thng Cú c s toỏn hc cht ch cho phộp ỏp dng rng rói cỏc cụng c i s v logic Ngụn ng thao tỏc sỏng v cú kh nng t hp cao D m bo tớnh an ton d liu: cú th t mt khu truy nhp nhiu mc: mc quan h, mc thuc tớnh, mc b, mc thuc tớnh b D cp nht ti cỏc n v d liu D m bo tớnh c lp d liu I.3 NGễN NG D LIU I.3.1 Khỏi nim v ngụn ng Ngụn ng l phng tin giao tip gia ngi ngi, ngi mỏy hoc mỏy mỏy Cú hai loi ngụn ng: ngụn ng t nhiờn v ngụn ng hỡnh thc I.3.2 Ngụn ng t nhiờn Ngụn ng t nhiờn l ngụn ng ca nhng b tc ngi, c phỏt trin v hon thin t xut hin ngi nguyờn thy u tiờn Ngụn ng t nhiờn c th hin qua ting núi, ch vit hoc ng tỏc (ngụn ng ca nhng ngi cõm ic) v tuõn theo nhng quy tc nht nh c gi l ng phỏp I.3.3 Ngụn ng hỡnh thc Ngụn ng hỡnh thc l hp cỏc ký hiu v quy nh ngi t Thụng thng mi lnh vc cú nhng ngụn ng hỡnh thc riờng (trong toỏn hc, vt lý, húa hc, sinh hc,vv ) Trong tin hc ngụn ng hỡnh thc l cụng c giao tip gia ngi vi mỏy v gia mỏy v mỏy Trang Giỏo trỡnh c s d liu I.3.3.1 Ngụn ng d liu: Cỏc h qun tr c s d liu bao gi cng cung cp mt ngụn ng hỡnh thc lm cụng c giao tip gia ngi s dng v h thng ú l ngụn ng d liu Cỏc ngụn ng d liu thng s dng t khúa ngụn ng t nhiờn vi cỳ phỏp cht ch, c ngi s dng a vo h thng bng cỏc phng tin nh bn phớm, mn hỡnh v d nhiờn l c b x lý vi phn cng v phn mm liờn quan Ngụn ng d liu bao gm ba lp ngụn ng ng vi ba chc nng ch yu ca h c s d liu: l ngụn ng mụ t d liu, ngụn ng cp nht d liu, v ngụn ng tỡm kim d liu I.3.3.1.1 Ngụn ng mụ t d liu (Data Definition Language DDL) Ngụn ng mụ t d liu giỳp ngi s dng khai bỏo tờn i tng, cu trỳc ca i tng v cỏc quan h ca i tng vi cỏc i tng khỏc Vớ d: CREATE TABLE KHCH HNG /* To bng khỏch hng */ ATTRIBUTE M KHCH /* Thuc tớnh th nht: mó khỏch hng */ TYPE INT(2) /* Kiu s nguyờn ch s */ ATTRIBUTE H TấN /* Thuc tớnh th hai: h tờn khỏch hng */ TYPE STR(30) /* Kiu chui ký t: 30 ký t */ ATTRIBUTE A CH /* Thuc tớnh th ba: a ch ca khỏch hng */ TYPE STR(30) /* Kiu chui ký t: 30 ký t */ ATTRIBUTE KHI LNG /*T tớnh th t: lng ca khỏch hng */ TYPE REAL(6,2) /* Kiu s thc: ch s ú cú s l */ ATTRIBUTE TNH /*T tớnh th nm: tnh/TP ca khỏch hng */ TYPE STR(20) /* Kiu chui ký t: 20 ký t */ END CREATE I.3.3.1.2 Ngụn ng cp nht d liu (Data Update Language DUL) Ngụn ng cp nht d liu giỳp ngi dựng thc hin cỏc thao tỏc sau: i tờn, i kiu cỏc i tng ó khai bỏo Thờm hoc bt mt s thnh phn vo cu trỳc ó cú Thờm, sa, xúa d liu c s d liu Vớ d: RENAME TABLE KHCH HNG/KHCH HNG thnh KHACH */ /* i tờn bng KHCH RENAME ATTRIBUTE M KHCH/MAKH thnh MAKH */ /* i thuc tớnh M KHCH ADD ATTRIBUTE TEL_NUM TO TABLE KHACH TYPE STR(10) /* Thờm thuc tớnh s in thoi ca khỏch vo bng KHACH */ Trang 10 Giỏo trỡnh c s d liu V.2 CC DNG PH THUC HM V.2.1 Ph thuc tng phn Ph thuc hm X ặ A c gi l ph thuc tng phn nu X l tht s ca mt khúa ca quan h R Vớ d: Trong quan h R(U), U = SAIP, F = {Sặ A, SI ặ P} => khúa l SI A: khụng l thuc tớnh nguyờn t S ặ A: l ph thuc hm tng phn (do S SI) V.2.2 Ph thuc hm y / ph thuc hm s cp Ph thuc hm X ặ A c gi l ph thuc y nu khụng tn ti tht s Y no ca X (Y X) Y ặ A xy Nh vy, ph thuc y vo khúa ngc li vi ph thuc tng phn V.2.3 Ph thuc truyn Ph thuc hm X ặ A c gi l ph thuc truyn nu X khụng l tht s ca bt k khúa no Vớ d: U= SIDM, F = {SI ặ D, SD ặ M}, khúa l SI M khụng l thuc tớnh nguyờn t SD SI => SD ặ M l ph thuc hm truyn (Hay tn ti s : SI ặ SD ặ M, nờn SD ặ M l ph thuc hm truyn) V.2.4 Ph thuc trc tip Ph thuc hm X ặ A c gi l ph thuc trc tip nu khụng tn ti thuc tớnh Y, vi Y X, Y A tha: X ặ Y v Y ặ A V.3 PHẫP TCH CC S QUAN H V.3.1 Phộp tỏch mt s quan h énh ngha Phộp tỏch mt s quan h R ={A1, A2, , An } l thay th R bng mt hp P = {R1, R2, , Rk} cỏc ca R cho U = U1 U2 Uk, vi cỏc Ri xỏc nh trờn Ui Vớ d: R(A,B,C,D) thỡ P= (AB, BC, CD) l mt phộp tỏch trờn R Trang 62 Giỏo trỡnh c s d liu V.3.2 Phộp tỏch vi kt ni khụng mt thụng tin Nu R l mt s quan h c tỏch thnh cỏc s R1, R2, , Rk v F l mt cỏc ph thuc hm, ta núi phộp tỏch cú kt ni khụng mt thụng tin nu vi mi quan h r ca R tha F cho: r = r[R1] * r[R2] * r[Rk] V.3.2.1 Kim tra mt phộp tỏch cú phi l phộp tỏch cú kt ni khụng mt thụng tin Gii thut: Input: Mt s quan h R(A1, A2, , An), mt ph thuc hm F, v mt phộp tỏch P =(R1, R2, , Rk) ca R Output: Kt lun P cú phi l phộp tỏch cú kt ni khụng mt thụng tin hay khụng? Phng phỏp: - Xõy dng mt bng gm: k dũng (tng ng vi k s con) j ct (tng ng vi j thuc tớnh) Ti dũng i ct j ta ghi aj nu Aj Ri, bij nu Aj Ri - - Lp li vic xột tng ph thuc hm X ặ Y F, cho n khụng cũn thay i c bng Mi ln xột, ta tỡm cỏc dũng mang tr bng trờn thuc tớnh X Nu tỡm thy hai dũng nh vy, lm cho cỏc ký hiu trờn hai dũng ú ging ti cỏc thuc tớnh ca Y Nu sau sa bng, ta thy cú dũng no ú cú dng a1, a2, , ak, thỡ kt ni l khụng mt thụng tin Ngc li l khụng Vớ d: Xột phộp tỏch SAIP thnh SA v SIP Cỏc ph thuc hm gm S ặ A v SI ặ P, v bng ban u l: SA SIP S a1 a1 A a2 b22 I b13 a3 P b14 a4 Do S ặ A nờn bng tr thnh: SA SIP S a1 a1 A a2 a2 I b13 a3 P b14 a4 Vỡ bng cú mt dũng cha ton aj, kt ni l khụng mt thụng tin Trang 63 Giỏo trỡnh c s d liu V.3.2.2 énh lý Nu P=(R1, R2) l mt phộp tỏch s quan h R, v F l mt ph thuc hm, thỡ P l phộp tỏch cú mt kt ni khụng mt thụng tin tha F nu v ch nu: (R1 R2) ặ (R1 - R2) hoc (R1 R2) ặ (R2 - R1) Chỳ ý: - Cỏc ph thuc hm ny khụng cn thuc F, ch cn thuc F+ - énh lý ny ch ỏp dng cho cỏc phộp tỏch R thnh s quan h Vớ d: R= ABC v F = {A ặ B} - Phộp tỏch P = (AB,AC) l phộp tỏch khụng mt thụng tin vỡ: AB AC = A AB - AC = B V ta cú A ặ B F+ - Cũn phộp tỏch P = (AB, BC) khụng phi l phộp tỏch khụng mt thụng tin vỡ: AB BC = B AB - BC = A Nhng ta khụng cú ph thuc hm: B ặ A F+ Trang 64 Giỏo trỡnh c s d liu V.4 CC DNG CHUN CA LQH V GII THUT CHUN HểA V.4.1 Gii thiu Khi thit k mt CSDL quan h, ta thng phi chn mt nhiu s quan h Mt vi la chn tt hn nhng cỏi khỏc vỡ nhiu lý khỏc Mt CSDL c thit k khụng tt s dn n nhiu rc ri ny sinh s dng Vỡ th, t l lm thit k c mt CSDL tt é gii quyt cỏc ny, ngi ta a cỏc mc chun cho mt CSDL quan h Nu mt CSDL quan h khụng dng chun thỡ s gõy khú khn cho vic cp nht d liu S cỏc mc chun húa cú th c biu din nh sau: Loi b cỏc d thng cú th cú Dng chun th t Loi b cỏc ph thuc hm a tr Dng chun Boyce-Codd Loi b cỏc ph thuc hm khụng khúa Dng chun th ba Loi b cỏc ph thuc hm truyn Dng chun th hai Loi b cỏc ph thuc hm tng phn Dng chun th nht Loi b cỏc nhúm lp li Cỏc bng cha chun V.4.2 Dng chun th nht (The First Normal Form) V.4.2.1 énh ngha Mt s quan h c xem l dng chun th nht nu mi thuc tớnh ca R u khỏc trng, ph thuc hm vo khúa v khụng c mng giỏ tr kộp Vớ d 1: CUNG_UNG (MA_NSX, MA_HANG, SO_LG, VON_NSX, THANH_PHO, NUOC) Vi cỏc ph thuc hm: a) MA_NSX, MA_HANG SO_LG b) MA_NSX VON_NSX c) MA_NSX TH_PHO d) MA_NSX NUOC e) TH_PHO NUOC ệ Quan h CUNG_UNG tha dng chun th nht Trang 65 Giỏo trỡnh c s d liu Vớ d 2: Cho quan h GIAOVIEN nh sau: MAGV CNTT001 CNTT002 QTKD001 QTKD002 HOTEN N.T.N T.T.G T.L.H L.H.P.T NSINH 12/01/76 26/3/76 10/10/70 01/02/60 KHOA CNTT CNTT QTKD QTKD Nhn xột: Quan h ny cú thuc tớnh MAGV mang giỏ tr kộp nờn vi phm dng chun th nht Vớ d 3: Cho quan h HOSO nh sau: MAHS 001 HOTEN N.T.N NSINH 12/01/76 KINH x 002 003 004 005 T.T.G T.L.H L.H.P.T L.T.H 26/3/76 10/10/70 01/02/60 01/01/85 x x HOA KHMER KHAC x x Nu thi im hin ti, cha cú h s no thuc dõn tc ôHoaằ, thỡ quan h ny vi phm dng chun V.4.2.2 Cỏch a v dng 1NF Chia cỏc thuc tớnh cú th phõn chia thnh cỏc thuc tớnh thnh phn cho n khụng th phõn chia c na Vớ d: Quan h GIAOVIEN vớ d trờn cú th tỏch thnh hai quan h nh sau: MAGV 001 002 003 004 HOTEN N.T.N T.T.G T.L.H L.H.P.T NSINH 12/01/76 26/3/76 10/10/70 01/02/60 MAGV 001 002 003 004 KHOA CNTT CNTT QTKD QTKD V.4.3 Dng chun th hai (The Second Normal Form) V.4.3.1 énh ngha Mt s quan h c xem l dng chun th hai nu nú tha dng chun th v khụng cú ph thuc hm tng phn no Trang 66 Giỏo trỡnh c s d liu Nhn xột: - é bit mt quan h R cú tha dng chun hay khụng, ta phi xỏc nh khúa ca R T ú, mi cú th xỏc nh cỏc ph thuc hm no l ph thuc hm tng phn - Ch cú cỏc quan h cú khúa gm hai thuc tớnh tr lờn thỡ mi cú th khụng tha dng chun Vớ d: Quan h CUNG_ UNG trờn cú khúa l {MA_NSX, MA_HANG} Nờn quan h ny khụng tha dng chun vỡ cú ph thuc hm tng phn: MA_NSX ặ VON_NSX V.4.3.2 Nhn xột Mt quan h khụng dng chun s gõy khú khn cp nht d liu Gi s: R(U) l quan h khụng dng chun K : khúa ca quan h R, XK :XặA, A N (N: thuc tớnh phi nguyờn thy) Ta mun thờm b t vo quan h ny, nu ta ch kim tra t.k u.k (u R) thỡ ta cha c phộp xen t vo R vỡ cú th u R m u.x=t.x nhng u.A t.A nhng bo m u.k t.k Vớ d, cho quan h SV_DT(MASV,MADT,TEN_DT,KQ) nh sau: MASV 001 002 MADT TEN_DT CNPM PTHT KQ Gi s ta mun thờm b t= vo quan SV_DT, rừ rng ta cú khúa ca b ny khụng trựng vi khúa ca mi b ca quan h ó cho, nhng ta khụng th thờm b ny vo quan h vỡ - B t cú MADT=2, - Trong quan h SV_DT cng mt b cú MADT=2, nhng TEN_DT ca hai b ny l khỏc Vỡ vy phi a quan h v dng chun V.4.3.3 Cỏch a v dng 2NF Nu R(U) : 2NF K X (X K, X A=) A N (N: thuc tớnh phi nguyờn thy) Trang 67 Giỏo trỡnh c s d liu Tỏch quan h R(U) = R[XA] * R[U-A], vi X l khúa o Xột quan h R[U-A] nu tha 2NF thỡ dng o Ngc li, lp li cỏc bc trờn cho R[U-A] Vớ d: Cho quan h SV_DT(MASV,MADT,TEN_DT,KQ) cú khúa l {MASV,MADT}, vỡ vy PTH MADTặ TEN_DT l PTH tng phn Tỏch quan h ny thnh hai quan h R1= SV_DT[MADT, TEN_DT], khúa l MADT R2=SV_DT[MASV, MADT, KQ], khúa l {MASV, MADT} Nhn xột: R1 v R2 u tha 2NF V.4.4 Dng chun th ba (The Third Normal Form) V.4.4.1 Nhn xột Cho quan h SINHVIEN (MASV, TEN, QUE, KM) Quan h ny dng chun nhng gõy khú khn cp nht d liu C th, mun thờm mt b t vo quan h ny ta ch kim tra trờn trng khúa l cha , m cũn phi kim tra ph thuc hm QUEặKM Nu khụng kim tra PTH ny, cú th dn n sai d liu nh sau: MASV 001 002 TEN BAO THU QUE VL VL KM 30 40 Vỡ vy cn phi a quan h ny v dng chun cao hn, ú l dng chun V.4.4.2 énh ngha Mt s quan h c xem l dng chun th ba nu nú tha dng chun th v khụng cú ph thuc hm truyn no Vớ d: Quan h CUNG_UNG trờn l khụng tha dng chun vỡ cú ph thuc hm truyn: MA_NSX ặ TH_PHO TH_PHO NUOC V.4.4.3 Cỏch a v dng 3NF Nu R: ơ3NF K X (X U, X A=) A N (N: thuc tớnh phi nguyờn thy) Trang 68 Giỏo trỡnh c s d liu Tỏch quan h R(U) = R[XA] * R[U-A], vi X l khúa Xột quan h R[U-A] nu tha 3NF thỡ dng Ngc li, lp li cỏc bc trờn cho R[U-A] Vớ d: Cho quan h SINHVIEN(MASV,TEN,QUE,KM) Quan h ny cú khúa l MASV, vỡ vy PTH QUEặ KM l PTH truyn Tỏch quan h ny thnh hai quan h: R1= SINHVIEN[QUE, KM], khúa l QUE R2= SINHVIEN[MASV,TEN,QUE], khúa l MASV Nhn xột: R1 v R2 u tha 3NF V.4.5 Dng chun BCNF(Boyce Codd Normal Form) V.4.5.1 énh ngha Mt s quan h c xem l dng chun BCNF nu nú tha dng chun th v khụng tn ti bt c ph thuc hm no m v trỏi khụng phi l siờu khúa Vớ d 1: R = (CSZ), F = { CS ặ Z, Z ặ C}, khúa l CS, CZ Cú ph thuc hm Z ặ C vi Z khụng l siờu khúa ệ R(CSZ) khụng tha BCNF Vớ d 2: R(MSK), F = {MS ặ K} khúa MS MSK tha BCNF vỡ MS l siờu khúa V.4.5.2 Gii thut a v dng chun BCNF bng phộp tỏch cú kt ni khụng mt thụng tin Input: S quan h R v ph thuc hm F (Vi gi thit F dng ti tiu v rỳt gn t nhiờn) Output: Mt phộp tỏch R vi kt ni khụng mt thụng tin, cho mi s quan h phộp tỏch s dng chun BCNF v tha chiu ca F trờn ú Phng phỏp: Ta lp i lp li vic xõy dng mt phộp tỏch P cho R, v phộp tỏch ú luụn cú mt kt ni khụng mt thụng tin tha F - Khi u, ta cho P = (R) - Lp li P cũn cha s quan h khụng tha dng chun BCNF Trang 69 Giỏo trỡnh c s d liu Gi S l mt s quan h P, v S khụng dng chun BCNF Xột X ặ A, vi X khụng l siờu khúa ca S, v A X, ệ Tỏch S P thnh S1 v S2, ú: S1 cha A v cỏc thuc tớnh ca X S2 cha tt c cỏc thuc tớnh ca S tr i A Ht lp Vớ d 1: MGTPSK MG, MS K, TPM TSP, TGP Khúa l TS MGTPS MG, TP M,TSP, TGP Khúa: TS MSK MS K MPTS TP M, TSP, TMP Khúa: TS MG M G TPM TP M TSP TS P Lu ý: - Phộp tỏch s khỏc i nu ta thay i ph thuc hm c chn tỏch - Phộp tỏch ny cú th l phộp tỏch khụng bo tn ph thuc hm Trang 70 Giỏo trỡnh c s d liu Vớ d 2: Cho lc quan h R(U) v ph thuc hm F, U = ABCDEG ABCDEG F = { AE C AE C, CG A, CG A BD G, GA E Khúa l BDA BD G GA E } ABCDE AEC, CBD A, BDA E Khúa: BDA BDG BD G AEC AE C ABDE BDA E Khúa: BDA Vớ d 3: Cho lc quan h R(CTHRSG) v ph thuc hm F U = CTHRSG, ú: C : Giỏo trỡnh ; T : Thy ; H : gi ; R : Phũng hc ; S : Sinh viờn ; G : Lp F = { C T : Mi giỏo trỡnh cú mt Thy dy HR C : Ch mt mụn hc (giỏo trỡnh) mt phũng hc ti mt thi im HT R : Ti mi thi im, mi Thy ch cú th dy mt phũng CS G : Mi sinh viờn theo hc mi giỏo trỡnh ch mt lp HS R : Mi sinh viờn ch cú th mt phũng hc ti mi thi im } CTHRSG C T, HR C, TH R CS G, HS R Khúa l HS CTHRS C T, HR C, TH R, HS R Khúa: HS CSG CS G CHRS HR C, CH R, HS R Khúa: TS CT CT CHR CH R, HR C Khúa : CH,HR Trang 71 HSC HS C Giỏo trỡnh c s d liu TI LIU THAM KHO [Oneil 1994] Patrick Oneil, Database - principles, programming, performance, Morgan Kaufmann Inc,1994 [Silberschatz et al.1996], Abraham Silberschatz, Henry F.Korth, S.Sudarshan, Database system concepts, McGRAW-HILL Inc, 1996 [Huy] TS Nguyn Xuõn Huy, Giỏo trỡnh C s d liu [Lc 1999] Phm Th Xuõn Lc, Bi ging C s d liu, 1999 Trang 72 Giỏo trỡnh c s d liu MC LC CHNG I - CC KHI NIM C BN V C S D LIU I.1 CC KHI NIM C BN I.1.1 D liu (Data) I.1.2 C s d liu (Database) I.1.3 H qun tr c s d liu (Database Management System- DBMS) I.1.4 S cn thit ca c s d liu I.2 CC Mễ HèNH CSDL I.2.1 Mụ hỡnh húa tin hc I.2.2 Mụ hỡnh mng I.2.3 Mụ hỡnh phõn cp I.2.4 Mụ hỡnh quan h I.3 NGễN NG D LIU I.3.1 Khỏi nim v ngụn ng I.3.2 Ngụn ng t nhiờn I.3.3 Ngụn ng hỡnh thc I.3.3.1 Ngụn ng d liu: 10 I.3.3.1.1 Ngụn ng mụ t d liu (Data Definition Language DDL) 10 I.3.3.1.2 Ngụn ng cp nht d liu (Data Update Language DUL) 10 I.3.3.1.3 Ngụn ng truy nhp d liu (hay cũn c gi l ngụn ng hi (Query Langguage QL) 11 I.3.3.2 Phõn loi ngụn ng 11 I.3.3.2.1 Phõn loi theo hỡnh thc th hin: 11 I.3.3.2.2 Ch hi thoi 11 I.3.3.2.3 Ch chng trỡnh: 11 I.3.3.3 Phõn loi theo theo kiu (cu trỳc): 12 I.3.3.3.1 Kiu th tc (procedure): 12 I.3.3.3.2 Kiu phi th tc (non-procedure): 12 I.3.4 Chuyờn ngnh c s d liu 12 Chng II - Mễ HèNH QUAN H V éI S QUAN H 13 II.1 Mễ HèNH QUAN H 13 II.1.1 nh ngha quan h 13 II.1.1.1 Tớch -cỏc (Decastersian) 13 II.1.1.2 Quan h 13 II.1.2 Mụ hỡnh CSDL quan h 13 II.1.2.1 Thuc tớnh (attribute): 13 II.1.2.2 Quan h (Relation) v b (tuple) CSDL quan h 14 II.1.2.3 Bc (dimention), lc lng (card): 14 II.1.2.4 Lc quan h (Schema)- tõn t (predicate): 14 II.1.2.5 CSDL quan h: 14 II.1.3 Mt s thao tỏc c bn trờn CSDL 15 II.2 I S QUAN H 15 II.2.1 nh ngha i s quan h 15 II.2.2 Cỏc phộp toỏn c bn ca i s quan h: 15 II.2.2.1 Phộp chn (Selection): kớ hiu () 16 II.2.2.2 Phộp chiu (Projection): kớ hiu [ ] 16 II.2.2.3 Tớch -Cỏc: kớ hiu x 17 II.2.2.4 Khỏi nim thụng thng gia cỏc quan h: 17 Trang 73 Giỏo trỡnh c s d liu II.2.2.5 Phộp - kt ni: kớ hiu ZY 19 II.2.2.6 Phộp kt ni t nhiờn (Natural Join): kớ hiu * 19 II.2.2.7 Phộp chia (Division): kớ hiu / 20 II.2.2.8 Cỏc phộp toỏn trờn hp: 20 II.2.2.8.1 Phộp hp (Union): kớ hiu 20 II.2.2.8.2 Phộp giao (Intersection): kớ hiu 21 II.2.2.8.3 Phộp tr (Subtraction): kớ hiu \ 21 II.2.2.9 i tờn thuc tớnh: 21 II.2.3 Tớnh cht ca cỏc phộp toỏn SQH: 21 II.2.3.1 Tớnh giao hoỏn: 21 II.2.3.2 Tớnh kt hp: 22 II.2.3.3 Tớnh ly ng: 22 II.2.3.4 Thỏc cỏc phộp chn: 22 II.2.3.5 Phộp chn theo hi, tuyn: 23 II.2.3.6 Thỏc cỏc phộp chiu: 23 II.2.3.7 Thỏc cỏc phộp chn - kt ni: 23 II.2.3.8 Thỏc phộp chiu - chn: 23 II.2.3.9 Biu din phộp giao qua phộp tr: 23 II.2.3.10 Biu din phộp chia qua cỏc phộp toỏn khỏc: 23 II.2.4 Biu thc quan h v ti u húa biu thc 23 Chng III - NGễN NG SQL 28 III.1 CC KHI NIM C BN 28 III.2 NH NGHA BNG 28 III.2.1 To bng 28 III.2.2 Thờm dũng vo bng 29 III.3 LNH TRUY VN SELECT 29 III.3.1 Hin th ton b bng 30 III.3.2 Lu kt qu cõu hi 30 III.3.3 Sp xp kt qu 30 III.3.4 Sp xp th t cỏc ct hin th 31 III.3.5 Gii hn mt s ct hin th 31 III.3.6 Loi b nhng dũng trựng lp 31 III.3.7 S dng danh cho ct 32 III.4 CHN CC DềNG TRONG BNG 32 III.4.1 iu kin kt hp 32 III.4.2 iu kin loi tr 33 III.4.3 iu kin ph nh 33 III.4.4 So sỏnh vi mt d liu 33 III.4.5 Tỡm kim theo phm vi 34 III.4.6 Tha mu dng chui 34 III.5 CC HM NI TI 35 III.6 CC TON T S HC 36 III.7 TRUY VN CON 37 III.8 GOM NHểM CC DềNG 38 III.8.1 Mnh HAVING 39 III.8.2 S dng mnh WHERE 39 III.9 NI KT CC BNG 40 III.10 CP NHT CSDL 42 Trang 74 Giỏo trỡnh c s d liu III.10.1 Lnh INSERT 42 III.10.2 Lnh UPDATE 42 III.10.3 Lnh DELETE 42 III.11 TèM KIM Cể CHA PHẫP TNH TP HP 42 Chng IV - RNG BUC TON VN 44 IV.1 RNG BUC TON VN (Intergrety constraint) 44 IV.1.1 Khỏi nim 44 IV.1.2 Cỏc yu t ca RBTV 44 IV.1.2.1 éiu kin ca RBTV: 44 IV.1.2.2 Bi cnh ca mt RBTV: 44 IV.1.2.3 Bng tm nh hng ca RBTV: 45 IV.1.3 Phõn loi cỏc RBTV: 46 IV.1.3.1 RBTV cú bi cnh l mt quan h: 46 IV.1.3.1.1 RBTV v tr: 46 IV.1.3.1.2 RBTV liờn thuc tớnh: 46 IV.1.3.1.3 RBTV liờn b: 46 IV.1.3.2 RBTV cú bi cnh gm nhiu quan h: 47 IV.1.3.2.1 RBTV v ph thuc tn ti (RBTV v khúa ngoi): 47 IV.1.3.2.2 RBTV liờn thuc tớnh, liờn quan h: 47 IV.1.3.2.3 RBTV liờn b, liờn quan h: 47 IV.1.3.2.4 RBTV v thuc tớnh tng hp: 47 IV.1.3.2.5 RBTV cú chu trỡnh th biu din ca lc CSDL: 48 IV.2 PH THUC HM 49 IV.2.1 énh ngha: 49 IV.2.2 Tớnh cht ca PTH: 49 IV.3 BAO ểNG CA TP THUC TNH 50 IV.3.1 énh Ngha: 50 IV.3.2 Thut toỏn tỡm bao úng: 51 IV.3.3 Cỏc tớnh cht ca bao úng: 51 IV.4 BAO ểNG CA TP CC PTH 52 IV.4.1 nh ngha 52 IV.4.2 Tớnh cht ca bao úng ca PTH 53 IV.5 TP PH THUC HM TI TIU 54 IV.5.1 énh ngha 54 IV.5.2 énh lý: 54 IV.5.3 Thut toỏn tỡm ph thuc hm ti tiu: 55 IV.5.4 Vớ d 56 IV.6 TP PH THUC HM RT GN T NHIấN 57 IV.6.1 énh ngha 57 IV.6.2 Cỏch a v dng rỳt gn t nhiờn 57 IV.6.3 Vớ d 58 Chng V - CHUN HểA LC é CSDL QUAN H 59 V.1 KHểA- SIấU KHểA 59 V.1.1 Khỏi nim: 59 V.1.2 Gii thut tỡm khúa n gin 59 V.1.3 Gii thut tỡm tt c cỏc khúa 60 V.1.3.1 Phộp dch chuyn lc quan h 60 Trang 75 Giỏo trỡnh c s d liu V.1.3.2 énh lý c bn 60 V.1.3.3 énh lý 60 V.1.3.4 B 61 V.1.3.5 Gii thut tỡm K 61 V.2 CC DNG PH THUC HM 62 V.2.1 Ph thuc tng phn 62 V.2.2 Ph thuc hm y / ph thuc hm s cp 62 V.2.3 Ph thuc truyn 62 V.2.4 Ph thuc trc tip 62 V.3 PHẫP TCH CC S QUAN H 62 V.3.1 Phộp tỏch mt s quan h 62 V.3.2 Phộp tỏch vi kt ni khụng mt thụng tin 63 V.3.2.1 Kim tra mt phộp tỏch cú phi l phộp tỏch cú kt ni khụng mt thụng tin 63 V.3.2.2 énh lý 64 V.4 CC DNG CHUN CA LQH V GII THUT CHUN HểA 65 V.4.1 Gii thiu 65 V.4.2 Dng chun th nht (The First Normal Form) 65 V.4.2.1 énh ngha 65 V.4.2.2 Cỏch a v dng 1NF 66 V.4.3 Dng chun th hai (The Second Normal Form) 66 V.4.3.1 énh ngha 66 V.4.3.2 Nhn xột 67 V.4.3.3 Cỏch a v dng 2NF 67 V.4.4 Dng chun th ba (The Third Normal Form) 68 V.4.4.1 Nhn xột 68 V.4.4.2 énh ngha 68 V.4.4.3 Cỏch a v dng 3NF 68 V.4.5 Dng chun BCNF(Boyce Codd Normal Form) 69 V.4.5.1 énh ngha 69 V.4.5.2 Gii thut a v dng chun BCNF bng phộp tỏch cú kt ni khụng mt thụng tin 69 TI LIU THAM KHO 72 Trang 76 [...]... trong FoxPro 2.6 vì dễ cài đặt trên máy nhỏ và đơn giản sẽ giúp dễ dàng nắm được các khái niệm chính III.1 CÁC KHÁI NIỆM CƠ BẢN • • • • Truy vấn: tham chiếu dữ liệu trong CSDL Xử lý dữ liệu: thêm, sửa, xóa dữ liệu trong CSDL Định nghĩa dữ liệu: thêm bảng, view, và chỉ mục và CSDL Điều khiển dữ liệu: hạn chế quyền xử lý dữ liệu cho các dữ liệu riêng trong CSDL Với SQL, dữ liệu được lưu trữ dưới dạng bảng... giống nhau, như đảm bảo tính toàn vẹn dữ liệu (không phát sinh các dữ liệu mâu thuẫn, không làm mất dữ liệu) , đảm bảo tính độc lập của chương trình khai thác đối với tổ chức vật lý cụ thể của dữ liệu, đảm bảo sự tối ưu trong lưu trữ và khai thác v v Điều đáng quan tâm là dùng mô hình quan hệ chúng ta dễ dàng biểu đạt các vấn đề một cách chặt chẽ Trang 12 Giáo trình cơ sở dữ liệu CHƯƠNG II - MÔ HÌNH... và khai thác các cơ sở dữ liệu là mô hình phân cấp, mô hình mạng và mô hình quan hệ, thì mô hình quan hệ được quan tâm hơn cả vào khoảng vài chục năm trở lại đây Các hệ cơ sở dữ liệu quan hệ được thiết kế và cài đặt trên tất cả các hệ máy: hệ micro, hệ mini, hệ mainframe và các hệ siêu máy tính Trong các chương trình xây dựng máy tính thế hệ mới, mô hình quan hệ được quan tâm đáng kể Sở dĩ mô hình quan... tính phải thuộc một kiểu dữ liệu Tập hợp các phần tử mà thuộc tính A có thể lấy giá trị gọi là miền trị của thuộc tính A, kí hiệu: dom(A) (dom : Domain) Trang 13 Giáo trình cơ sở dữ liệu II.1.2.2 Quan hệ (Relation) và bộ (tuple) trong CSDL quan hệ Định nghĩa: Cho tập hữu hạn U={A1, A2, , An} (n ≥ 1) là tập hợp các thuộc tính, với mỗi Ai ∈ U có dom(Ai) = Di tương ứng - Một quan hệ R trên tập thuộc tính. .. (MADT>3) (1) [MASV,HOTEN,NSINH] SINHVIEN (MASV>MADT, [MASV,HOTEN,NSINH] (2) SV_DT Trang 27 DETAI (3) Giáo trình cơ sở dữ liệu CHƯƠNG III - NGÔN NGỮ SQL ĐSQH và phép tính quan hệ đều hết sức cơ bản để biểu diễn các câu hỏi, nhưng vẫn còn mang nặng tính chất hình thức Do đó, các hệ quản trị cơ sở dữ liệu cần một ngôn ngữ hỏi thân thiện với người sử dụng hơn SQL đáp ứng yêu cầu đó Ngôn ngữ SQL được phát... tới lĩnh vực nhận dạng, phân tích và tổng hợp tiếng nói I.3.4 Chuyên ngành cơ sở dữ liệu Chuyên ngành cơ sở dữ liệu là một lĩnh vực của tin học nghiên cứu các cơ chế, nguyên lý, phương pháp tổ chức các nhóm dữ liệu trên các vật mang tin ngoài (các loại đĩa trống từ, đĩa từ, đĩa quang học v v) nhằm phục vụ cho việc khai thác dữ liệu trong các hệ thống thông tin (Ví dụ: các hệ thống lưu trữ và tra cứu... như sau: CREATE TABLE ( [NOT NULL], [NOT NULL], [NOT NULL]) Từ khóa NOT NULL có nghĩa là bắt buộc phải có giá trị trong cột này Đây là một trong các ràng buộc toàn vẹn quan trọng cho phép người thiết kế: yêu cầu phải Trang 28 Giáo trình cơ sở dữ liệu nhập liệu hay không vào các cột chỉ định Ít nhất một cột phải... người sử dụng tìm kiếm thông tin trong cơ sở dữ liệu Thông thường trong ngôn ngữ hỏi có ba mục khai báo chủ yếu sau: • Mục đường dẫn: cho biết vị trí của các đối tượng cần xử lý Đối tượng thường được định danh bằng tên, nếu biết tên thì biết nơi lưu trữ đối tượng • Mục điều kiện: chứa điều kiện để lọc dữ liệu trong cơ sở dữ liệu • Mục khuôn ra: quy định khuôn dạng dữ liệu cần đưa ra Ví dụ: Câu hỏi "Cho... toán hai ngôi f(a,b) có tính chất giao hoán nếu: Trang 21 Giáo trình cơ sở dữ liệu ∀a,b ∈ M đều có: f(a,b) = f(b,a) Trong ĐSQH, các phép toán hợp, giao, kết nối có tính chất giao hóan, tức là: R*S=S*R (nếu thứ tự các thuộc tính là không quan trọng) R + S = S+ R (R và S tương thích) R.S=S.R II.2.3.2 Tính kết hợp: Định nghĩa: Phép toán hai ngôi f trong đại số hệ α = có tính chất kết hợp nếu: ∀a,b,c... tập các quan hệ biến thiên theo thời gian Trong CSDL Trong lập trình Lược đồ quan hệ ↔ Kiểu biến Quan hệ ↔ Biến Một thể hiện của quan hệ ↔ Một giá trị của biến Trang 14 Giáo trình cơ sở dữ liệu II.1.3 Một số thao tác cơ bản trên CSDL • • • • • • • Tạo quan hệ: RCREATE () ATTR TYPE [ ATTR TYPE FROM ] END Mở CSDL: DBOPEN

Ngày đăng: 03/12/2015, 01:42

Từ khóa liên quan

Mục lục

  • CHƯƠNG I - CÁC KHÁI NIỆM CƠ BẢN VỀ CƠ SỞ DỮ LIỆU

  • I.1. CÁC KHÁI NIỆM CƠ BẢN

    • I.1.1 Dữ liệu (Data)

    • I.1.2 Cơ sở dữ liệu (Database)

    • I.1.3 Hệ quản trị cơ sở dữ liệu (Database Management System- DBMS)

    • Một Hệ quản trị cơ sở dữ liệu là một hệ thống gồm một hoặc nhiều CSDL và các chương trình ứng dụng dùng để khai thác và xử lý dữ liệu trong CSDL đó.

    • I.1.4 Sự cần thiết của cơ sở dữ liệu

    • I.2. CÁC MÔ HÌNH CSDL

      • I.2.1 Mô hình hóa trong tin học

      • I.2.2 Mô hình mạng

      • I.2.3 Mô hình phân cấp

      • I.2.4 Mô hình quan hệ

      • I.3. NGÔN NGỮ DỮ LIỆU

        • I.3.1 Khái niệm về ngôn ngữ

        • I.3.2 Ngôn ngữ tự nhiên

        • I.3.3 Ngôn ngữ hình thức

          • I.3.3.1 Ngôn ngữ dữ liệu:

            • I.3.3.1.1 Ngôn ngữ con mô tả dữ liệu (Data Definition Language – DDL)

            • I.3.3.1.2 Ngôn ngữ con cập nhật dữ liệu (Data Update Language – DUL)

            • I.3.3.1.3 Ngôn ngữ con truy nhập dữ liệu (hay còn được gọi là ngôn ngữ hỏi (Query Langguage – QL)

            • I.3.3.2 Phân loại ngôn ngữ

              • I.3.3.2.1 Phân loại theo hình thức thể hiện:

              • I.3.3.2.2 Chế độ hội thoại

              • I.3.3.2.3 Chế độ chương trình:

              • I.3.3.3 Phân loại theo theo kiểu (cấu trúc):

                • I.3.3.3.1 Kiểu thủ tục (procedure):

                • I.3.3.3.2 Kiểu phi thủ tục (non-procedure):

Tài liệu cùng người dùng

Tài liệu liên quan