Giáo trình cơ sở dữ liệu

176 332 0
Giáo trình cơ sở dữ liệu

Đ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 Biờn bi: Ngụ Trn Thanh Tho Giỏo trỡnh c s d liu Biờn bi: Ngụ Trn Thanh Tho Cỏc tỏc gi: Ngụ Trn Thanh Tho Phiờn bn trc tuyn: http://voer.edu.vn/c/3eaa132c MC LC Cỏc khỏi nim c bn Nhng khỏi nim c bn Nhng cỏch tip cn mt c s d liu Mụ hỡnh d liu quan h ca e.f.codd Rng buc ton Rng buc ton cỏc loi Ngụn ng i s quan h Ngụn ng i s quan h (tip theo) Ngụn ng truy c s d liu SQL 10 Ngụn ng truy CSDL SQL (tip theo) 11 Ngụn ng tõn t 12 Ngụn ng tõn t (tip theo) 13 Ti u húa cõu hi 14 Ti u húa cõu hi (tip theo) Tham gia úng gúp 1/174 Cỏc khỏi nim c bn Dn nhp - Ti cn phi cú mt CSDL Trong nhng nm gn õy, thut ng "C S D LIU" (Ting Anh l DataBase, vit tt ting Vit l CSDL) ó tr nờn khỏ quen thuc khụng ch riờng vi nhng ngi lm Tin hc m cũn i vi c nhng ngi lm nhiu lnh vc khỏc nh Thng kờ, Kinh t, Qun lý Doanh nghip v.v Cỏc ng dng ca Tin hc vo cụng tỏc qun lý ngy cng nhiu hn v cng a dng hn Cú th núi hu ht cỏc lnh vc kinh t, xó hi, giỏo dc, y t v.v u ó ng dng cỏc thnh tu mi ca Tin hc vo phc v cụng tỏc chuyờn mụn ca mỡnh Chớnh vỡ l ú m ngy cng nhiu ngi quan tõm n lnh vc thit k v xõy dng cỏc CSDL Mc ớch ca chng I ch n gin l cung cp cỏc khỏi nim c bn v CSDL cỏc hc viờn cú mt cỏi nhỡn ban u v mt c s d liu v mt h qun tr CSDL Trc ht chỳng ta s tỡm hiu lý ti cn phi cú mt CSDL H thng cỏc tin c in (File System) Cho n cũn mt s n v kinh t, hnh chớnh s nghip v.v s dng mụ hỡnh h thng cỏc tin c in: chỳng c t chc riờng r, phc v cho mt mc ớch ca mt n v hay mt n v trc thuc c th Chng hn, hóy xột vớ d sau: Vớ d 1.1: Ti mt cụng ty ngi ta trang b mỏy vi tớnh cho tt c cỏc phũng, ban nghip v B phn Vn phũng s dng mỏy tớnh son tho cỏc bn bỏo cỏo bng MicroSoft Word th trng yờu cu v tỡnh hỡnh hot ng ca n v ú cú ch tiờu v tng s cụng nhõn viờn chc chia theo trỡnh chuyờn mụn c o to Phũng K toỏn s dng mỏy tớnh tớnh lng v in danh sỏch lng ca tng b phn n v da trờn danh sỏch cỏn b viờn chc cựng h s lng v cỏc h s ph cp ca h phũng T chc cung cp Thụng tin m phũng K toỏn qun lý v khai thỏc l: H v Tờn, H s lng, H s ph cp, Ph cp khỏc ca cỏc cụng nhõn viờn chc (CNVC) xp theo tng phũng ban v s dng cụng c phũng l MicroSoft Excel Phũng T chc qun lý thụng tin lý lch ca CNVC chi tit hn gm H CNVC, Tờn CNVC ( riờng thnh mt ct "Tờn" tin sp xp theo Alphabet), Bớ danh, Gii tớnh, Ngy sinh, Ngy tuyn dng, Hon cng gia ỡnh, Quỏ trỡnh c o to, H s lng, H s ph cp, Ngy xp lng trờn nhng thiu thụng tin v Phc cp khỏc ca CNVC Phn mm c s dng qun lý l FoxPro for Windows 2/174 Trong ú, ti Tng cụng ty ca h, cỏc phũng ban nghip v cng c trang b vi tớnh Phũng T chc cỏn b ti Tng cụng ty s dng phn mm MicroSoft Access qun lý CNVC gm cỏc cỏn b ch cht t trng phú phũng, qun c v phú qun c xớ nghip tr lờn ca cỏc cụng ty trc thuc Thụng tin qun lý ti õy cng ging nh thụng tin qun lý ti phũng t chc ca cụng ty Nhn xột : u im: - Vic xõy dng h thng cỏc tin riờng ti tng n v qun lý ớt tn thi gian bi lng thụng tin cn qun lý v khai thỏc l nh, khụng ũi hi u t vt cht v cht xỏm nhiu, ú trin khai ng dng nhanh nh ngha mt CSDL C s d liu l mt h thng cỏc thụng tin cú cu trỳc c lu tr trờn cỏc thit b lu tr thụng tin th cp (nh bng t, a t ) cú th tha yờu cu khai thỏc thụng tin ng thi ca nhiu ngi s dng hay nhiu chng trỡnh ng dng vi nhiu mc ớch khỏc Trong nh ngha ny cn nhn mnh nhng khớa cnh ca nh ngha c lu ý qua cỏc t gch chõn Trc ht, CSDL phi l mt hp cỏc thụng tin mang tớnh h thng ch khụng phi l cỏc thụng tin ri rc, khụng cú mi quan h vi Cỏc thụng tin ny phi cú cu trỳc v hp cỏc thụng tin ny phi cú kh nng ỏp ng cỏc nhu cu 3/174 khai thỏc ca nhiu ngi s dng mt cỏch ng thi ú cng chớnh l cỏc c trng ca CSDL Rừ rng, u im ni bt ca CSDL l: Gim s trựng lp thụng tin xung mc thp nht v ú bo m c tớnh nht quỏn v ton d liu m bo d liu cú th c truy xut theo nhiu cỏch khỏc Kh nng chia s thụng tin cho nhiu ngi s dng v nhiu ng dng khỏc Tuy nhiờn, t c cỏc u im trờn, CSDL t nhng cn phi gii quyt ú l: Tớnh ch quyn ca d liu Do tớnh chia s ca CSDL nờn tớnh ch quyn ca d liu cú th b lu m v lm m nht tinh thn trỏch nhim, c th hin trờn an ton d liu, kh nng biu din cỏc mi liờn h ng ngha ca d liu, v tớnh chớnh xỏc ca d liu iu ny cú ngha l ngi khai thỏc CSDL phi cú ngha v cp nht cỏc thụng tin mi nht ca CSDL Tớnh bo mt v quyn khai thỏc thụng tin ca ngi s dng Do cú nhiu ngi c phộp khai thỏc CSDL mt cỏch ng thi nờn cn phi cú mt c ch bo mt v phõn quyn hn khai thỏc CSDL Cỏc h iu hnh nhiu ngi s dng hay h iu hnh mng cc b (Novelll Netware, Windows For WorkGroup, WinNT, ) u cú cung cp c ch ny Tranh chp d liu Nhiu ngi c phộp truy nhp vo cựng mt ti nguyờn d liu (Data Source) ca CSDL vi nhng mc ớch khỏc nhau: Xem, thờm, xúa hoc sa d liu Cn phi cú mt c ch u tiờn truy nhp d liu cng nh c ch gii quyt tỡnh trng khúa cht (DeadLock) quỏ trỡnh khai thỏc cnh tranh C ch u tiờn cú th c thc hin bng vic cp quyn (hay mc ) u tiờn cho tng ngi khai thỏc ngi no c cp quyn hn u tiờn cao hn thỡ c u tiờn truy nhp d liu trc; theo bin cú hoc loi truy nhp - quyn c c u tiờn trc quyn ghi d liu; da trờn thi im truy nhp - cú yờu cu truy xut trc thỡ cú quyn truy nhp d liu trc; hoc theo c ch lp lch truy xut hay cỏc c ch khúa [7] m bo d liu cú s c Vic qun lý d liu trung cú th lm tng kh nng mt mỏt hoc sai lch thụng tin cú s c nh mt in t xut, mt phn a lu tr CSDL b h v.v Mt s h iu hnh mng cú cung cp dch v lu nh a cng (c ch s dng a cng d phũng - RAID), t ng kim tra v khc phc li cú s c, nhiờn, bờn cnh dch v ca h iu hnh, m bo CSDL luụn luụn n nh, mt CSDL nht thit phi cú mt c ch khụi phc d liu cỏc s c bt ng xy 4/174 Cỏc i tng s dng CSDL: Nhng ngi s dng CSDL khụng chuyờn v lnh vc tin hc v CSDL, ú CSDL cn cú cỏc cụng c cho nhng ngi s dng khụng chuyờn cú th s dng khai thỏc CSDL cn thit Cỏc chuyờn viờn tin hc bit khai thỏc CSDL Nhng ngi ny cú th xõy dng cỏc ng dng khỏc phc v cho cỏc mc ớch khỏc trờn CSDL Nhng ngi qun tr CSDL, ú l nhng ngi hiu bit v tin hc, v cỏc h qun tr CSDL v h thng mỏy tớnh H l ngi t chc CSDL (khai bỏo cu trỳc CSDL, ghi nhn cỏc yờu cu bo mt cho cỏc d liu cn bo v ) ú h phi nm rừ cỏc k thut v CSDL cú th phc hi d liu cú s c H l nhng ngi cp quyn hn khai thỏc CSDL, vy h cú th gii quyt c cỏc tranh chp d liu, nu cú - Thụng tin c khai thỏc ch phc v cho mc ớch hp nờn kh nng ỏp ng nhanh chúng, kp thi Nhc im: - Do thụng tin c t chc mi phũng ban mi khỏc, cng nh phn mm cụng c trin khai mi ni cng rt khỏc nờn s phi hp t chc v khai thỏc cỏc phũng ban l khú khn Thụng tin phũng ban ny khụng s dng c cho phũng ban khỏc, ti n v vi n v cp trờn Cựng mt thụng tin c nhp vo mỏy ti nhiu ni khỏc gõy lóng phớ cụng sc nhp tin v khụng gian lu tr trờn cỏc vt mang tin S trựng lp thụng tin cú th dn n tỡnh trng khụng nht quỏn d liu Chng hn, nhõn viờn Nguyn Vn Quang c ghi y phũng T chc, nhng ti phũng K toỏn ch ghi tt l Nguyn v Quang Thụng tin c t chc nhiu ni nờn vic cp nht cng d lm mt tớnh nht quỏn d liu Mt cỏn b ch cht ca cụng ty cú thay i v hon cnh gia ỡnh (mi ci v / ly chng, sinh thờm ) cú th c cp nht ti n v nhng sau mt thi gian mi c cp nht ti Tng cụng ty Do h thng c t chc thnh cỏc h thng file riờng l nờn thiu s chia s thụng tin gia cỏc ni Vic kt ni cỏc h thng ny hay vic nõng cp ng dng s l rt khú khn Qua phõn tớch trờn chỳng ta nhn thy vic t chc d liu theo h thng cỏc tin cú nhiu nhc im Vic xõy dng mt h thng tin m bo c tớnh cht nht quỏn 5/174 d liu, khụng trựng lp thụng tin m ỏp ng c nhu cu khai thỏc ng thi ca tt c cỏc phũng ban cụng ty v tng cụng ty l thc s cn thit H phn mm qun tr CSDL gii quyt tt tt c cỏc t cho mt CSDL nh ó nờu trờn: tớnh ch quyn, c ch bo mt hay phõn quyn hn khai thỏc CSDL, gii quyt tranh chp quỏ trỡnh truy nhp d liu, v phc hi d liu cú s c thỡ cn phi cú mt h thng cỏc phn mm chuyờn dng H thng cỏc phn mm ú c gi l h qun tr CSDL (ting Anh l DataBase Management System - DBMS) ú l cỏc cụng c h tr tớch cc cho cỏc nh phõn tớch & thit k CSDL v nhng ngi khai thỏc CSDL Cho n cú khỏ nhiu h qun tr CSDL mnh c a th trng nh: Visual FoxPro, MicroSoft Access, SQL-Server, DB2, Sybase, Paradox, Informix, Oracle vi cỏc cht lng khỏc Mi h qun tr CSDL u c ci t da trờn mt mụ hỡnh d liu c th Hu ht cỏc h qun tr CSDL hin u da trờn mụ hỡnh quan h (Xem chng III) Dự da trờn mụ hỡnh d liu no, mt h qun tr CSDL cng phi cú: Ngụn ng giao tip gia ngi s dng (NSD) v CSDL, bao gm: Ngụn ng mụ t d liu (Data Definition Language - DDL) cho phộp khai bỏo cu trỳc ca CSDL, khai bỏo cỏc mi liờn h ca d liu (Data RelationShip) v cỏc quy tc (Rules, Constraint) qun lý ỏp t lờn cỏc d liu ú Ngụn ng thao tỏc d liu (Data Manipulation Language - DML) cho phộp ngi s dng cú th thờn (Insert), xúa (Delete), sa (Update) d liu CSDL Ngụn ng truy d liu, hay ngụn ng hi ỏp cú cu trỳc (Structured Query Language - SQL) cho phộp nhng ngi khai thỏc CSDL (chuyờn nghip hoc khụng chuyờn) s dng truy cỏc thụng tin cn thit CSDL Ngụn ng qun lý d liu (Data Control Language - DCL) cho phộp nhng ngi qun tr h thng thay i cu trỳc ca cỏc bng d liu, khai bỏo bo mt thụng tin v cp quyn hn khai thỏc CSDL cho ngi s dng T in d liu (Data Dictionary) dựng mụ t cỏc ỏnh x liờn kt, ghi nhn cỏc thnh phn cu trỳc ca CSDL, cỏc chng trỡnh ng dng, mt mó, quyn hn s dng v.v Cú bin phỏp bo mt tt cú yờu cu bo mt 6/174 C ch gii quyt tranh chp d liu Mi h qun tr CSDL cng cú th ci t mt c ch riờng gii quyt cỏc ny Mt s bin phỏp sau õy c s dng: ã Cp quyn u tiờn cho tng ngi s dng (ngi qun tr CSDL thc hin) ã ỏnh du yờu cu truy xut d liu, phõn chia thi gian, ngi no cú yờu cu trc thỡ cú quyn truy xut d liu trc H qun tr CSDL cng phi cú c ch lu (Backup) v phc hi (Restore) d liu cú s c xy iu ny cú th c thc hin bng cỏch: ã nh k kim tra CSDL, sau mt thi gian nht nh h qun tr CSDL s t ng to mt bn CSDL Cỏch ny hi tn kộm, nht l i vi cỏc CSDL ln ã To nht ký (LOG) thao tỏc CSDL Mi thao tỏc trờn CSDL u c h thng ghi li, cú s c xy thỡ t ng ln ngc li (RollBack) phc hi CSDL H qun tr CSDL phi cung cp mt giao din (Interface) tt, d s dng, d hiu cho nhng ngi s dng khụng chuyờn Ngoi ra, mt h qun tr CSDL phi ỏp ng c mt yờu cu rt quan trng, ú l bo m tớnh c lp gia d liu v chng trỡnh: Khi cú s thay i d liu (nh sa i cu lu tr cỏc bng d liu, thờm cỏc ch mc (Index) ) thỡ cỏc chng trỡnh ng dng (Application) ang chy trờn CSDL ú khụng cn phi c vit li, hay cng khụng lm nh hng n nhng NSD khỏc Vi nột v quỏ trỡnh phỏt trin cỏc h qun tr CSDL: Tri qua gn 40 nm nghiờn cu v ci t ng dng, cỏc h qun tr CSDL khụng ngng c phỏt trin Cỏc h qun tr CSDL u tiờn i vo u nhng nm 60 ca th k 20 da trờn mụ hỡnh d liu phõn cp v mng, s ú cú h qun tr CSDL cú tờn l IMS ca hóng IBM da trờn mụ hỡnh d liu phõn cp Nm 1976, h qun tr CSDL u tiờn da trờn mụ hỡnh d liu quan h ca hóng IBM mang tờn System-R i T nm 1980 hóng IBM cho i h qun tr CSDL trờn cỏc mỏy Main Frame mang tờn DB2, tip theo l cỏc h qun tr CSDL Dbase, Sybase, Oracle, Informix, SQL-Server T nhng nm 1990 ngi ta bt u c gng xõy dng cỏc h qun tr CSDL hng i tng (Oriented Object DataBase Management System) nh Orion, Illustra, Itasca, Tuy nhiờn hu ht cỏc h ny u l quan h - hng i tng, ngha l, xột v 7/174 bn cht, chỳng da trờn nn tng ca mụ hỡnh quan h H qun tr CSDL hng i tng thun nht cú th l h ODMG i vo nm 1996 H phn mm qun tr CSDL gii quyt tt tt c cỏc t cho mt CSDL nh ó nờu trờn: tớnh ch quyn, c ch bo mt hay phõn quyn hn khai thỏc CSDL, gii quyt tranh chp quỏ trỡnh truy nhp d liu, v phc hi d liu cú s c thỡ cn phi cú mt h thng cỏc phn mm chuyờn dng H thng cỏc phn mm ú c gi l h qun tr CSDL (ting Anh l DataBase Management System - DBMS) ú l cỏc cụng c h tr tớch cc cho cỏc nh phõn tớch & thit k CSDL v nhng ngi khai thỏc CSDL Cho n cú khỏ nhiu h qun tr CSDL mnh c a th trng nh: Visual FoxPro, MicroSoft Access, SQL-Server, DB2, Sybase, Paradox, Informix, Oracle vi cỏc cht lng khỏc Mi h qun tr CSDL u c ci t da trờn mt mụ hỡnh d liu c th Hu ht cỏc h qun tr CSDL hin u da trờn mụ hỡnh quan h (Xem chng III) Dự da trờn mụ hỡnh d liu no, mt h qun tr CSDL cng phi cú: Ngụn ng giao tip gia ngi s dng (NSD) v CSDL, bao gm: ã Ngụn ng mụ t d liu (Data Definition Language - DDL) cho phộp khai bỏo cu trỳc ca CSDL, khai bỏo cỏc mi liờn h ca d liu (Data RelationShip) v cỏc quy tc (Rules, Constraint) qun lý ỏp t lờn cỏc d liu ú ã Ngụn ng thao tỏc d liu (Data Manipulation Language - DML) cho phộp ngi s dng cú th thờn (Insert), xúa (Delete), sa (Update) d liu CSDL ã Ngụn ng truy d liu, hay ngụn ng hi ỏp cú cu trỳc (Structured Query Language - SQL) cho phộp nhng ngi khai thỏc CSDL (chuyờn nghip hoc khụng chuyờn) s dng truy cỏc thụng tin cn thit CSDL ã Ngụn ng qun lý d liu (Data Control Language - DCL) cho phộp nhng ngi qun tr h thng thay i cu trỳc ca cỏc bng d liu, khai bỏo bo mt thụng tin v cp quyn hn khai thỏc CSDL cho ngi s dng T in d liu (Data Dictionary) dựng mụ t cỏc ỏnh x liờn kt, ghi nhn cỏc thnh phn cu trỳc ca CSDL, cỏc chng trỡnh ng dng, mt mó, quyn hn s dng v.v Cú bin phỏp bo mt tt cú yờu cu bo mt 8/174 Hỡnh 8.3 Cõy kt qu biu din vic phõn nhúm cỏc biu thc Mt thut toỏn ti u húa cõu hi ngụn ng SQH Vớ d trờn cho ta mt minh v vic chuyn i mt cõu hi bng ngụn ng i s quan h v dng tng ng tt hn (hay ti u hn) Phng phỏp trờn trung ch yu vo cỏc phộp chiu, phộp chn v tớch -cỏc, vi mc ớch lm "y" c phộp chn v phộp chiu xung mc thp nht, tc l thi hnh cỏc phộp toỏn ny cng sm cng tt, nu cú th Tip theo, kt hp cỏc phộp chn vi tớch -cỏc thnh phộp kt t nhiờn lm gim cỏc kt qu trung gian Ct lừi ca ti u húa chớnh l vic lm gim thiu lu tr trung gian v t ú lm tng nhanh tc x lý cõu hi Tuy nhiờn, thc hin c cỏc quỏ trỡnh ti u húa nh trờn, chỳng ta cn lu ý ti th t thc hin cỏc phộp toỏn cú th "y" cỏc phộp toỏn xung cỏc mc hp lý cn thit Bng di õy cho phộp chỳng ta cỏch thc hin cỏc phộp bin i tng ng i vi cỏc phộp Hi (Union), Tr (Minus), Giao (Intersect), Tớch -cỏc (Cartesian), Chia (Division), Chiu (Projection) v Chn (Selection) -(B1) Kt t nhiờn tng ng v dóy phộp tớch -cỏc, phộp chn v phộp chiu: Q1 (A,B) * Q2 (B,C) (Q1 x Q2 : (Q1[B]=Q2[B])) [A,B,C] 160/174 -(B2) Phộp theta kt tng ng vi dóy phộp tớch -cỏc v phộp chn vi iu kin theta: Q1(A,B) Q2(C,D) (Q1 x Q2) : (Bq D) -(B3) Phộp giao (Intersect) tng ng vi phn bự (Complement) ca hi hai phn bự ca quan h: Q1 ầ Q2(( Q1) ( Q2)) v (B4) -(B4) Phộp bự ca mt quan h tng ng vi tớch -cỏc ca cỏc phộp chiu trờn tng thuc tớnh ca quan h tr i cỏc b giỏ tr ó cú th hin ca quan h: Q(X1, X2,ẳ Xn) (Q[X1] x Q[X2] x ẳ x Q[Xn]) - Q(X1,ẳ Xn) -(B5) Thng ca quan h tng ng vi hiu ca cỏc quan h trung gian sau: Q1(A,B) Q2(A) = Q1[B] - ((Q1[B] x Q2[A] - Q1(A,B)) [B] p dng cỏc cỏch bin i tng ng trờn, kt hp vi cỏc quy tc "y" v kt hp nh ó trỡnh by mc 8.2, chỳng ta a thut toỏn tng quỏt ti u húa cỏc cõu hi ngụn ng i s quan h -Thut toỏn: u vo (Input): S cỳ phỏp cõu hi bng ngụn ng i s quan h u (Output): S cỳ phỏp ti u -Bc p dng cỏc phộp bin i tng ng nờu bng (B1) n (B5) trờn -Bc p dng lut bin i dóy cỏc phộp chn tng ng: tỏch phộp chn thnh cỏc phộp chn -Bc i vi mi phộp chn, ỏp dng cỏc lut , , v nhm y cỏc phộp toỏn chn ú xung cng sõu cng tt -Bc i vi mi phộp chiu, ỏp dng cỏc quy tc , v nhm y cỏc phộp toỏn chiu ú xung cng sõu cng tt -Bc -Tp trung cỏc phộp chn nhm ỏp dng lut 161/174 -p dng lut loi b bt cỏc phộp chiu vụ ớch -Tp trung cỏc phộp chn vi tớch -cỏc, nu c, chuyn thnh pheộp kt t nhiờn hay theta kt bng cỏch ỏp dng cỏc lut v +Nhn xột: - Thut gii nờu trờn ch yu nhm gim lng d liu trung gian ch khụng ch th t thc hin cỏc phộp kt Vớ d: (Q1 (A,B) * Q2 (B,C)) * Q3(A,C) (Q1 (A,B) * Q3 (A,C)) * Q2(B,C) -Thut gii ny khụng cho chỳng ta mt kt qu ti u m nú ch a mt gii phỏp tụột - Cỏc phộp bin i ch da trờn cỏc phộp toỏn c bn l Hi (Union), Tr (Minus), Giao (Intersect), Tớch -cỏc (Cartesian), Chia (Division), Chiu (Projection) v Chn (Selection) m chỳng ta cũn cú th thc hin cỏc phộp bin i da trờn cỏc phộp toỏn khỏc na 162/174 Ti u húa cõu hi (tip theo) Mt s k thut ti u cp thp Trong mc 8.2 ó trỡnh by cỏc t tng c bn thc hin ti u mt biu thc quan h Trong phn ny s trỡnh by mt lp cỏc cõu truy rt ph dng v ó c nhiu h thng ci t cú hiu qu Vn t l cõu hi ó c bin i v ti u cú tng ng vi cõu hi ban u hay khụng? Lp cõu hi s quan sỏt bao gm phộp chiu (Projection), phộp chn (Selection) v phộp kt t nhiờn (Natural Join) cú ngha l cỏc biu thc truy ch bao gm ba phộp tớnh ú Kt qu ci t ca nhiu h thng (nh System R) l hiu qu nhng khụng phi l tng quỏt cho tt c Nh phn trờn ó trỡnh by, cỏc phộp toỏn quan h thỡ phộp tớch cỏc, phộp kt (Join) lm mt rt nhiu thi gian x lý v tn nhiu b nh Vỡ vy, nguyờn tc c bn ca phn ny l lm th no biu thc ti u cui cựng (tng ng vi biu thc ban u) cú s phộp kt l ti thiu Do vy, quỏ trỡnh bin i tng ng, iu quan trng l loi b c cỏc phộp kt khụng cn thit tin li cho quỏ trỡnh bin i, cn lm quen vi khỏi nim "quan h v tr" (universal relation), cú th hiu mt cỏch n gin ú l phộp kt t nhiờn ca tt c cỏc quan h CSDL thnh mt quan h chung Cõu hi hi v bng Mt cõu hi hi (conjunctive query) l cõu hi cú dng: {a1 anẵ ($ b1) ($ bm) ( p1 pk) } ú pi, i =1, , k l mt cỏc dng: R(c1, c2, , cr), ngha l cỏc b c1, c2, , cr thuc quan h R; cj hoc l cỏc giỏ tr a, hoc cỏc giỏ tr b hoc l mt trc hng (literal); c q d ú c v d l cỏc giỏ tr a hoc b hoc l trc hng; q l mt cỏc phộp so sỏnh , Chỳ ý rng cỏc phộp = v l khụng c tớnh danh sỏch Thụng thng, cõu hi c biu din i dng bng (tableau) mụ t lng bng, trc ht cn gi thit rng cỏc thuc tớnh ca cỏc quan h ang quan sỏt l nh Cỏc thuc tớnh cú cựng tờn cỏc quan h khỏc u cú cựng mt ý ngha v cỏc thuc tớnh cú ý ngha khỏc thỡ phi mang tờn khỏc 163/174 nh ngha bng Bng cú th c xem nh mt mng hai chiu v thờm mt s iu kin rng buc Hng th nht ca bng l danh sỏch tt c cỏc thuc tớnh Mi thuc tớnh tng ng vi mt ct ca bng Hng th hai gi l hng ớch (summary) bao gm cỏc giỏ tr rng (blank), cỏc ký hiu phõn bit (distinguished symbols) v hng Ký hiu phõn bit thng c ký hiu bng ch cỏi a (thng) biu din cõu hi hi Cỏc hng cũn li nhn cỏc ký hiu a hoc trng hoc b, vi b l bin khụng phõn bit (nondistinguished variable) hoc ký hiu khụng phõn bit (nondisguished symbols) Cỏc hng ny biu din cỏc hng thc ca cõu hi hi di dng R(c1, c2, , ck) tc l xỏc nh cỏc b tng quan h Ti v trớ ci ct l tng ng vi thuc tớnh th i ca quan h, v s l giỏ tr trng ct ca bng nu khụng tng ng vi thuc tớnh no ca lc quan h R Cỏc tõn t c q d ca cõu hi hi c xem l cỏc rng buc ca bng Chỳ ý bng ũi hi rng cựng mt bin khụng c phộp xut hin ng thi trờn hai ct khỏc ca bng, cũn bin phõn bit khụng xut hin hng ớch ca ct ú Nh vy bng cú th c din gii nh mt cõu hi hi, tc l mt ỏnh x t cỏc giỏ tr ca cỏc bin quan h lờn quan h Quan h kt qu l quan h trờn thuc tớnh vi cỏc ký hiu phõn bit v hng trờn hng ớch Gi T l mt bng v S l tt c cỏc ký hiu xut hin T (tc l cỏc bin v hng) Mt ỏnh giỏ r cho T liờn quan vi mi ký hiu ca S l mt hng, cho nu mt hng c S thỡ r (c) = c.r i vi hng ớch v cỏc hng khỏc ca T cú th m rng nh sau: Gi w0 l hng ớch ca T, w1 wn l cỏc hng cũn li thỡ r (wi) l b nhn c nh thay th r (v) cho mi bin v xut hin wi Bng c nh ngha l ỏnh x t cỏc trng thỏi vo cỏc quan h trờn mt cỏc thuc tớnh Vy, nu T l mt bng, I l mt trng thỏi thỡ T(I) l mt quan h trờn cỏc thuc tớnh m cỏc thuc tớnh ú l nhng ct cú giỏ tr khỏc trng trờn hng ớch, cho T(I) = {r (w0) vi ỏnh giỏ r (wi) I, Ê i Ê n } Chỳ ý: Quy nh rng l bng rng Bng ny biu din ỏnh x mi trng thỏi vo quan h rng Tớnh tng ng ca bng Hai bng T1 v T2 l tng ng, ký hiu T1 T2 nu vi mi tỡnh trng I, T1(I) = T2(I) Núi rng T1 cha T2, vit tt l T1 T2 nu vi mi I, T1(I) T2(I) Lu 164/174 ý rng iu kin cn nhng khụng cho T1 T2 v T1 T2 l cỏc quan h c xỏc nh bi T1 v T2 phi cú cựng lc ớch (lc ớch l hp cỏc thuc tớnh biu din hng u tiờn ca bng) Biu din mt biu thc nh bng Trong phn ny trỡnh by cỏch thc cu trỳc mt bng biu din mt biu thc quan h bng cỏc phộp Chiu, Chn v Kt t nhiờn Vic cu trỳc bng trc ht tin hnh cho tng hng thc ca biu thc, sau ú t hp cỏc bng li thnh mt bng chung Cỏc quy tc thit lp bng T cho biu thc E c th hin quy nh sau: (1) Nu E l lc quan h R thỡ bng T i vi E ch cú mt hng v hng ớch, ú: (i) Nu A R thỡ ti ct cho thuc tớnh A ca T s cú cựng giỏ tr bin phõn bit cho c hng ớch v hng ú: (ii) Nu A R thỡ giỏ tr ca ct ti hng ớch l trng v ti hng l bin khụng phõn bit (2a) Gi s biu thc chn E cú dng E1 : (A = C) v ó cu trỳc bng T1 cho biu thc E1 (i) Nu hng ớch ca T1 cú ký hiu trng ti ct A th T = (ii) Nu cú mt hng c c ti A ca hng ớch, thỡ T = n c = c thỡ T = T1 (iii) Nu T1 cú bin phõn bit a ct A ca hng ớch th bng T i vi E c cu trỳc nh vic thay a bng c ti mi ch m a xut hin T1 (tc l cỏc giỏ tr a xut hin ct a ca bng T1) (2b) Gi s E l phộp chiu cú dng E1 [X] v T1 l bng ca E1 Cu trỳc bng T cho E bng cỏch xúa tt c cỏc ký hiu xut hin ti hng ớch ca tt c cỏc ct khụng xut hin T Cỏc bin phõn bit nhng ct ny c thay bng bin khụng phõn bit (2c) Gi s E l biu thc i s quan h cha phộp kt t nhiờn cú dng E1 * E2 v T1, T2 l cỏc bng tng ng ca E1 v E2 Gi S1 v S2 l cỏc ký hiu ca T1 v T2 S1 v S2 cú cỏc hp ca bin khụng phõn bit ri nhng cỏc bin phõn bit l trựng trờn cỏc ct tng ng ca phộp kt ni 165/174 (i) Nu T1 v T2 cú mt s ct trựng nhng giỏ tr ca chỳng ti hng ớch l nhng hng s khỏc T = (ii) Nu cỏc v trớ tng ng cỏc hng ớch khụng cú cỏc hng phõn bit thỡ cỏc hng ca bng T cho E c bao gm t hp ca cỏc hng thuc bng T1 v T2 Hng ớch ca T cú cỏc ct ca hai bng, cỏc ct chung nhn cỏc giỏ tr: (a) l hng c nu mt hai bng T1, T2 cú hng c ti ct tng ng ca hng ớch Trong trng hp ny chỳng ta s thay th mi giỏ tr ca cỏc bin phõn bit ct bng giỏ tr hng c (b) l bin phõn bit a nu khụng ỏp dng c quy tc (a) nhng mt hai giỏ tr ca T1 v T2 ti ct tng ng cú giỏ tr l a hng ớch (c) l ký hiu trng nhng trng hp cũn li Chỳ ý: Trong trng hp biu thc E cha phộp chn cú dng E1 : (A = B) vi A v B tờn hai thuc tớnh, ú ng nht cỏc giỏ tr bin phõn bit hng ớch ca T cho c hai ct A v B Trong ti liu ny ch trỡnh by trng hp phộp chn E1 : (A = c) vi c l mt hng s Xột vớ d: Cho A, B v C l cỏc thuc tớnh v gi s rng cú biu thc quan h: ( ( R(AB) * S(BC) ) : (B = 0) ) [AC] Theo quy tc (1) thit b lp bng cho lc R(AB) v lc S(BC) nh sau: R A B S B C a1 a2 V a2 a3 a1 a2 a2 a3 Theo quy tc (2c) bng cho phộp kt t nhiờn R(AB) * S(BC) t hai bng trờn: A B C a1 a2 a3 a1 a2 b1 b2 a2 a3 166/174 V cui cựng, theo quy tc (2b), bng cho phộp chn ri chiu ((R(AB) * S(BC)) : (B=0)) [AC] l: A B C a1 a3 a1 b1 b2 a3 Kim tra tớnh tng ng ca bng Vn t lm th no ti thiu húa s hng ca mt bng m tng ng vi bng xut phỏt Nh trờn ó nờu, cn thit phi ỏnh x cỏc hng ca bng xut phỏt lờn mt bng khỏc cú s hng ớt hn (vớ d T1 đ T2) cho T2 T1 vi iu kin: Cỏc bng phi cú cựng lc ớch (xỏc nh trờn cựng mt thuc tớnh) v cú cựng bin phõnbit trờn cựng mt v trớ ca bng Vi mi phộp gỏn quan h cho bin quan h ti cỏc hng ca bng, quan h sinh nh T1 phi l ca quan h sinh nh T2 kim tra cỏc bng quỏ trỡnh bin i liu cú tng ng vi khụng, trc ht cn thờm khỏi nim ỏnh x hng - hng (Row - Row Mapping) c gi l ỏnh x cun (Contaiment Mapping) Gi T1 v T2 l hai bng vi cỏc ký hiu tng ng l S1 v S2 Mt ng cu (Homomorphism) l mt ỏnh x y : S1 đ S2 cho: (i) Nu c l mt hng s thỡ y (c) = c (ii) Nu a l mt bin phõn bit thỡ y (a) hoc l bin phõnbit hoc l mt hng s xut hin ct tng ng ca hng ớch ca T2 (iii) Nu w l mt hng ca T1 thỡ y (W) l mt hng ca T2 Nh vy cú th ỏnh x cỏc hng ca T2 lờn cỏc phn t ca mt trng thỏi I v vỡ th ng cu y s cho mt ỏnh x t cỏc hng ca T1 lờn I Do ú T2 (I) T1(I) vi mi I, t ú cú T2 T1 Ngc li cng hon ton ỳng, nu T2 T1 suy c: T2(I) T1(I) 167/174 Cú th hỡnh thc húa di nh lý sau õy: nh lý 8.1: Gi T v T l hai bng vi cỏc ký hiu tng ng l S v S T T v ch chỳng cú cựng lc ớch v cú mt ng cu y : S đ S nh x cun nh x cun l ỏnh x t cỏc hng ca bng ny lờn cỏc hng ca bng khỏc m bo ton bin phõn bit v cỏc hng s nhng khụng ỏnh x mt ký hiu lờn hai ký hiu phõn bit Mt cỏch hỡnh thc cú th núi rng, nu T1, T2 l hai bng, q l ỏnh x t cỏc hng ca T1 lờn cỏc hng ca T2, q c gi l ỏnh x cun nu: (a) Vi mi hng i ca T1, nu hng i cú bin phõn bit ct A thỡ hng q (i) ca T2 cng cú bin phõn bit hoc hng s ct A (b) Nu hng i ca T1 cú hng s c ct A thỡ hng q (i) cú c ct A (c) Nu hng i v j ca T1 cú cựng mt bin khụng phõn bit ct A thỡ hng q (i) v q (j) cú cựng mt ký hiu ct ú Ký hiu cú th l hng s, bin phõn bit hoc bin khụng phõn bit ( Chỳ ý rng, cú th q (i) = q (j)) T ú cú nh lý sau: nh lý 8.2 : T2 T1 nu v ch nu chỳng xỏc nh trờn cựng mt lc ớch v tn ti mt ỏnh x cun q t T1 lờn T2 Chng minh: (Nu) Gi y : S1 đ S2 l ỏnh x ký hiu - ký hiu cho nu ký hiu d xut hin ct A ca hng r ca T1 v ký hiu d xut hin ct A ca hng q (r) ca hng T2 thỡ y (d) = d nh x y l phự hp nh iu kin (c) iu kin (i) - (iii) cho y d dng suy trc tip Tht vy, (a) kộo theo (ii), (b) kộo theo (i) v (iii) c suy t nh ngha ca y v q Do vy y l mt ng cu Theo nh lý 8.1 thỡ T2 T1 (Ch nu): T nh lý 8.1, cú mt ng cu y : S1 đ S2 tha (i) - (iii) Tn ti ỏnh x t cỏc hng ca T2 tha (c) suy t (iii), (i) v (ii) T kộo theo (a) v (b) Vớ d: Cho biu thc (AB * BC)[AB], cú bng: A B C a1 a2 168/174 T1 = w1 a1 a2 b1 w2 b2 a2 a3 Biu thc AB trờn cỏc thuc tớnh A, B v C cú bng: A B C T2= a1 a2 w3 a1 a2 b1 Theo chiu xuụi, ỏnh x c hai hng w1 v w2 lờn w3 l ỏnh x cun ng cu l: Trong T1 Trong T2 a1 a1 a2 a2 b1 b1 b2 a1 b3 b1 Theo chiu ngc li, ỏnh x w3 lờn w1 v chỳnh ta nhn thy rừ rng rng ỏnh x l ỳng Do vy AB v (AB*AB) [ AB ] l tng ng Vớ d: E1 = AB * BC v E2 = (ABC) * ((BC) : (C=0 )) Bng tng ng ca E1, E2 l: A B C A B C a1 a2 a3 a1 a2 T1 = w1 a1 a2 b1 T2 = w4 a1 a2 w2 a1 b2 a3 W5 w3 b3 a2 a3 b1 a2 169/174 Do vy T2 T1 vỡ cú th to mt ỏnh x cun chuyn w1, w2 v w3 lờn w4 Cú th chn ỏnh x w3 lờn w5 nu mun Chiu ngc li khụng tn ti ỏnh x cun vỡ hng s khụng th ỏnh x lờn bin Do ú T1 T2 T ú cú nh lý sau õy nh lý 8.3: Nu T v T l hai bng tng ng v khụng bng no hai bng ú l tng ng vi mt bng khỏc cú s dũng ớt hn thỡ tn ti mt tng ng 1-1 ca cỏc hng thuc T i vi cỏc hng thuc T2 ú l ỏnh x cun c hai chiu Ti thiu húa bng Cho T0 l bng xut phỏt Tm l bng tng ng vi s hng ti thiu nh cú th Cỏc hng ca bng tng ng Tm phi l mt ca cỏc hng thuc T0 (k c vic t tờn li cỏc ký hiu) Cú nh lý sau õy: nh lý 8.4 : Nu T l mt bng, luụn cú th thit lp c mt bng khỏc tng ng v cú s hng l ti thiu c bin i t T nh xúa i khụng hoc mt s hng H qu : Mi bng vi s hng ti thiu tng ng vi bng cho trc u l mt (k c vic t tờn li cỏc ký hiu) T nh lý 8.4 gi ý mt th tc tng quỏt tỡm bng ti thiu Trc ht tỡm ỏnh x cú th ỏnh x tt c cỏc hng lờn mt ca cỏc hng Cn chỳ ý xỏc nh cỏc ỏnh x hng ớch lờn hng ớch (tc l ng nht trờn cỏc bin phõn bit) v bo ton cỏc rng buc Vn tỡm ỏnh x cú s hng ớt nht l mt bi toỏn NP - y nhng s lng hng mt bng thc t l nh cho nn khụng phi luụn luụn l tht khú khn 170/174 Tham gia úng gúp Ti liu: Giỏo trỡnh c s d liu Biờn bi: Ngụ Trn Thanh Tho URL: http://voer.edu.vn/c/3eaa132c Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Cỏc khỏi nim c bn Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/0bc507c9 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Nhng khỏi nim c bn Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/17d2f805 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Nhng cỏch tip cn mt c s d liu Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/aafc3b70 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Mụ hỡnh d liu quan h ca e.f.codd Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/1783ba73 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Rng buc ton Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/5d5ea197 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Rng buc ton cỏc loi Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/f50fe2aa 171/174 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ngụn ng i s quan h Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/5b211420 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ngụn ng i s quan h (tip theo) Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/caee7f61 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ngụn ng truy c s d liu SQL Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/dd774834 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ngụn ng truy CSDL SQL (tip theo) Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/f024e7e6 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ngụn ng tõn t Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/44860fdb Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ngụn ng tõn t (tip theo) Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/557735f3 Giy phộp: http://creativecommons.org/licenses/by/3.0/ Module: Ti u húa cõu hi Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/102467c8 Giy phộp: http://creativecommons.org/licenses/by/3.0/ 172/174 Module: Ti u húa cõu hi (tip theo) Cỏc tỏc gi: Ngụ Trn Thanh Tho URL: http://www.voer.edu.vn/m/14063540 Giy phộp: http://creativecommons.org/licenses/by/3.0/ 173/174 Chng trỡnh Th vin Hc liu M Vit Nam Chng trỡnh Th vin Hc liu M Vit Nam (Vietnam Open Educational Resources VOER) c h tr bi Qu Vit Nam Mc tiờu ca chng trỡnh l xõy dng kho Ti nguyờn giỏo dc M phớ ca ngi Vit v cho ngi Vit, cú ni dung phong phỳ Cỏc ni dung u tuõn th Giy phộp Creative Commons Attribution (CC-by) 4.0 ú cỏc ni dung u cú th c s dng, tỏi s dng v truy nhp phớ trc ht trong mụi trng ging dy, hc v nghiờn cu sau ú cho ton xó hi Vi s h tr ca Qu Vit Nam, Th vin Hc liu M Vit Nam (VOER) ó tr thnh mt cng thụng tin chớnh cho cỏc sinh viờn v ging viờn v ngoi Vit Nam Mi ngy cú hng chc nghỡn lt truy cp VOER (www.voer.edu.vn) nghiờn cu, hc v ti ti liu ging dy v Vi hng chc nghỡn module kin thc t hng nghỡn tỏc gi khỏc úng gúp, Th Vin Hc liu M Vit Nam l mt kho tng ti liu khng l, ni dung phong phỳ phc v cho tt c cỏc nhu cu hc tp, nghiờn cu ca c gi Ngun ti liu m phong phỳ cú trờn VOER cú c l s chia s t nguyn ca cỏc tỏc gi v ngoi nc Quỏ trỡnh chia s ti liu trờn VOER tr lờn d dng nh m 1, 2, nh vo sc mnh ca nn tng Hanoi Spring Hanoi Spring l mt nn tng cụng ngh tiờn tin c thit k cho phộp cụng chỳng d dng chia s ti liu ging dy, hc cng nh ch ng phỏt trin chng trỡnh ging dy da trờn khỏi nim v hc liu m (OCW) v ti nguyờn giỏo dc m (OER) Khỏi nim chia s tri thc cú tớnh cỏch mng ó c xng v phỏt trin tiờn phong bi i hc MIT v i hc Rice Hoa K vũng mt thp k qua K t ú, phong tro Ti nguyờn Giỏo dc M ó phỏt trin nhanh chúng, c UNESCO h tr v c chp nhn nh mt chng trỡnh chớnh thc nhiu nc trờn th gii 174/174 [...]... một cách tiếp cận dữ liệu khác nhau của những nhà phân tích - thiết kế CSDL, mỗi loại đều có các ưu điểm và mặt hạn chế của nó nhưng vẫn có những mô hình dữ liệu nổi trội và được nhiều người quan tâm nghiên cứu Cho đến nay đang tồn tại 5 loại mô hình dữ liệu, đó là: mô hình dữ liệu mạng, mô hình dữ liệu phân cấp, mô hình dữ liệu quan hệ, mô hình dữ liệu thực thể kết hợp và mô hình dữ liệu hướng đối tượng... và các mối liên hệ giữa các loại dữ liệu đó, cùng các ràng buộc toàn vẹn dữ liệu - RBTV) và khai báo vật lý (dữ liệu được lưu trữ theo dạng nào?, có bao nhiêu chỉ mục?) Các chương trình ứng dụng được viết bằng ngôn ngữ thao tác CSDL (Data Manipulation Language - DML) với mục đích: · Truy xuất dữ liệu · Cập nhật dữ liệu (thêm, xóa, sửa dữ liệu) 13/174 · Khai thác dữ liệu · Ngôn ngữ thao tác CSDL còn... hợp trong việc biểu diễn các CSDL có quy mô lớn bởi trong một đồ thị có hướng khả năng diễn đạt ngữ nghĩa của dữ liệu, nhất là các dữ liệu và các mối liên hệ phức tạp của dữ liệu trong thực tế là rất hạn chế 17/174 HÌnh 2.1 Mô hình dữ liệu mạng (Network Model) Mô hình dữ liệu phân cấp Mô hình dữ liệu phân cấp (Hierachical Data Model) - được gọi tắt là mô hình phân cấp (Hierachical Model): Mô hình là một... phân cấp của mô hình dữ liệu đối với CSDL Tổng điều tra số dân Toàn quốc 0 giờ ngày 01 tháng 01 năm 1989 19/174 Hình 2.2 Mô hình dữ liệu phân cấp (Hierachical Model) 20/174 Những cách tiếp cận một cơ sở dữ liệu Mô hình dữ liệu quan hệ Mô hình dữ liệu quan hệ (Relational Data Model) - còn được gọi tắt là mô hình quan hệ (Relational Model) do E.F.Codd [2] đề xuất năm 1970 Nền tảng cơ bản của nó là khái... kiểu dữ liệu nói trên bằng các tên gọi khác nhau, ngoài ra còn bổ sung thêm một số kiểu dữ liệu riêng của mình Chẳng hạn, MicroSoft Access có kiểu dữ liệu OLE để chứa các đối tượng nhúng như hình ảnh, âm 27/174 thanh, audio, video … ORACLE có kiểu dữ liệu LONG cho phép chứa dữ liệu có kích thước lớn tới 2 tỷ bytes Mỗi thuộc tính có thể chỉ chọn lấy những giá trị trong một tập hợp con của kiểu dữ liệu. .. Tên -giáo- viên cho đối tượng GIẢNG-VIÊN, bởi vì 2 thuộc tính TÊN đó mang ngữ nghĩa khác nhau trong 2 quan hệ khác nhau Mỗi thuộc tính đều phải thuộc một kiểu kiểu dữ liệu (Data Type) nhất định Kiểu dữ liệu có thể là vô hướng (đó là các kiểu dữ liệu cơ bản như chuỗi - String hoặc Text hoặc Charater, số - Number, Luận lý - Logical, ) hoặc các kiểu dữ liệu có cấu trúc được định nghĩa dựa trên các kiểu dữ. .. của các bộ giá trị (Value Tuples) Trong mô hình dữ liệu này những khái niệm sẽ được sử dụng bao gồm thuộc tính (Attribute), quan hệ (Relation), lược đồ quan hệ (Relation Schema), bộ (Tuple), khóa (Key) Mô hình dữ liệu quan hệ là mô hình được nghiên cứu nhiều nhất, và cho thấy rằng nó có cơ sở lý thuyết vững chắc nhất Mô hình dữ liệu này cùng với mô hình dữ liệu thực thể kết hợp đang được sử dụng rộng... giữa dữ liệu với chương trình ứng dụng là mục tiêu chủ yếu của các hệ quản trị CSDL C.J Date [3] đã định nghĩa tính độc lập dữ liệu là "tính bất biến của các 15/174 hệ ứng dụng đối với các thay đổi bên trong cấu trúc lưu trữ và chiến lược truy nhập CSDL" Những cách tiếp cận một CSDL Mô hình dữ liệu là sự trừu tượng hóa môi trường thực, nó là sự biểu diễn dữ liệu ở mức quan niệm Mỗi loại mô hình dữ liêu... bằng cách thay đổi cách tổ chức, cấu trúc vật lý của dữ liệu trên các thiết bị nhớ thứ cấp để làm thay đổi hiệu quả tính toán của các chương trình ứng dụng, nhưng không đòi hỏi phải viết lại các chương trình ứng dụng Điều này được gọi là tính độc lập vật lý của dữ liệu - hay tính độc lập của dữ liệu ở mức vật lý (Physical Independence) Tính độc lập dữ liệu mức vật lý được đảm bảo tới mức nào còn phụ thuộc... đề rất quan trọng trong quá trình phân tích, thiết kế và khai thác CSDL Trong quá trình phân tích - thiết kế cơ sở dữ liệu, nếu không quan tâm đúng mức đến những vấn đề trên, thì có thể dẫn đến những hậu quả rất nghiêm trọng về tính an toàn và toàn vẹn dữ liệu, đặc biệt trong những CSDL tương đối lớn Chương này được chia làm 3 mục nhỏ: Mục thứ nhất trình bày các khái niệm cơ bản của ràng buộc toàn vẹn;

Ngày đăng: 08/06/2016, 18:30

Từ khóa liên quan

Mục lục

  • Các khái niệm cơ bản

  • Những khái niệm cơ bản

  • Những cách tiếp cận một cơ sở dữ liệu

  • Mô hình dữ liệu quan hệ của e.f.codd

  • Ràng buộc toàn vẹn

    • Bối cảnh của RBTV :

    • Xác định tầm ảnh hưởng của RBTV:

    • Hành động khi RBTV bị vi phạm:

    • Ràng buộc toàn vẹn về miền giá trị của thuộc tính.

    • Ràng buộc toàn vẹn liên thuộc tính.

    • Ràng buộc toàn vẹn liên bộ, liên thuộc tính.

    • Ràng buộc toàn vẹn về phụ thuộc tồn tại.

    • Ràng buộc toàn vẹn liên bộ - liên quan hệ.  

    • Ràng buộc toàn vẹn các loại

    • Ngôn ngữ đại số quan hệ

    • Ngôn ngữ đại số quan hệ (tiếp theo)

    • Ngôn ngữ truy vấn cơ sở dữ liệu SQL

      • Các hàm toán học:

      • Các hàm xử lý chuỗi ký tự:

      • Các hàm xử lý ngày tháng và thời gian:

      • Các hàm chuyển đổi kiểu giá trị:

      • Ngôn ngữ truy vấn CSDL SQL (tiếp theo)

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

Tài liệu liên quan