Baze de Date - Lucrari Practice

download Baze de Date - Lucrari Practice

of 87

Transcript of Baze de Date - Lucrari Practice

  • 8/15/2019 Baze de Date - Lucrari Practice

    1/87

    Simona DINU Cătălin - Constantin POMAZAN

    BAZE DE DATE

    Lucrări practice

    Editura

    NAUTICA

  • 8/15/2019 Baze de Date - Lucrari Practice

    2/87

  • 8/15/2019 Baze de Date - Lucrari Practice

    3/87

    Simona DINU Cătălin - Constantin POMAZAN

    BAZE DE DATE

    Lucrări practice

    Editura

    NAUTICA

  • 8/15/2019 Baze de Date - Lucrari Practice

    4/87

    Copyright © 2014, Editura NAUTICAToate drepturile asupra acestei ediţii sunt rezervate Editurii

    Coperta: Cătălin - Constantin POMAZAN

    Editura NAUTICA , 2014

    Editură recunoscută de CNCSIS

    Str !ircea cel "#tr$n nr 104

    %00&&' Constanţa, (o)$nia

    tel : *40+241+&& 4 40

    -a.: *40+241+&1 2 &0

    e-mail : in-o/i)c ro

    www edituranautica or! ro

    Descrierea CIP a Bibliotecii Naţionale a RomânieiDINU, SIMONA

    Baze de date : l cr!ri "ractice / Simona Dinu,Cătălin-Constantin Pomazan. - Constanţa : Nautica, 2014

    Bibliog .!SBN "#$-%0%-%$1-0&2-%

    !. Pomazan, Cătălin-Constantin

    004.4'0#(.$)

  • 8/15/2019 Baze de Date - Lucrari Practice

    5/87

    CUPRINS

    CUVÂNT ÎNAINTE...........................................................................................................................VIIINTRODUCERE..................................................................................................................................1

    Tema generală: Întocmirea unui jurnal e călătorie

    !A"ORATOR 1...................................................................................................................................#De$inirea %tructurii jurnalului e călătorieNormali&area %tructurii 'a&ei e ate

    !A"ORATOR (.................................................................................................................................()

    Com*letarea manuală a +nregi%trărilor +n ta'eleIm*ortul e ate in %ur%e e,terne

    !A"ORATOR #.................................................................................................................................#)InterogăriCom*letarea manuală a +nregi%trărilor +n ta'ele -continuareCăutarea /i $iltrarea atelor +n ta'ele

    !A"ORATOR 0.................................................................................................................................01ormulare *entru intro ucerea atelorCom*letarea atelor $olo%in $ormulare

    !A"ORATOR 2................................................................................................................................21Utili&area lim'ajului Vi%ual "a%ic $or A**lication% *entru comen&i %im*leC3m*uri calculate

    !A"ORATOR 4.................................................................................................................................4)Ra*oarte *entru *re&entarea atelorInterogări *arametri&ate

    !A"ORATOR 5.................................................................................................................................51Utilitare au,iliare *entru *roiectarea 'a&ei e ateA$i/area rela6iilor +ntre ta'eleA$i/area rela6iilor e %u'or onare +ntre entită6ile Acce%%Documentarea %tructurii 'a&ei e ateAnali&a *er$orman6elor 'a&ei e ateReali&area unui meniu *entru utili&area 'a&ei e ate -78itc9'oar anager7ecuri&area 'a&ei e ate

    "I"!IO;RA IE.................................................................................................................................

  • 8/15/2019 Baze de Date - Lucrari Practice

    6/87

  • 8/15/2019 Baze de Date - Lucrari Practice

    7/87

    CUVÂNT ÎNAINTE

    Ace%t +n rumar e la'orator %e a re%ea&ă %tu en6ilor in anul I Na=iga6ie ai acultă6ii eNa=iga6ie /i Tran%*ort aritim /i lu=ial in ca rul Uni=er%ită6ii aritime in Con%tan6a /ire*re&intă o intro ucere +n *roiectarea /i utili&area 'a&elor e ate rela6ionale. aterialulcu*rin e /a*te lucrări e la'orator ce inclu o *arte teoretică /i una a*licati=ă *entru a%imilareaconce*telor e 'a&ă /i %tilului e lucru %*eci$ic 'a&elor e ate rela6ionale.

    Autorii

  • 8/15/2019 Baze de Date - Lucrari Practice

    8/87

  • 8/15/2019 Baze de Date - Lucrari Practice

    9/87

    Baze de date: Lucrări practice

    INTRODUCERE

    >e *arcur%ul lucrărilor e la'orator *re&entate +n continuare %e urmăre/te reali&area unei 'a&e

    e ate Acce%% ())5 care re&ol=ă o *ro'lemă e %tocare /i *relucrare e ate ce *ermiteutili&area +ntr?o manieră unitară a majorită6ii $acilită6ilor *u%e la i%*o&i6ie e ace%t %i%tem ege%tiune e 'a&e e ate rela6ionale. Re&ol=area cerin6elor temei *ro*u%e %e $ace *rogre%i=@ +nor inea logică e a'or are a unei a%t$el e *ro'leme. A $o%t *re$erată acea%tă mo alitate elucru *entru a *une la i%*o&i6ia %tu en6ilor un e,em*lu *ractic com*let e utili&are *entruAcce%% ())5.

    Tema gene ală! Înto"mi ea #n#i $# nal %e "ălăto ie

    7ă %e reali&e&e o 'a&ă e ate Acce%% enumită Jurnal personal *entru e=i en6a =oiajelor /i aim*re%iilor *er%onale e călătorie. >entru $iecare =oiaj +n *arte =or $i memorate cel *u6inurmătoarele in$orma6ii:

    • Na=a

    • unc6ia e6inută

    • Data +nce*erii =oiajului

    • Data terminării =oiajului

    • De%crierea =oiajului• E%calele =oiajului

    >entru $iecare na=ă +n *arte =or $i memorate cel *u6in următoarele in$orma6ii:

    • Denumirea na=ei

    • Data lan%ării la a*ă

    • >ortul e origine

    Ti*ul na=ei>entru $iecare e%cală +n *arte =or $i memorate cel *u6in următoarele in$orma6ii:

    • Numele *ortului

    • ara

    • Data %o%irii

    • Data *lecării

    • Im*re%ii *er%onale

    Du*ă e$inirea %tructurii 'a&ei e ate =or $i reali&ate %u*limentar următoarele %arcini:

    1

  • 8/15/2019 Baze de Date - Lucrari Practice

    10/87

    Baze de date: Lucrări practice

    1. 7e =or intro uce manual@ irect +n ta'elele 'a&ei e ate@ cel *u6in ouă na=e /i trei =oiaje cuminim cinci e%cale $iecare. iecare =oiaj =a conBine ea%emenea -+n *lu% $aBă e cele cinci e%cale*ortul e *lecare i *ortul e %o%ire.

    (. 7e =a reali&a $ormularul *entru e itarea =oiajelor i =or $i a ăugate cu ajutorul ace%tuia +ncăouă =oiaje cu minim cinci e%cale $iecare -*lu% *orturile e *lecare /i %o%ire .

    #. 7e =a crea un ra*ort cu li%ta *orturilor =i&itate +n ca rul căruia =or $i a$i/ate cel *u6in Bara@*ortul@ numărul e =i&ite +n acel *ort. Or onarea %e =a $ace al$a'etic u*ă Bară i *ort.

    0. 7e =a crea un ra*ort *entru *re&entarea in$orma6iilor *entru =oiajul curent /i ace%ta =a *utea$i e%c9i% in $ormularul e a$i/are a =oiajului.

    2. 7e =a reali&a un meniu *rinci*al *entru 'a&a e ate +n care =or $i inclu%e cel *u6in comen&ile*entru e%c9i erea $ormularului *entru e itarea =oiajelor /i *entru ra*ortul e la *unctul #.

    (

  • 8/15/2019 Baze de Date - Lucrari Practice

    11/87

    Baze de date: Lucrări practice

    &ABORATOR '

    Un %i%tem e ge%tiune e 'a&e e ate rela6ionale -7;"DR are ca o'iecti=e *rinci*ale:

    • a%igurarea in e*en enBei atelor -mo i$icarea %tructurii e memorare %au a %trategieie acce% la ate %ă nu a$ecte&e a*licaBia

    • a%igurarea unei re un anBe minime -in$orma6iile %ă a*ară o %ingură ată +n 'a&a eate

    • %*orirea gra ului e %ecuritate a atelor -inter&icerea acce%ului neautori&at la ate

    • a%igurarea integrităBii atelor -*rotecBia $aBă e tergeri ne*ermi%e@ *rin interme iulunor *roce uri e =ali are

    • a%igurarea *artajării -a%igurarea acce%ului mai multor utili&atori la acelea i ateicro%o$t Acce%% ())5 e%te un 7;"DR %im*lu ce +n e*line/te toate o'iecti=ele enun6ate

    anterior. Cu toate ace%tea@ Acce%% e%te g3n it mai ale% *entru utili&area mono utili&ator. De/i areim*lementate mecani%mele *entru o*erarea multi utili&ator@ $unc6ionarea +n ace%te con i6ii e%tegreoaie eoarece *artajarea acce%ului la 'a&a e ate e*in e e %i%temul e o*erare *e caree%te in%talat.

    Acce%% memorea&ă atele +n ta'ele enumite +n engle&ătables %aurelations. De la ace%t aloilea nume eri=ă enumirea e relațional in acronimul 7;D"R. Între ta'ele %e *ot crea

    legături %au rela6ii enumite +n engle&ărelationships. De/i +n lim'a rom3nă termenii relation /irelationship %unt tra u/i %imilar@ %emantica lor e%te i$erită /i e aceea nu tre'uie con$un a6iunul cu celalalt. În ace%t material =om $olo%i enumirea etabelă *entru a e%emna termenulrelation /i relație %aulegătură *entru a e%emna termenul relationship.

    De(ini ea st #"t# ii $# nal#l#i %e "ălăto ie

    Reali&area %tructurii e ate *entru memorarea in$orma6iilor %olicitate re*re&intă *a%ul cel maiim*ortant +n re&ol=area *ro'lemei *ro*u%e. De corectitu inea %tructurării atelor e*in e

    =olumul e muncă *entru +n e*linirea celorlalte cerin6e ale *ro'lemei *recum /i e$icien6a*relucrării atelor.

    În cele ce urmea&ă =a $i *re&entat +ntregul emer% logic *entru reali&area unei %tructuri e ateo*time *entru *ro'lema ată. E%te e *re$erat ca e$inirea %tructurii %ă $ie $ăcută *e 93rtie +nainte e intro ucerea ace%teia +n calculator. Ace%t mo e lucru *ermite mo i$icarea cu maimultă u/urin6ă a %tructurilor e ate /i a%t$el *roce%ul e *roiectare =a $i mai ra*i .Tran%*unerea +n $ormat electronic =a $i reali&ată oar u*ă ce %tructura 'a&ei e ate a $o%te$inită /i =eri$icată com*let *e 93rtie.

    >ornin e la enun6ul ini6ial al *ro'lemei@ %tructura e ate neo*timi&ată arată ca +n $ig.1. 7eremarcă $a*tul că acea%ta co*ia&ă i entic cerin6ele *ro'lemei. >entru a a%igura o'iecti=ele

    #

  • 8/15/2019 Baze de Date - Lucrari Practice

    12/87

    Baze de date: Lucrări practice

    *rinci*ale ale 7;"DR@ %tructura e ate tre'uie %ă *arcurgă un *roce% e ra$inare /i o*timi&arece *oartă enumirea e no mali)a e .

    No mali)a ea st #"t# ii *a)ei %e %ate

    În conte,tul *roiectării 'a&elor e ate rela6ionale@ no mali)a ea e%te *roce%ul e organi&are aatelor *entru a minimi&a re un an6a /i a +nlătura incon%i%ten6a ace%tora. >rin normali&areta'elele cu incon%i%ten6e in 'a&a e ate %unt e%com*u%e *entru a o'6ine ni/te ta'ele maimici -%im*le /i mai 'ine %tructurate a%t$el +nc3t mo i$icarea unui c3m* +ntr?o ta'elă %ă %e*ro*age +n toată 'a&a e ate *rin interme iul rela6iilor %ta'ilite +ntre ta'ele. >e %curt@normali&area e%te un *roce% e o*timi&are a %tructurii unei 'a&e e ate.

    Normali&area %tructurilor e ate %*ore/te integritatea atelor - atele %unt com*let e$inite@a ică re*re&intă o core%*on en6ă %tr3n%ă +ntre in$orma6iile %tocate +n 'a&a e ate /i mo elulin lumea reală . Într?un 7;"DR integritatea atelor e%te %ta'ilită *rintr?o %erie e con%tr3ngeri.E,i%tă trei ti*uri e con%tr3ngeri ce %e re$eră la integritatea atelor:

    • Integ itatea entită+ilo -entity integrity %e re$eră la conce*tul e ",eie ima ă - primary key . O c9eie *rimară e%te o com'ina6ie e una %au mai multe coloane intr?o ta'elă ce*ermite i enti$icarea unică a unei linii -+nregi%trări in ta'elă. Regula re$eritoare laintegritatea entită6ilor a$irmă că (ie"a e ta*elă t e*#ie să ai*ă o ",eie ima ă .i "ăa"easta t e*#ie sa (ie #ni"ă .i nen#lă .

    • Integ itatea e(e in+elo -referential integrity %e re$eră la conce*tul e ",eie e/te nă- foreign key . O c9eie e,ternă i enti$ică o coloană %au un gru* e coloane intr?o altăta'elă ce re*re&intă c9eia *rimară *entru acea ta'elă. Regula re$eritoare la integritateare$erin6elor a$irmă că o i"e ",eie e/te nă oate (i 0nt -#na %int e # mătoa ele %o#ăstă i!

    • 1aloa ea ",eii e/te ne (a"e e(e in+ă la o ",eie ima ă %int -o ta*elă a *a)ei %e

    0

    Fig. 1: Tabelele inițiale neoptimizate

  • 8/15/2019 Baze de Date - Lucrari Practice

    13/87

    Baze de date: Lucrări practice

    %ate -ace%ta e%te ca&ul cel mai $rec=ent

    • 1aloa ea ",eii e/te ne este n#lă

    • Integ itatea %omeni#l#i -domain integrity a$irmă că orice coloană intr?o 'a&ă e

    ate rela6ională tre'uie eclarată +ntr?un omeniu e$init. Un omeniu e%te un %ete =alori e acela/i ti*. Cu alte cu=inte@toate 1alo ile sto"ate 0n a"eea.i "oloană a#nei ta*ele t e*#ie să (ie %e a"ela.i ti .

    Dacă 'a&a e ate im*lementea&ă ace%te con%tr3ngeri@ re%*on%a'ilitatea integrită6ii atelor-con%i%ten6a mo elului re=ine 'a&ei e ate. Dacă 'a&a e ate nu %u%6ine ace%te con%tr3ngeri@re%*on%a'ilitatea con%i%ten6ei atelor re=ine a*lica6iei ce utili&ea&ă atele.

    Normali&area 'a&ei e ate *re%u*une organi&area atelor *entru a re%*ecta cele treicon%tr3ngeri re$eritoare la integritatea atelor. E,i%tă o +ntreagă teorie re$eritoare la eta*ele

    normali&ării unei 'a&e e ate. Vom *re&enta +n continuare o meto ă *ractică e ra$inare a%tructurii 'a&ei e ate@ $ără a $ace e,*licit re$erire la eta*ele in teoria normali&ării.

    >ornin e la %tructura in $ig. 1 *entru a a*lica con%tr3ngerea re$eritoare la integritateaentită6ilor =a tre'ui %ă a augăm o c9eie *rimară *entru $iecare intre ta'ele -$ig. ( .

    De aici +nainte@ *entru $iecare ta'elă ce =a $i a ăugată %tructurii ini6iale =om e$ini im*licit oc9eie *rimară. >entru acea%ta Acce%% *une la i%*o&i6ie un ti* e ate enumit Autonumber . Unc3m* e ace%t ti* e%te un c3m* numeric nee ita'il e către utili&ator@ ce *ermite incrementareaautomată a =alorii %ale la a ăugarea unei noi +nregi%trări. O *articularitate a ace%tui ti* e c3m*e%te aceea că acă %unt /ter%e +nregi%trări e,i%tente in ta'ela re%*ecti=ă /i a*oi %unt a ăugate +nregi%trări noi@ =alorile *entru c3m*urile e ti* Autonumber =or $i ate +n continuare@ $ără arelua =alorile /ter%e.

    În continuare@ o'6inerea %tructurii normali&ate *re%u*une anali&area $iecarei ta'ele *entru aelimina e=entualele re un an6e +n %tocarea atelor.

    2

    Fig. 2: Tabelele stru turii u hei primare adăugate

  • 8/15/2019 Baze de Date - Lucrari Practice

    14/87

    Baze de date: Lucrări practice

    În ta'ela !a"e *entru $iecare =a% nou =a $i a ăugată o +nregi%trare cu atele %*eci$ice ace%tuia.7e o'%er=ă că e,i%tă e$init un c3m* #ort$rigine /i un c3m* Tip!a"a ale căror =alori %e *otre*eta *entru na=e i$erite. >entru a elimina re un an6a atelor e%te nece%ar ca in$orma6iile %ă$ie %*eci$icate o %ingură ată@ +n ta'ele e$inite %u*limentar. >entru acea%ta =om a ăuga ouă

    noi ta'ele: Tipuri!a"e /i #orturi . De$inirea ta'elei #orturi e%te 'ene$ică /i in *unctul e =e ereal e%calelor. Noua %tructură =a arăta ca +n $ig.#. Toate c3m*urile c9ei *rimare au $o%t notate cu*re$i,ul %& -%cri% cu litere mari *entru a e=i en6ia ace%t $a*t.

    7e o'%er=ă că *entru a reali&a legăturile +ntre +nregi%trările in ta'ele +n!a"e au $o%t trecute +nlocul c3m*urilor te,t #ort$rigine /i Tip!a"a ni/te c3m*uri e ti* c9eie e,ternă *re$i,ate cu id -%cri% cu litere mici . Notarea *re$i,ului cu litere mici a $o%t $ăcută *entru a i$eren6ia c9eilee,terne e c9eile *rimare. Denumirea 6ărilor a $o%t ea%emenea trecută in ta'ela 's ale +nta'ela #orturi . În a$ara %*eci$icării c9eilor *rimare /i %ecun are au $o%t tra%ate /i legăturile +ntre

    ta'elele anali&ate. Între +nregi%trările in ouă ta'ele i%tincte *ot e,i%ta mai multe ti*uri e legături -$ig.0 :

    • legatura #na-la-#na -one(to(one ? *re%u*une ca *entru o +nregi%trare in ta'ela A %ăe,i%te cel mult o +nregi%trare a%ociată +n ta'ela "

    • legătura #na-la-mai m#lte -one(to(many ? *re%u*une ca *entru o +nregi%trare in ta'elaA *ot %ă e,i%te mai multe +nregi%trări a%ociate +n ta'ela "

    • legătura mai m#lte-la-mai m#lte -many(to(many ? ace%t ti* e rela6ie +ntre ta'elele A /i" %e $ace *rin a ăugarea unei ta'ele %u*limentare C a%ociată *rin rela6ii una?la?maimulte cu ta'elele A /i "

    4

    Fig. ): *tru tura u tabela !a"e normalizată

  • 8/15/2019 Baze de Date - Lucrari Practice

    15/87

    Baze de date: Lucrări practice

    În *ractică cel mai $rec=ent %unt utili&ate legăturile una?la?mai multe. În $ig.# +ntre ta'eleleTipuri!a"a /i !a"e e,i%tă o rela6ie una?la?mai multe. Alt$el %*u%@ *entru o +nregi%trare +nTipuri!a"a *ot e,i%ta mai multe +nregi%trări a%ociate +n ta'ela!a"e @ a ică *ot e,i%ta mai multena=e e acela/i ti*. 7e o'%er=ă că rela6ia e%te $ăcută +ntre c9eia *rimară in ta'ela Tipuri!a"a /i

    c9eia e,ternă in ta'ela !a"e .

    În aceea/i manieră %unt e$inite /i rela6iile +ntre ta'elele #orturi /i !a"e @#orturi /i 's ale @!a"e/i +oia,e.

    !a anali&a ta'elei +oia,e %e con%tată că *entru normali&area ace%teia e%te nece%ară a ăugarea

    ta'elei Fun tii . 7tructura e ate =a e=eni cea in $ig. 2.

    5

    Fig. -: *tru tura u tabela +oia,e normalizată

    Fig. : /egături 0ntre tabele: a: una(la(una b: una(la(mai multe : mai multe(la(mai multe

  • 8/15/2019 Baze de Date - Lucrari Practice

    16/87

    Baze de date: Lucrări practice

    !a anali&a ta'elei 's ale %e con%tată că %tructura e,i%tentă nu *ermite reali&area corectă alegăturii cu ta'ela +oia,e. >entru a corecta acea%ta@ intabela Voiaje e%te eliminat c3m*ul's ale /i +n ta'ela 's ale e%te a ăugată c9eia e,ternă id+oia, ce =a $ace legătura cu c9eia*rimară in ta'ela +oia,e. 7tructura e ate e=ine a%t$el cea in $ig. 4.

    >entru =ali area %tructurii $inale@ %e mai $ace o ată anali&a ace%teia ta'elă cu ta'elă. Con%tatăma%t$el că +n %itua6ia ta'elei#orturi in$orma6iile %tocate +n c3m*ulTara %e *ot re*eta *entru maimulte +nregi%trări. Acea%ta ne con uce la i eea că *oate ar $i util %ă mai creem o ta'elă *entrumemorarea 6ărilor. Deoarece in$orma6iile re$eritoare la 6ări nu %unt critice /i a $a*tului că =ommemora oar enumirea %curtă a ace%tora -$ormată in ma,im trei litere @ a ăugarea uneita'ele %u*limentare nu e%te nece%ară.

    În anali&a %tructurilor e ate *entru o a*lica6ie e%te nece%ar ca normali&area %ă nu $ie utili&ată

    e,agerat eoarece acea%ta ar com*lica 'a&a e ate /i im*licit ar intro uce +nt3r&ieri +n*relucrarea in$orma6iilor.

    A=3n %ta'ilită %tructura 'a&ei e ate@ %e *oate trece la e$inirea ace%teia +n Acce%%. Acea%tăo*era6iune %e *oate $ace +n ouă mo uri: e$inirea ta'elelor /i a*oi a rela6iilor +ntre ace%tea %aue$inirea %imultană a ta'elelor /i rela6iilor. >rima =ariantă nu nece%ită o or ine anume ea ăugare a ta'elelor@ ar u*ă e$inirea ace%tora e%te nece%ară re=enirea /i mo i$icarea%tructurii unora intre ta'ele. A oua =ariantă -crearea %imultană a ta'elelor /i rela6iilor e%temai ra*i ă /i e aceea =a $i cea *re$erată@ ar acea%ta nece%ită %ta'ilirea unei or ini e a ăugarea ta'elelor. >entru a %ta'ili acea%tă or ine %e =a anali&a %tructura /i =or $i create mai +nt3ita'elele ce nu au c9ei e,terne /i im*licit nu e*in e alte ta'ele. Ace%tea %unt ta'elele #orturi @

    <

    Fig. : *tru tura de date normalizată a apli ației

  • 8/15/2019 Baze de Date - Lucrari Practice

    17/87

    Baze de date: Lucrări practice

    Tipuri!a"a /i Fun tii . A*oi =a $i e$inită ta'ela !a"e ce con6ine c9ei e,terne ce $ac legătura oarcătre ta'elele create anterior. 7imilar =or $i a ăugate ta'elele +oia,e /i ulterior 's ale . Ta'ela+oia,e nu *oate $i a ăugată +naintea ta'elei !a"e eoarece +n ta'ela +oia,e e,i%tă o c9eiee,ternă ce $ace re$erire la c9eia *rimară in ta'ela !a"e . 7imilar@ ta'ela's ale nu *oate $i

    a ăugată +naintea ta'elei +oia,e.!a e$inirea c3m*urilor e%te nece%ară %*eci$icarea ti*ului /i a imen%iunii *entru ace%tea -acoloun e e%te ca&ul .

    !a e%c9i erea Acce%% ())5@ *entru a crea 'a&a e ate Jurnal de alatorie =om %electa 'utonul3lank &atabase /i +n *artea rea*tă =om %*eci$ica numele /i irectorul +n care =a $i %al=ată 'a&ae ate@ u*ă care =om acti=a 'utonul 4reate -$ig.5 .

    Acce%% ())5 automat e%c9i e o ta'elă +n care utili&atorul *oate intro uce irect atele *e careore/te %ă le %toc9e&e@ urm3n ca Acce%% %ă %ta'ilea%că automat ti*ul c3m*urilor +n $unc6ie e

    in$orma6iile intro u%e. Ace%t mo e lucru nu e%te recoman at ec3t *entru utili&atorinee,*erimenta6i /i e aceea =om +nc9i e acea%tă ta'elă -$ig. < @ urm3n a a ăuga ta'elele%tructurii +n mo ul&esign +ie5.

    Fig. 6: *tabilirea numelui bazei de date

    Fig. 7: 8n hiderea tabelei Table1

  • 8/15/2019 Baze de Date - Lucrari Practice

    18/87

    Baze de date: Lucrări practice

    A/a cum a $o%t *reci&at anterior@ ta'elele =or $i create +n or inea:#orturi @Tipuri!a"a Fun tii!a"e +oia,e 's ale. >entru e itarea %tructurii unei ta'ele %e a*elea&ă in meniul 4reatecoman a Table &esign.

    >entru ta'ela >orturi %e intro uc c3m*urile con$orm %tructurii in $ig.4. Du*ă intro ucereaenumirii c3m*urilor +n coloana Field !ame %e trece la %ta'ilirea ti*ului atelor memorate +nace%te c3m*uri. >entru acea%ta@%ort care e%te c9eia *rimară a ta'elei =a a=ea la &ata Type%*eci$icat Auto!umber @ iar&enumire /i Tara =or $i e ti* Te9t . În *lu%@%ort =a a=ea %*eci$icatatri'utul e c9eie *rimară *rin %electarea ace%tui c3m* /i acti=area in meniul &esign acomen&ii#rimary ey .

    În %itua6ia +n care %e ore/te reali&area unei c9ei *rimare $ormate in mai multe c3m*uri@ mai +nt3i %e %electea&ă ace%te c3m*uri -%e 6ine a*ă%ată ta%ta4trl /i %e $ace clic cu mou%e?ul *ec3m*urile ce =or com*une c9eia *rimară /i u*ă ce ace%tea au $o%t %electate@ %e acti=ea&ăcoman a #rimary ey in meniul &esign.

    În re*tul c3m*urilor ce $ormea&ă c9eia *rimară =a a*are %im'olul unei c9ei -c3m*ul%ort +n$ig. .

    1)

    Fig. ;: 'ditarea stru turii tabelei #orturi

  • 8/15/2019 Baze de Date - Lucrari Practice

    19/87

    Baze de date: Lucrări practice

    Acce%% ())5 *ermite %tocarea +n c3m*urile unei ta'ele a următoarelor ti*uri e ate:

    • Te/t ? *entru c3m*uri al$anumerice cu imen%iune ma,imă e (22 caractere ce *ermit$iltrarea /i căutarea

    • Memo ? *entru c3m*uri al$anumerice cu imen%iune ma,imă e 4# caractere%tocarea te,tului %e $ace +n e,teriorul ta'elei@ +ntr?o manieră in=i&i'ilă utili&atorului@ iar +nta'elă e%te memorat oar un *ointer la a re%a un e e%te memorată in$orma6ia utilă

    • N#m*e ? *entru c3m*uri numerice

    • Date2Time ? *entru memorarea atelor /iF%au tim*ului

    • C# en"3 ? *entru memorarea =alorilor monetare -numere cu ma,im *atru &ecimale

    • A#toN#m*e ? *entru memorarea unei =alori numerice +ntregi generate automat /i care

    nu %e re*etă +n ca rul aceleia/i ta'ele• 4es2No ? *entru memorarea unor =alori 'inare -a e=ărat F $al%@ a F nu@ *ornit F o*rit@

    etc

    • O&E O*$e"t ? *entru memorarea unor o'iecte 'inare cum ar $i %unete@ imagini@ocumente Gor %au E,cel@ etc e ma,im 1 ;" ce *ot $i %tocate intern %au e,tern 'a&eie ate Acce%%

    • 53 e lin6 ? *entru memorarea unor a re%e 8e' %au a căii %*re un $i/ier local

    • Atta",ment ? *ermite a%ocierea unuia %au mai multor $i/iere la o +nregi%trare +n moa%emănător ata/amentelor intr?un email /i o$eră o mai mare $le,i'ilitate ec3tc3m*urile e ti* O!E O'ject

    În *lu%@ la&ata Type mai a*are /i o*6iunea &oo6# 7i)a %888 ce *ermite reali&area $acilă alegăturilor intre ta'ele /i care =a $i etaliată ulterior.

    !a %electarea i=er%elor c3m*uri@ +n $unc6ie e ti*ul atelor memorate +n ace%tea@ +n *artea e jo% a ecranului =or a*ărea *ro*rietă6i %*eci$ice *entru *er%onali&area ace%tora. >entru c3m*urilee ti* Te9t cum ar $i&enumire /i Tara e%te nece%ară %*eci$icarea lungimii ma,ime a a ace%tora +n*ro*rietatea Field *ize: #) *entru &enumire /i # *entru Tara. Un alt a%*ect im*ortant *entruace%te c3m*uri e%te acela că ele tre'uie com*letate *entru $iecare +nregi%trare +n *arte. >entrua $or6a utili&atorul %ă com*lete&e ace%te ate ne =om $olo%i e *ro*rietă6ileentru a $or6a utili&atorul %ă intro ucă /i caractere ti*ări'ile %e trece*ro*rietatea Allo5 >ero /ength *e !o -nu . Te,tele ce con6in e,clu%i= caractere neti*ări'ile -cumar $i %*a6iu %unt con%i erate ca a=3n lungime &ero.

    În conclu&ie@ *entru ta'ela >orturi =om con$igura c3m*urile con$orm ta'elului1. Du*ă %etarea11

  • 8/15/2019 Baze de Date - Lucrari Practice

    20/87

    Baze de date: Lucrări practice

    *ro*rietă6ilor *entru $iecare c3m* +n *arte@ %e +nc9i e e%igner?ul *entru a %al=a %tructurata'elei. >entru că ta'ela nu are +ncă un nume e$init@ =a a*are o $erea%tră +n care *utemmo i$ica enumirea im*licită a ta'elei.

    Den#mi e Ti Dimensi#ne"9m

    C,eieima ă

    O*ligato i#:Re;#i e%<

    ngime n#lă:Allo= Ze o &engt,<

    ID>ort AutoNum'er H

    Denumire Te,t #) Da Nu

    Tara Te,t # Da Nu

    Tabel 1: *tru tura tabelei #orturi

    În mo e%emănător =or $i a ăugate %tructurile *entru ta'elele Tipuri!a"a -ta'elul ( /i Fun tii -ta'elul # .

    Den#mi e Ti Dimensi#ne"9m

    C,eieima ă

    O*ligato i#:Re;#i e%<

    ngime n#lă:Allo= Ze o &engt,<

    IDTi*Na=a AutoNum'er H

    Denumire Te,t () Da Nu

    Tabel 2: *tru tura tabelei Tipuri!a"a

    Den#mi e Ti Dimensi#ne"9m

    C,eieima ă

    O*ligato i#:Re;#i e%<

    ngime n#lă:Allo= Ze o &engt,<

    ID unctie AutoNum'er H

    Denumire Te,t () Da Nu

    Tabel ): *tru tura tabelei Fun tii

    În continuare =om trece la a ăugarea ta'elei !a"e ce are %tructura con$orm ta'elului 0. Ta'ela!a"e e*in e e e,i%ten6a ta'elelor Tipuri!a"a /i Fun tii eoarece con6ine c9ei e,terne ce $acre$erire la ace%tea. A ăugarea unei c9ei e,terne +ntr?o ta'elă %e *oate $ace %elect3n /ookup@izard la ti*ul c3m*ului a/a cum =a $i e%cri% mai jo%.

    C3m*urile e ti* &ate Time memorea&ă ate calen ari%tice ce inclu /i ora@ minutul@ %ecun a.>entru jurnalul e călătorie e%te rele=antă oar ata. De aceea@ c3m*ul &ata/ansarii =a $icon$igurat %ă a$i/e&e oar ata *rin %etarea *ro*rietă6iiFormat ca *hort &ate. A$i/area atei =a

    $i $ăcută con$orm %etărilor regionale in %i%temul e o*erare. ai tre'uie men6ionat $a*tul căintro ucerea /i a$i/area atelor calen ari%tice %e $ace con$orm %etărilor regionale ar

    1(

  • 8/15/2019 Baze de Date - Lucrari Practice

    21/87

    Baze de date: Lucrări practice

    memorarea ace%tora +n ca rul ta'elei %e $ece in e*en ent e ace%te %etări.

    Den#mi e Ti Dimensi#ne

    "9m

    C,eie

    ima ă

    O*ligato i#

    :Re;#i e%<

    ngime n#lă

    :Allo= Ze o &engt,<IDNa=a AutoNum'er H

    Denumire Te,t #) Da Nu

    Data!an%arii DateFTime Nu

    i >ortOrigine !oo u* ? >orturi Nu

    i Ti*Na=a !oo u* ?Ti*uriNa=a

    Da

    Tabel : *tru tura tabelei !a"e

    >entru ti*ul c3m*ului id#ort$rigine =om %electa/ookup @izard /i acea%ta =a e%c9i e $erea%trae a%i%ten6ă *entru con$igurarea rela6iei cu ta'ela#orturi -$ig.1) .

    >entru a reali&a legătura cu ta'ela #orturi =a răm3ne %electată *rima o*6iune. A*ă%3n *e'utonul !e9t %e =a trece la următoarea *agină a a%i%tentului *entru c9ei e,terne -$ig.11 . Aici%electăm ta'ela cu care %e =a $ace rela6ia -ta'ela#orturi /i a*oi a*ă%ăm 'utonul !e9t .

    1#

    Fig. 1B: #rima pagină din /ookup @izard

  • 8/15/2019 Baze de Date - Lucrari Practice

    22/87

    Baze de date: Lucrări practice

    A treia *agină a a%i%tentului *entru c9ei e,terne *ermite %*eci$icarea c3m*urilor in ta'ela#orturi ce =or $i utili&ate +n ca rul c3m*uluilookup. 7electarea lor %e $ace *rin utili&area'utonului cu %im'olul J ce =a tran%$era numele c3m*ului %electat in li%ta e c3m*urii%*oni'ile in %t3nga +n li%ta e c3m*uri %electate in rea*ta -$ig.1( . >entru rela6ia cu ta'ela#orturi tre'uie %electat c3m*ul c9eie *rimară %ort ce =a $i utili&at *entru crearea rela6iei

    intre ta'ele /i c3m*ul &enumire ce =a $i a$i/at +n ca rul ta'elei !a"e +n c3m*ulid#ort$rigine.

    10

    Fig. 11: A doua pagină din /ookup @izard

    Fig. 12: A treia pagină din /ookup @izard

  • 8/15/2019 Baze de Date - Lucrari Practice

    23/87

    Baze de date: Lucrări practice

    Rela6ia +ntre ta'elele #orturi /i !a"e %e =a $ace +ntre c3m*urile%ort /i id#ort$rigine. De aceea@la +nc9eierea a%i%tentului c3m*ulid#ort$rigine in ta'ela !a"e =a a=ea ti*ul!umber *entru a $ii entic cu ti*ul c9eii *rimare %ort in ta'ela #orturi . Cu toate ace%tea@ la e itarea atelor +nta'ela !a"e +n c3m*ulid#ort$rigine nu =a $i a$i/ată =aloarea numerică a c9eii *rimare%ort

    in ta'ela Tipuri!a"a ci te,tul memorat +n c3m*ul &enumire in ta'ela Tipuri!a"a .>e *agina a *atra a a%i%tentului *entru c9ei e,terne %e =a %*eci$ica or inea e %ortare +n or inecre%cătoare -al$a'etică a c3m*ului &enumire -$ig.1# .

    >e a cincea *agină a a%i%tentului *entru c9ei e,terne %e *oate %*eci$ca acă =a $i a$i/at %au nu /ic3m*ul c9eie e,ternă. O*6iunea im*licită e%te %etată *entru a a%cun e ace%t c3m* -$ig.10 . De/irela6ia +ntre ta'ele %e $ace utili&3n c3m*uri numerice@ *entru o*eratorul uman e%te i$icilămemorarea =alorilor ace%tora /i e aceea %e *re$eră a$i/area in$orma6iilor te,t in c3m*ul&enumire al ta'elei #orturi .

    Ca urmare a $inali&ării a%i%tentului *entru reali&area rela6iei +ntre ta'elele#orturi /i !a"e @ lae itarea atelor +n ta'ela !a"e @ +n locul c3m*ului numericid#ort$rigine =a $i a$i/at un4ombo3o9 -o li%tă erulantă ce =a con6ine enumirile *orturilor in ta'ela #orturi .

    >e *agina $inală a a%i%tentului *entru c9ei e,terne -$ig.12 %e *oate mo i$ica enumireac3m*ului c9eie e,ternă in ta*ela Na=e. Totu/i@ *entru a *utea =e ea u/or $a*tul că ace%t c3m*e%te o c9eie e,ternă e%te e *re$erat ca *re$i,ul id %ă răm3nă ata/at ace%tui c3m*.

    12

    Fig. 1): A patra pagina din /ookup @izard

  • 8/15/2019 Baze de Date - Lucrari Practice

    24/87

    Baze de date: Lucrări practice

    >entru $inali&area reali&ării rela6iei +ntre ta'elele!a"e /i #orturi @ ta'ela!a"e tre'uie %al=atăc9iar acă nu a $o%t +nc9eiată e$inirea %tructurii %ale.

    În acela/i mo %e utili&ea&ă ti*ul/ookup @izard *entru c3m*ul idTip!a"a *entru a crea rela6iacu ta'ela Tipuri!a"a .

    7e remarcă +n ta'elul 0 că *entru !a"e %unt o'ligatorii oar c3m*urile &enumire /i idTip!a"a .

    14

    Fig. 1 : A in ea pagină din /ookup @izard

    Fig. 1-: #agina finală din /ookup @izard

  • 8/15/2019 Baze de Date - Lucrari Practice

    25/87

    Baze de date: Lucrări practice

    Ta'ela Voiaje =a $i următoarea ta'elă a ăugată +n 'a&a e ate. 7tructura %a e%te %*eci$icată +nta'elul 2.

    Den#mi e Ti Dimensi#ne"9m

    C,eieima ă

    O*ligato i#:Re;#i e%<

    ngime n#lă:Allo= Ze o &engt,<

    IDVoiaj AutoNum'er H

    i Na=a !oo u* ? Na=e Da

    i unctie !oo u* ? unctii Da

    DataInce*erii DateFTime Da

    DataTerminarii DateFTime Nu

    De%criere emo Nu

    Tabel -: *tru tura tabelei +oia,e

    E%te im*ortant e remarcat $a*tul că e%te o'ligatorie com*letarea in$orma6iilor *entru c3m*ul&ata%n eperii ar nu /i *entru &ataTerminarii . În *rimul ca& %e cunoa/te +ntot eauna ata +nce*erii =oiajului /i ace%t c3m* =a $i $olo%it *entru legătura cu ta'ela's ale . C3m*ul&ataTerminarii nu e%te o'ligatoriu e com*letat e la +nce*ut@ eoarece ata terminării=oiajului e%te incertă +n momentul a ăugării +nregi%trării. Ace%t c3m* =a *utea $i com*letatnumai u*ă cunoa/terea atei ajungerii +n *ortul e%tina6ie.

    >entru ta'ela 's ale %tructura e%te %*eci$icată +n ta'elul4. Acea%tă ta'elă e%te a ăugată ultimaeoarece e*in e e celelalte ta'ele -are c9ei e,terne ce $ac re$erire la ace%tea .

    Den#mi e Ti Dimensi#ne"9m

    C,eieima ă

    O*ligato i#:Re;#i e%<

    ngime n#lă:Allo= Ze o &engt,<

    IDE%cala AutoNum'er H

    i Voiaj !oo u* ? Voiaje Da

    i >ort !oo u* ? >orturi DaData7o%irii DateFTime Nu

    Data>lecarii DateFTime Nu

    Im*re%ii emo Nu

    Tabel : *tru tura tabelei 's ale

    În legătură cu a ăugarea ta'elei 's ale tre'uie *reci&at că *entru id+oia, +n a%i%tentul *entru

    c9ei e,terne %e =or %electa c3m*urile%&+oia, /i &ata%n eperii in ta'ela +oia,e /i *e *agina a*atra a a%i%tentului %e =a %electa *entru %ortare c3m*ul&ata%n eperii or onat e%cre%cător. În

    15

  • 8/15/2019 Baze de Date - Lucrari Practice

    26/87

    Baze de date: Lucrări practice

    ace%t $el la %electarea =oiajului li%ta atelor e +nce*ere =a $i or onată cu =oiajul cel mai recentla +nce*ut.

    >entru id#ort +n a%i%tentul *entru c9ei e,terne %e =or %electa c3m*urile%ort @Tara /i &enumirein ta'ela #orturi /i *e *agina a *atra in a%i%tent %e =or %electa *entru %ortare c3m*urileTara/i &enumire or onate cre%cător.

    7e remarcă ea%emenea $a*tul că nu e%te o'ligatorie com*letarea c3m*urilor &ata*osire /i&ata#la are @ eoarece *entru *ortul e *lecare nu =om com*leta ata %o%irii@ iar *entru *ortule%tina6ie nu =om com*leta ata *lecării. >entru toate celelalte e%cale =or tre'ui *reci&ateam'ele ate.

    >entru a in%*ecta =i&ual %tructura 'a&ei e ate =om a*ela in meniul&atabase Tools coman aentru $inali&area %tructurii 'a&ei e ate e%te nece%ar %ă $ie +ntărităintegritatea rela6iilor +ntre ta'ele.

    >entru legătura +ntre ta'elele !a"e /i Tipuri!a"a =om $ace clic rea*ta *e linia ce re*re&intăacea%tă legătură /i in meniul conte,tual ce =a a*are =om %electa 'dit

  • 8/15/2019 Baze de Date - Lucrari Practice

    27/87

    Baze de date: Lucrări practice

    7imilar =om *roce a *entru toate celelalte legături intre ta'ele. 7tructura $inală a 'a&ei eate =a arăta ca +n $ig.1

  • 8/15/2019 Baze de Date - Lucrari Practice

    28/87

    Baze de date: Lucrări practice

    &ABORATOR >

    olo%in %tructura e ate creată anterior %e *oate trece la +ncărcarea in$orma6iilor +n 'a&a e

    ate. Acea%tă o*era6iune tre'uie reali&ată +n aceea/i or ine cu cea e a ăugare a ta'elelor. Nu*utem intro uce o e%cală acă nu e%te e$init =oiajul /i *orturile@ nu *utem a ăuga un =oiajacă li*%e%c na=a /i $unc6ia@ nu *utem %*eci$ica na=a acă li*%e/te ti*ul na=ei.

    Com leta ea man#ală a 0n egist ă ilo 0n ta*ele

    Din moti=ul enun6at anterior@ =om +nce*e cu com*letarea ta'eleiTipuri!a"a -$ig.1 .

    Următoarea =a $i ta'ela unctii -$ig. () .

    ()

    Fig. 1;: Tabela Tipuri!a"a u date ompletate

    Fig. 2B: Tabela Fun tii u date ompletate

  • 8/15/2019 Baze de Date - Lucrari Practice

    29/87

    Baze de date: Lucrări practice

    Com*letarea manuală *oate $i utili&ată acă %unt *u6ine +nregi%trări e %tocat %au acă nu a=em*o%i'ilitatea e a im*orta atele e,i%tente eja +n $ormat electronic.

    Im o t#l %e %ate %in s# se e/te ne

    >entru com*letarea ta'elei #orturi =om im*orta o li%tă e *orturi *reluată e *e internet.

    În cele ce urmea&ă =a $i utili&at ire$o, ca 'ro8%er 8e'. >e *agina e %tart a ace%tuia =om trece*entru e,*re%ia căutată harbour list . >rintre *rimele re$erin6e =om gă%i/ist of 5orldCs busiest ports by argo tonnage ( @ikipedia KGi i()10L-$ig.(1 . Vom %electa acea%tă re$erin6ă /i inta'elele cu *orturi cla%i$icate *e ani +l =om alege *e cel in ())2 e e,em*lu. >reluarea atelornu %e *oate $ace irect /i atele tre'uie tran%$ormate +ntr?un $ormat ce *oate $i im*ortat.>aginile 8e' con6in /i in$orma6iile *entru $ormatare@ iar +n ca&ul no%tru +n ta'el a*ar /i imagini*e care tre'uie %ă le eliminăm. De aceea =om utili&a un e itor e te,te -Note*a *entruacea%tă o*era6iune. 7e %electea&ă toate *orturile in ta'elul in *agina 8e'@ inclu%i= enumirilecoloanelor /i cu Ctrl?C %e co*ia&ă +n memorie ace%te ate. De%c9i em Note*a /i cu Ctrl?Vtran%$erăm atele in memorie +n ocumentul te,t -$ig. (( . 7e o'%er=ă că %e*ararea c3m*urilor-coloanelor e%te reali&ată cu ta'?uri /i nu cu %*a6ii *rin $a*tul că in$orma6iile e acela/i $el nu %ea$lă or onate unele %u' celelalte.

    Utili&area 7 Gor nu e%te recoman ată +n ace%t ca&@ eoarece ace%ta =a *relua /i in$orma6iilee $ormatare a te,tului in *agina 8e' care nu %unt utile *entru im*ort.

    7e %al=ea&ă $i/ierul te,t *e i%c cu numele porturi.t9t /i a*oi *oate $i +nc9i% at3t Note*a c3t /i

    (1

    Fig. 21: Dn set de date pentru import Esursa @ikipedia

  • 8/15/2019 Baze de Date - Lucrari Practice

    30/87

    Baze de date: Lucrări practice

    ire$o,.

    În Acce%%@ in meniul'9ternal &ata %e acti=ea&ă coman aTe9t File in %ec6iunea%mport *entrua e%c9i e a%i%tentul *entru %electarea $i/ierului ce con6ine atele ce tre'uie im*ortate.

    7electăm $i/ierul porturi.t9t /i acti=ăm 'utonul $ -$ig.(# *entru a *orni a%i%tentul *entruim*ortul atelor in $i/iere te,t -$ig. (0 . >entru atele in $i/ierul porturi.t9t =a $i *ă%tratăo*6iunea im*licită -&elimited ce *re%u*une %e*ararea coloanelor -c3m*urilor *rin ta'?uri /i =a$i acti=at 'utonul !e9t .

    ((

    Fig. 22: &atele importate 0n !otepad

    Fig. 2): *pe ifi area fiGierului pentru import

  • 8/15/2019 Baze de Date - Lucrari Practice

    31/87

    Baze de date: Lucrări practice

    A oua *agină a a%i%tentului *entru im*ort -$ig.(2 ne *ermite o *re=i&uali&are a mo ului +n care=or $i im*ortate atele /i ea%emenea o$eră *o%i'ilitatea alegerii elimitatorilor e c3m*uri.

    (#

    Fig. 2 : #rima pagină a asistentului pentru importul datelor din fiGiere te9t

    Fig. 2-: A doua pagină a asistentului pentru importul datelor din fiGiere te9t

  • 8/15/2019 Baze de Date - Lucrari Practice

    32/87

    Baze de date: Lucrări practice

    Deoarece +n %elec6ia te,tului e *e *agina 8e' a $o%t inclu% ca*ul e ta'el cu enumirilecoloanelor@ tre'uie %ă 'i$ăm o*6iunea *rin care %e %*eci$ică $a*tul că *e *rima linie %e a$lă ca*ule ta'el - First e *agina a *atra *agină a a%i%tentului *entru im*ort -$ig.(5 Acce%% ne %ugerea&ă că ta'ela nuare o c9eie *rimară /i ca acea%ta *oate $i generată automat %au că *utem alege un c3m* care %ăre*re&inte c9eia *rimară. Deoarece =om im*orta ace%te ate +ntr?o ta'elă tem*orară@ nu e%tenece%ară %*eci$icarea unei c9ei *rimare /i =om alege o*6iunea!o primary key .

    >e ultima *agină a a%i%tentului *entru im*ort tre'uie %*eci$icat numele ta'elei +n care =om $aceim*ortul. Vom trece enumirea Temp#orturi /i =om acti=a 'utonul Finish.

    Ca urmare a ace%tor o*era6iuni@ +n 'a&a e ate =om a=ea o ta'elă %u*limentară cu ateleim*ortate e *e *agina 8e'. Datele in acea%tă ta'elă tre'uie *relucrate %u*limentar *entru a*utea $i tran%$erate +n ta'ela #orturi . >entru a =eri$ica in$orma6iile inTemp#orturi =ome%c9i e *entru =i&uali&are acea%tă ta'elă -$ig.(< .

    (0

    Fig. 2 : A treia pagină a asistentului pentru importul datelor din fiGiere te9t

  • 8/15/2019 Baze de Date - Lucrari Practice

    33/87

    Baze de date: Lucrări practice

    7e o'%er=ă $a*tul că *entru $iecare *ort =om a=ea %*eci$icată enumirea +n clar a 6ării /i acea%ta=a tre'ui +nlocuită cu co ul $ormat in trei caractere *entru acea%ta +n =e erea tran%$erului +nta'ela #orturi .

    (2

    Fig. 26: A patra pagină a asistentului pentru importul datelor din fiGiere te9t

    Fig. 27: 4onținutul tabelei Temp#orturi

  • 8/15/2019 Baze de Date - Lucrari Practice

    34/87

    Baze de date: Lucrări practice

    >entru a nu intro uce co urile 6ărilor manual@ =om căuta *e internet o li%tă e co uri *e care o=om im*orta ea%emenea +ntr?o ta'elă tem*orară. În 'ro8%erul 8e' =om căuta cu ;ooglee,*re%ia) letter ountry odes /i *e li%ta e re&ultate =om regă%i2(letter )(letter ountry odes for all ountries in the 5orld KGAtla%()10L.

    >entru im*ortul ace%tor ate =om utili&a o altă meto ă eoarece utili&area Note*a ca +nim*ortul li%tei e *orturi nu $unc6ionea&ă corect in cau&a mo ului +n care %unt *re&entateatele *e *agina 8e'. În ace%t ca& =om utili&a icro%o$t E,cel ())5 *entru a crea un $i/ier incare %ă $acem im*ortul.

    >e *agina 8e' -$ig. ( =om %electa li%ta com*letă cu atele ce urmea&ă a $i *reluate.De%c9i em E,cel ())5 /i cu Ctrl?V tran%$erăm atele in memorie +n $oaia e calcul a$i/ată-$ig.#) . Din acea%tă li%tă ne intere%ea&ă oar coloanele cu co uri in trei litere /i enumireacom*letă a 6ării@ /i e aceea@ =om /terge coloanele C /i ulterior A in $oaia e calcul. >entru

    acea%ta cu clic rea*ta *e litera coloanei =om a$i/a meniul conte,tual in care =om alegecoman a &elete. 7e o'%er=ă ea%emenea +n $oaia e calcul că e,i%tă /i linii $ără ate. Ace%tea*ot $i /ter%e a%emănător mo ului e /tergere al coloanelor@ ar acea%tă o*era6iune *oate $i$ăcută ulterior +n Acce%%.

    oaia e calcul =a $i %al=ată +n $ormat nati= E,cel cu numeleoduri.9ls9 +n acela/i irector un e a$o%t %al=ată /i li%ta e *orturi. Du*ă acea%tă o*era6iune *oate $i +nc9i% 'ro8%erul 8e' /i a*lica6iaE,cel.

    (4

    Fig. 2;: Dn set de date pentru import Esursa @orldAtlas

  • 8/15/2019 Baze de Date - Lucrari Practice

    35/87

  • 8/15/2019 Baze de Date - Lucrari Practice

    36/87

    Baze de date: Lucrări practice

    im*ortul atelor in $i/iere E,cel -$ig. #( .

    >e *rima *agină a a%i%tentului *entru im*ort in $i/iere E,cel =a $i lă%ată acti=ă o*6iunea *entru=i&uali&area $oilor e calcul -*ho5 @orksheets /i =a $i %electată $oaia ce con6ine %etul e ate ceurmea&ă a $i im*ortat -*heet1 u*ă care acti=ăm 'utonul !e9t .

    (<

    Fig. )2: #rima pagină a asistentului pentru importul datelor din fiGiere '9 el

    Fig. )): A doua pagină a asistentului pentru importul datelor din fiGiere '9 el

  • 8/15/2019 Baze de Date - Lucrari Practice

    37/87

    Baze de date: Lucrări practice

    >e a oua *agină a a%i%tentului -$ig.## @ eoarece *e *rima linie %e a$lă enumirile coloanelor cuate@ =a $i 'i$ată o*6iunea care %*eci$ică ace%t lucru -First aginile următoare ale a%i%tentului *entru im*ort %unt i entice ca +n %itua6ia im*ortului in$i/iere te,t /i e aceea nu =or mai $i *re&entate. O*6iunile ce tre'uie %*eci$icate %unt i entice cala im*ortul anterior ? nu =om *ermite a%i%tentului %ă cree&e automat o c9eie *rimară -!o primary key iar *entru ta'elă =om $olo%i enumirea Temp4oduri .

    (

    Fig. ) : A treia pagină a asistentului pentru importul datelor din fiGiere '9 el

  • 8/15/2019 Baze de Date - Lucrari Practice

    38/87

  • 8/15/2019 Baze de Date - Lucrari Practice

    39/87

    Baze de date: Lucrări practice

    Com'inarea celor ouă ta'ele %e =a $ace trăg3n - drag(and(drop c3m*ul 4ountry in ta'elaTemp#orturi *e%te c3m*ulTara in ta'ela Temp4oduri . !egătura intre cele ouă ta'ele =a $ire*re&entată *rintr?o linie +ntre cele ouă c3m*uri a%ociate.

    #1

    Fig. )-: Tabelele Temp#orturi Gi Temp4oduri adăugate a surse de date 0n interogare

    Fig. ) : *ele tarea mpurilor de afiGat pentru interogare

  • 8/15/2019 Baze de Date - Lucrari Practice

    40/87

    Baze de date: Lucrări practice

    7*eci$icarea c3m*urilor ce =or $i a$i/ate la rularea interogării %e $ace +n ta'elul in *artea e jo%a ecranului -$ig.#4 .

    !a ac6ionarea 'utonului +ie5 in %ec6iuneaorturi -2) . Acea%ta +n%eamnă că +n cele ouă ta'eleenumirea 6ărilor nu %e *otri=e/te *entru toate +nregi%trările.

    Re=enim +n e itarea interogării *rin ac6ionarea 'utonului +ie5 /i cu clic rea*ta *e linia cere*re&intă legătura +ntre ta'ele a$i/ăm un meniu conte,tual in care %electăm coman are$eritoare la *ro*rietă6ile legăturii - Join #roperties . oti=ul *entru care %unt a$i/ate mai *u6ine +nregi%trări e%te acela că legătura e%te $ăcută a%t$el +nc3t %ă $ie a$i/ate oar +nregi%trările *entrucare c3m*urile a%ociate in cele ouă ta'ele au acelea/i =alori. >entru a a$i/a toate +nregi%trărilein ta'ela Temp#orturi @ in i$erent acă %e *oate $ace legătura cu ta'ela Temp4oduri %au nu%electăm o*6iunea core%*un&ătoare -%n lude A// re ords from CTemp#orturiC and only thosere ords from CTemp4oduriC 5here the ,oined fields are e=ual /i ac6ionăm 'utonul $ -$ig.#< .

    !a =i&uali&area re&ultatului rulării interogării %e o'%er=ă ca %unt a$i/ate toate +nregi%trările -2)in ta'ela Temp#orturi /i co urile e 6ară *entru +nregi%trările ce au core%*on en6e +n am'eleta'ele -$ig. # .

    >entru a etermina ce enumiri e 6ări nu %e *otri=e%c@ re=enim +n e itatrea interogării /ia ăugăm +n re&ultatul ace%teia /i c3m*ul4ountry in ta'ela Temp#orturi /i a*oi e,ecutăm in

    #(

    Fig. )6:

  • 8/15/2019 Baze de Date - Lucrari Practice

    41/87

    Baze de date: Lucrări practice

    nou interogarea.

    >entru a gru*a la +nce*utul ta'elei cu re&ultate +nregi%trările incom*lete@ %ortăm +nregi%trărilea%cen ent u*ă c3m*ul 4od a*el3n coman a *ort A to > in meniul conte,tual ce a*are la clicrea*ta *e enumirea ace%tui c3m* -$ig. 0) .

    Deoarece %unt oar *atru +nregi%trări *entru care e%te nece%ară corectarea enumirii 6ării@

    ##

    Fig. )7: *pe ifi area tipului legăturii 0ntre tabele

    Fig. );:

  • 8/15/2019 Baze de Date - Lucrari Practice

    42/87

    Baze de date: Lucrări practice

    acea%ta %e =a $ace manual +n ta'elaTemp4oduri .

    Du*ă ce corec6iile au $o%t $ăcute a%u*ra atelor@ interogarea =a a$i/a corect /i com*let

    enumirile /i co urile e 6ară *entru toate cele 2) e *orturi. Acum ace%te in$orma6ii *ot $itran%$erate +n ta'ela#orturi . >entru acea%ta %e re=ine +n e itarea interogării /i %e %c9im'ă ti*ulace%teia +ntr?o interogare e a ăugare - append =uery *rin ac6ionarea 'utonului Append in%ec6iuneaIuery Type a meniului &esign. În $erea%tra ce a*are %e %electea&ă ta'ela +n care =or $ia ăugate atele - #orturi /i %e a*a%ă 'utonul$ -$ig.01 . În ta'ela cu enumirile c3m*urilorinclu%e +n interogare a a*ărut un r3n *entru %electarea enumirii c3m*ului e%tina6ie - Append To. >entru $iecare c3m* ce urmea&ă a $i tran%$erat -#ort /i 4od =a $i %electat un c3m* e%tina6ie-$ig.0( .

    Dacă +n meniul %ec6iuneaentru a $ace cu a e=ărat a ăugarea +n ta'ela #orturi @ tre'uie ac6ionat 'utonul

  • 8/15/2019 Baze de Date - Lucrari Practice

    43/87

    Baze de date: Lucrări practice

    ta'ela #orturi .

    #2

    Fig. 1: *ele tarea tabelei destinație pentru interogarea de adăugare

    Fig. 2: *pe ifi area mpurilor destinație pentru interogarea de adăugare

  • 8/15/2019 Baze de Date - Lucrari Practice

    44/87

    Baze de date: Lucrări practice

    Com leta ea man#ală a 0n egist ă ilo 0n ta*ele :"ontin#a e<

    A=3n ate +n ta'elele Fun tii @Tipuri!a"a /i #orturi %e *oate trece la com*letarea atelor +nta'ela !a"e -$ig.0# .

    Du*ă com*letarea atelor *entru *rimul =oiaj -$ig. 00 +n ta'ela +oia,e@ %e inc9i e acea%tă ta'elă/i %e e%c9i e ta'ela 's ale *entru a ăugarea e%calelor =oiajului -$ig.02 .

    #4

    Fig. ): Tabela !a"e u datele ompletate

    Fig. : #rima 0nregistrare 0n tabela +oia,e

  • 8/15/2019 Baze de Date - Lucrari Practice

    45/87

    Baze de date: Lucrări practice

    !a com*letarea e%calelor irect +n ta'ela 's ale e%te nece%ară %electarea =oiajului a%ociat.Acea%ta *oate con uce la alegerea eronată a =oiajului. >entru a e=ita acea%tă %itua6ie@com*letarea e%calelor %e *oate $ace *ornin e la +nregi%trarea in ta'ela +oia,e -$ig.04 . 7eo'%er=ă că a*ă%3n *e %emnul *lu% -K ce a*are +n %t3nga +nregi%trării =oiajului@ e%te e%c9i%ăautomat ta'ela 's ale /i %unt a$i/ate e%calele a%ociate oar =oiajului %electat. Com*letarea

    atelor +n ace%t mo nu mai nece%ită %electarea =oiajului@ a%ocierea +ntre e%cală /i =oiaj $ăc3n u?%e automat.

    #5

    Fig. -: 4ompletarea datelor portului de ple are 0n primul "oia,

    Fig. : 4ompletarea es alelor pornind de la "oia,

  • 8/15/2019 Baze de Date - Lucrari Practice

    46/87

    Baze de date: Lucrări practice

    În mo %imilar %e com*letea&ă =oiajele /i e%calele a%ociate *entru a re%*ecta cerin6ele enun6uluiini6ial al temei -trei =oiaje cu minim cinci e%cale $iecare . !a com*letarea atelor calen ari%tice*entru %o%irea /i *lecarea in *orturi %e =a re%*ecta or inea cronologică $irea%că a e%calelor.Dea%emenea tre'uie men6ionat că *entru *ortul e *lecare nu =a $i com*letată ata %o%irii@ iar

    ata *lecării =a coinci e cu ata e +nce*ere a =oiajului. Analog@ *entru *ortul e%tina6ieli*%e/te ata *lecării@ iar ata %o%irii e%te i entică cu ata terminării =oiajului.

    Că#ta ea .i (ilt a ea %atelo 0n ta*ele

    >e l3ngă interogări cu ajutorul cărora %e *ot o'6ine i=er%e in$orma6ii *e 'a&a atelor e,i%tente@Acce%% *une la i%*o&i6ia utili&atorului /i *o%i'ilitatea e a căuta@ $iltra /i %orta atele in ta'ele/i interogări -$ig.05 . Comen&ile %unt i%*oni'ile /i in meniul conte,tual ce a*are la clic rea*tacu mou%e?ul *e enumirea unui c3m*.

    De e,em*lu@ acă e%c9i em ta'ela 's ale *entru a căuta *ortul Nago a /i in meniulconte,tual *entru c3m*ul id#ort %electăm coman a e căutare - Find @ =a a*are $erea%tra *entru

    %*eci$icarea *arametrilor e căutare -$ig.0< .

    #<

    Fig. 6: A ti"area omenzii de ăutare din meniu

    Fig. 7: Fereastra pentru parametrii de ăutare

  • 8/15/2019 Baze de Date - Lucrari Practice

    47/87

    Baze de date: Lucrări practice

    Căutarea *oate $i $ăcută +n atele in coloana %electată %au +n toată ta'ela@ *ut3n u?%e *reci&aacă te,tul intro u% e%te căutat ca /i con6inut integral al unui c3m*@ oar la +nce*utul c3m*ului@%au oriun e +n ca rul c3m*ului. Utili&atorul *oate *reci&a %en%ul e căutare /i acă %e =a 6ine%eama e maju%cule %au nu.

    Într?o manieră a%emănătoare %e *oate $ace /i căutarea /i +nlocuirea con6inulului c3m*urilor. Înlocuirea %e *oate $ace *entru c3m*ul %electat %au *entru toate c3m*urile ce re%*ectă criteriule căutare.

    7ortarea /i $iltrarea +nregi%trărilor %e *oate $ace *rin %ec6iunea*ort L Filter a meniului *rinci*al%au cu ajutorul meniului ce a*are la a*ă%area 'utonului %t3ng al mou%e?ului *e marcajul inrea*ta enumirii unui c3m* -$ig .0 .

    >rimele ouă comen&i in ace%t meniu *ermit %ortarea +n or ine al$a'etică -cre%cătoare *entrunumere %au in=er% al$a'etică - e%cre%cătoare *entru numere . 7ortarea u*ă =alorile unuic3m* nu *ro uce mo i$icarea atelor %au i%ocierea in$orma6iilor in c3m*uri i$erite. Înregi%trările in ta'elă răm3n nemo i$icate@ oar or inea e a$i/are %e %c9im'ă *rin %ortare.

    În meniul conte,tual =a a*are c3te o *o&i6ie i%tinctă *entru $iecare =aloare i%tinctă ac3m*urilor in coloana %electată. Utili&atorul *oate alege a%t$el %electi= ce +nregi%trări %ă $iea$i/ate.

    În $unc6ie e ti*ul atelor %tocate +n coloana %electată@ utili&atorul *oate acce%a /i o altă meto ă

    #

    Fig. ;: &es hiderea meniului onte9tual pentru sortare Gi filtrare

  • 8/15/2019 Baze de Date - Lucrari Practice

    48/87

    Baze de date: Lucrări practice

    e $iltrare *rin %*eci$icarea com*letă %au *ar6ială a in$orma6iilor căutate -$ig.2) . >e acea%tă caleAcce%% o$eră o mai mare $le,i'ilitate +n $iltrarea +nregi%trărilor.

    0)

    Fig. -B: Meniul pentru stabilirea riteriului de filtrare pentru un mp de tip Te9t

  • 8/15/2019 Baze de Date - Lucrari Practice

    49/87

    Baze de date: Lucrări practice

    &ABORATOR @

    o m#la e ent # int o%#"e ea %atelo

    Utili&area(o m#la elo - forms *ermite mani*ularea in$orma6iilor intr?o 'a&ă e ate +ntr?omanieră %im*li$icată /i controlată. >ractic@ $ormularele ne *ermit %ă reali&ăm o inter$a6ă *entru'a&a e ate Acce%%. O*eratorul nu are ne=oie %ă cunoa%că %tructura 'a&ei e ate *entru a*utea %ă o $olo%ea%că acă acea%ta i%*une e o inter$a6ă intuiti=ă /i %im*lă. Dea%emeneautili&area $ormularelor *ermite a%cun erea anumitor in$orma6ii la e itare - e e,em*lu c9eile*rimare /i e,terne %unt e regulă neim*ortante *entru o*erator@ ar %unt e%en6iale *entrui enti$icarea unică a +nregi%trărilor /i reali&area legăturilor +ntre ta'ele . Reali&area unor$ormulare 'ine %tructurate *ermite %im*li$icarea /i e$icienti&area *relucrării atelor %tocate.

    În %itua6ia +n care un $ormular e%te a%ociat uneia %au mai multor ta'ele %au interogări %e %*unecă ace%ta e%telegat -bound . >rin acea%ta@ $ormularul *ermite intro ucerea@ mo i$icarea %aua$i/area in$orma6iilor in ta'elele re%*ecti=e. E,i%tă +n Acce%% /i *o%i'ilitatea reali&ării unor$ormulare nelegate -unbound .

    >e l3ngă elementele *entru *re&entarea atelor in ta'ele /i interogări@ *e $ormulare %e *ota ăuga /i alte entită6i cum ar $i 'utoane e coman ă@ etic9ete@ imagini@ etc.@ toate ace%tea $iinre$erite *rin termenul generic e "ont oale - ontrols .

    >entru crearea unui $ormular e,i%tă mai multe căi /i ace%tea %e regă%e%c +n meniul4reate +n%ec6iuneaForms. Dintre ele@ utili&areaasistent#l#i ent # (o m#la e -Form @izard in%u'meniulMore Forms *entru +nce*ut e%te =arianta cea mai $acilă.

    În continuare =om trece la reali&area *rimei *ăr6i a celei e?a oua %arcini in ca rul temeiini6iale: crearea mac9etei nece%are intro ucerii =oiajelor. >entru acea%ta %e a*elea&ă a%i%tentul*entru $ormulare -$ig.21 .

    01

    Fig. -1: Apelarea asistentului pentru formulare

  • 8/15/2019 Baze de Date - Lucrari Practice

    50/87

    Baze de date: Lucrări practice

    >e *rima *agină a a%i%tentului *entru $ormulare *utem %electa c3m*urile in ta'elele %auinterogările ce =or con%titui %ur%a e ate *entru $ormular. Vom alege mai +nt3i ta'ela+oia,e /i=a $i a$i/ată li%ta c3m*urilor i%*oni'ile - A"ailable Fields *entru acea%tă ta'elă. arcarea*entru utili&area +n $ormular %e $ace trec3n ace%te c3m*uri +n li%ta cu c3m*uri %electate

    -*ele ted Fields cu ajutorul 'utoanelor intre cele ouă li%te. Tot cu ace%te 'utoane %e *oate$ace /i renun6area la utili&area unuia %au mai multor c3m*uri +n $ormular -$ig.2( . Vom %electain ta'ela +oia,e toate c3m*urile +n a$ară e %&+oia, .

    În acela/i mo %e a augă +n li%ta e c3m*uri %electate /i c3m*urile in ta'ela 's ale mai *u6in%&'s ala /i id+oia, -$ig.2# .

    0(

    Fig. -2: Mar area mpurilor din tabela +oia,e pentru utilizarea 0n formular

    Fig. -): Mar area mpurilor din tabela 's ale pentru utilizarea 0n formular

  • 8/15/2019 Baze de Date - Lucrari Practice

    51/87

    Baze de date: Lucrări practice

    C3m*urile+oia,e.%&+oia, @'s ale.%&'s ala /i 's ale.id+oia, au $o%t e,clu%e in li%ta cu c3m*uri*entru $ormular eoarece con6in in$orma6ii ce nu tre'uie a$i/ate. >rimele ouă %unt c9ei*rimare /i cea e?a treia e%te o c9eie e,ternă. În %c9im' c3m*urile +oia,e.id!a"a @+oia,e.idFun tie /i 's ale.id#ort e/i %unt tot c9ei e,terne au $o%t inclu%e +n %elec6ie. În realitate@

    eoarece c9eile e,terne au $o%t e$inite cu a%i%tentul *entru legături -/ookup @izard @ Acce%%=a *relua in$orma6iile a%ociate in ta'elele !a"e @Fun tii /i #orturi -!a"e.&enumire @Fun tii.&enumire /i #orturi.&enumire /i le =a utili&a *entru a$i/area *e ecran +n locul =alorilorc9eilor e,terne.

    Deoarece +ntre ta'elele +oia,e /i 's ale e,i%tă o rela6ie e %u'or onare@ Acce%% %ugerea&ă *e*agina a oua a a%i%tentului *entru $ormulare -$ig.20 a$i/area e%calelor ca un (o m#lase"#n%a -subform .

    0#

    Fig. - : A doua pagină a asistentului pentru formulare

    Fig. --: +arianta pentru afiGarea es alelor 0ntr(un formular separat

  • 8/15/2019 Baze de Date - Lucrari Practice

    52/87

    Baze de date: Lucrări practice

    În a$ară e acea%tă o*6iune@ %e *oate alege /i a$i/area atelor e%calelor +ntr?un $ormular %e*arat$ig.22 . Acea%tă =ariantă nu e%te e orit +n ca rul jurnalului *entru că nece%ită a*ă%area%u*limentară *e un 'uton *entru a$i/area e%calelor.

    >e *agina a treia a a%i%tentului *entru $ormulare -$ig.24 %e *oate o*ta *entru a$i/area atelor$ormularului %ecun ar +n controale i%tincte -Tabular %au +n $ormat ta'elar -&atasheet . Vom%electa aici *rima =ariantă.

    >e *agina a *atra a a%i%tentului *entru $ormulare %e *oate %electa unul intre %tilurile*re e$inite *entru $ormulare -$ig.25 @ e e,em*lu Trek .

    00

    Fig. - : #agina a treia a asistentului pentru formulare

    Fig. -6: #agina a patra a asistentului pentru formulare

  • 8/15/2019 Baze de Date - Lucrari Practice

    53/87

    Baze de date: Lucrări practice

    >e ultima *agină a a%i%tentului *entru $ormulare -$ig.2< %e *oate %ta'ili numele $ormularului*rinci*al /i al $ormularelor %ecun are. Tot aici %e *oate %*eci$ica acă %e continuă cu =i&uali&area$ormularului %au cu e itarea %a la +nc9i erea a%i%tentului. Vom alege *rima o*6iune *entru a*utea =i&uali&a *re&entarea im*licită a atelor -$ig.2 .

    02

    Fig. -7: Dltima pagină a asistentului pentru formulare

    Fig. -;: Formularul +oia,e obținul u a,utorul asistentului

  • 8/15/2019 Baze de Date - Lucrari Practice

    54/87

    Baze de date: Lucrări practice

    7e o'%er=ă +n $ig.2 $a*tul că $ormularul nu arată $oarte 'ine eoarece controalele am*la%ateautomat ocu*ă $oarte mult %*a6iu. Atunci c3n lucrăm cu $ormulare *utem *utem a$i/a atelein ta'ele +n mo ul Form +ie5 $ără a *utea mo i$ica *ro*rietă6ile controalelor ci numai atelein ta'elele a%ociate@ *utem a$i/a atele /i a=ea un control minimal a%u*ra imen%iunilor@*o&i6iei /i a%*ectului =i&ual al controalelor +n/ayout +ie5 @ %au *utem e ita toate *ro*rietă6ilec3m*urilor $ără a =i&uali&a atele@ +n mo ul&esign +ie5.

    >entru %c9im'area %tilului tuturor controalelor in $ormular@ =om %electa mo ul/ayout +ie5 /ia*oi =om alege in %u'meniul AutoFormat %tilulFlo5. Ca urmare a ace%tei o*era6iuni@ $onturile/i culorile $ormularului =or $i mo i$icate. !a generarea $ormularului cu ajutorul a%i%tentului@Acce%% a gru*at controalele ce %unt legate e c3m*urile in ta'ela +oia,e. Dacă =om %electa cumou%e?ul controlul a%ociat c3m*uluiidFun tie %e o'%er=ă că =a a*are marcajul *entru %elec6ia /imutarea ace%tui gru* -$ig.41 .

    04

    Fig. B: *ele ția modului de afiGare a unui formular

    Fig. 1: Mar a,ul pentru grupul de ontroale din formular

  • 8/15/2019 Baze de Date - Lucrari Practice

    55/87

    Baze de date: Lucrări practice

    >entru a *utea muta controalele in i=i ual *e $ormular e%te nece%ar %ă /tergem acea%tăgru*are. >entru acea%ta =om %electa gru*ul *rin clic cu mou%e?ul *e marcajul gru*ului /i inmeniul Form /ayout Tools %u'meniul Arrange =om acti=a coman a

  • 8/15/2019 Baze de Date - Lucrari Practice

    56/87

    Baze de date: Lucrări practice

    Toate controalele ce *ot a*are +ntr?un $ormular i%*un e o multitu ine e *ro*rietă6i cuajutorul cărora %e *oate %ta'ili com*ortamentul /i a%*ectul ace%tora *recum /i a%ocierile cuc3m*urile e ate. >entru acce%area *ro*rietă6ilor %e utili&ea&ă coman a#roperty *heet a%ec6iuniiTools in %u'meniul &esign in Form &esign Tools %au coman a #roperties in meniul

    conte,tual. Ca /i +n ca&ul $ormularelor@ controalele *ot $i a%ociate %au nea%ociate cu c3m*uri inta'ele %au interogări. În *lu%@ unele controale *ermit /i e$ectuarea unor calcule %im*le +ntr?omanieră a%emănătoare a*lica6iei E,cel.

    Cu ace%te in$orma6ii %e *oate trece la mo i$icarea $ormularului *entru a o'6ine +n $inal o=ariantă a%emănătoare cu cea in $ig.4#.

    0<

    Fig. ): Formularul pentru editarea "oia,elor

  • 8/15/2019 Baze de Date - Lucrari Practice

    57/87

    Baze de date: Lucrări practice

    Com leta ea %atelo (olosin% (o m#la e

    Cu ajutorul ace%tui $ormular %e =a trece la $inali&area celei e?a oua %arcini in ca rul temeiini6iale: a ăugarea cu ajutorul $ormularului creat a +ncă ouă =oiaje cu minim cinci e%cale -*lu%

    *orturile e *lecare /i %o%ire . În ace%t moment@ *entru trecerea e la un =oiaj la altul %e *ot $olo%i elementele e na=igare in%u'%olul $ormularului -$ig.40 .

    Cu ace%tea %e *oate a$i/a *rimul =oiaj@ *rece entul@ următorul %au ultimul. În *lu% %e *oate%*eci$ica *o&i6ionarea *e +nregi%trarea cu numărul %*eci$icat e o*erator +n controlul ce a$i/ea&ănumărul +nregi%trării curente /i numărul total e +nregi%trări. "utonul ce %e a$lă +n rea*ta $a6ăe 'utonul *entru %altul la ultima +nregi%trare *ermite a ăugarea unui =oiaj nou. A ăugarea %e*oate $ace /i acă %e +ncearcă trecerea u*ă ultima +nregi%trare e,i%tentă.

    >entru trecerea e la o e%cală la alta +n ca rul aceluia/i =oiaj %e $olo%e/te 'ara e e$ilare=erticală ce a*are +n $ormularul %ecun ar +n care controalele e na=igare au $o%t a%cun%e.

    Ca /i la com*letarea atelor irect +n ta'ele@ +n ace%t moment@ u*ă +nregi%trarea *ortului ee%tina6ie tre'uie co*iată manual ata %o%irii +n ace%t *ort +n c3m*ul cu ata terminării

    =oiajului.

    În ca rul $ormularului %e *oate %ta'ili or inea +n care %e $ace trecerea intr?un control +n altul +nForm +ie5 atunci c3n utili&atorul a*a%ă ta%taTab. >entru acea%ta $iecare control ce *oate $i

    %electat *une la i%*o&i6ie *ro*rietă6ileTab *top /i Tab %nde9 . Tab *top %*eci$ică acă %elec6ia*oate trece +n controlul core%*on ent la a*ă%area ta%teiTab@ iarTab %nde9 con6ine o =aloarenumerică +ntreagă ce %*eci$ică or inea +n care %e e*la%ea&ă %elec6ia. Tre'uie men6ionat căAcce%% nu *ermite u*licarea luiTab %nde9 /i acă utili&atorul +ncearcă ace%t lucru@ toate =alorileegale %au mai mari ec3t in e,ul %*eci$icat a%ociate altor controale =or $i incrementate automat.

    A ăugarea $ormularelor *entru e itarea ti*urilor e na=e@ a na=elor@ $unc6iilor /i *orturilor %e$ace +ntr?o manieră a%emănătoare $ormularului *entru =oiaje /i *entru că ace%tea au ocom*le,itate mai re u%ă@ =or $i reali&ate in i=i ual e către %tu en6i.

    0

    Fig. : 4ontroalele pentru s himbarea 0nregistrării urente

  • 8/15/2019 Baze de Date - Lucrari Practice

    58/87

    Baze de date: Lucrări practice

    &ABORATOR

    Utili)a ea lim*a$#l#i Vis#al Basi" (o A li"ations ent # "omen)i sim le

    În a$ară e $unc6ionalitatea o'6inută *rin *roiectarea =i&uală a $ormularelor@ Acce%% *ermitee$inirea e macrocomen&i /i utili&area unui lim'aj e *rogramare %*eci$ic a*lica6iilor in %uitaicro%o$t O$$ice /i anume+isual 3asi for Appli ations .

    O ma" o"oman%ă re*re&intă o %ec=en6ă e o*era6iuni %im*le *e care o*eratorul le e,ecută$rec=ent +ntr?o %ec=en6ă 'ine e$inită. >entru a automati&a ace%t *roce%@ %ec=en6a e o*era6iunie%te memorată *entru ca ulterior %ă *oată $i e,ecutată ra*i .

    Vis#al Basi" (o A li"ations -+3A e%te un lim'aj e *rogramare +n care in%truc6iunile %unt

    %cri%e +ntr?un $ormat $oarte a%emănător cu lim'ajul natural. A%imilarea ace%tuia e%te relati=u/oară ar nece%ită cunoa/terea conce*telor generale legate e lim'ajele e *rogramare /ialgoritmi. În %itua6ia %i%temului e 'a&e e ate rela6ionale Acce%%@ V"A *re&intă %u*limentarin%truc6iuni %*eci$ice lucrului cu ace%te %tructuri.

    7ec=en6ele e in%truc6iuni %cri%e +n V"A *ot $i %al=ate +n ca rul $ormularelor +n care %unt $olo%ite%au *ot $i gru*ate +n entită6i i%tincte numitemo%#le. A=antajul utili&ării mo ulelor e%te acelacă *roce urile /i $unc6iile %cri%e +n ca rul unui mo ul *ot $i *u'lice /i a%t$el =i&i'ile in mai multeo'iecte Acce%%. o ulele *ot $i con%i erate ca ni/te 'i'lioteci e $unc6ii /i %u'rutine /i =or a*are

    ca o'iecte i%tincte +n *anoul e na=igare - !a"igation #ane .>entru un *rogramator ce inten6ionea&ă %ă utili&e&e Acce%% la +ntregul %ău *oten6ial@ a%imilareaV"A e%te e%en6ială. !ucrarea e $a6ă nu +/i *ro*une *re&entarea etaliată a V"A@ ci oare,em*li$icarea unei %ec=en6e %im*le e co .

    >entru a +m'unătă6i a%*ectul /i $unc6ionalitatea $ormularului+oia,e *utem +nlocui controalelee %electare a +nregi%trării curente care a*ar +n *artea e jo% a $ormularului cu 'utoane eimen%iuni mai mari care %a $ie mai u/or acce%i'ile. >entru acea%ta Acce%% ne *une la i%*o&i6ieun a%i%tent *entru 'utoane e coman ă.

    De%c9i em $ormularul+oia,e +n mo ul &esign +ie5. Din meniul *rinci*al laForm &esign Tools%u'meniul &esign@ %ec6iunea4ontrols %electăm controlul e ti* 'uton /i e%enăm +n &onaantetului $ormularului re*tung9iul e +nca rare *entru 'utonul *entru *o&i6ionarea *e *rima +nregi%trare.

    !a $inali&area ace%tei o*era6iuni %e e%c9i e automat a%i%tentul *entru 'utoane e control-4ommand 3utton @izard ce *une la i%*o&i6ia utili&atorului o %erie e comen&i u&uale gru*ate*e categorii@ ce *ot $i a%ociate automat 'utonului nou creat -$ig.42 .

    2)

  • 8/15/2019 Baze de Date - Lucrari Practice

    59/87

    Baze de date: Lucrări practice

    Dintre ace%tea =om %electa in categoria Recor !a"igation coman a No To First e*agina a oua a a%i%tentului -$ig.44 %e *oate %*eci$ica acă 'utonul =a a$i/a un te,t %au oimagine ce *oate $i alea%ă intr?o li%tă *re%ta'ilită %au +ncărcată intr?un $i/ier e,terior.

    Vom alege *entru 'utonul creat imaginea im*licită %*eci$icată +n *agina a%i%tentului. >e ultima*agină a a%i%tentului %e *oate %ta'ili enumirea controlului e ti* 'uton -$ig.45 .

    21

    Fig. -: #rima pagină a asistentului pentru butoane de omandă

    Fig. : A doua pagină a asistentului pentru butoane de omandă

  • 8/15/2019 Baze de Date - Lucrari Practice

    60/87

    Baze de date: Lucrări practice

    În mo a%emănător =or $i a ăugate 'utoane e coman ă *entru e*la%area la +nregi%trarea*rece entă@ următoare /i $inală@ *entru a ăugarea unui =oiaj nou /i *entru +nc9i erea$ormularului -$ig.4< .

    Du*ă a ăugarea 'utoanelor e na=igare +n antet@ %e *ot a%cun e controalele *entru na=igarein %u'%olul $ormularului.

    A/a cum %?a *reci&at anterior@ +n ace%t moment utili&atorul tre'uie %ă co*ie&e manual ata %o%irii +n *ortul e%tina6ie +n ata terminării =oiajului. Acea%tă o*era6iune e/i e%te $oarte %im*lă@re*etată e multe ori *oate e=eni %u*ărătoare. De aceea o =ariantă mai $acilă ar $i reali&areaunui 'uton care %ă $acă acea%tă o*era6iune.

    În Acce%% e,ită *o%i'ilitatea a%ocierii unor anumite e=enimente ce *ot a*are la ni=elulcontroalelor cu %ec=en6e e co %au macrocomen&i. >entru a %ta'ili ace%te a%ocieri@ +n&esign+ie5 *entru controlul %electat *e *agina '"ents a *ro*rietă6ilor ace%tuia =om gă%i o %erie ee=enimente *re e$inite.

    În continuare =om a ăuga un 'uton *entru co*ierea atei e %o%ire +n ultimul *ort +n ataterminării =oiajului. >entru acea%ta %e crea&ă 'utonul /i %e renun6ă la utili&area a%i%tentului2(

    Fig. 6: #agina finală a asistentului pentru butoane de omandă

    Fig. 7: Amplasarea butoanelor de omandă 0n formular

  • 8/15/2019 Baze de Date - Lucrari Practice

    61/87

    Baze de date: Lucrări practice

    *entru 'utoane e coman ă -$ig. 4 . Du*ă am*la%area *e $ormular@ =om mo i$ica imen%iuneaace%tuia /i te,tul ce a*are *e ace%t 'uton /i =om e%c9i e $oaia %a cu *ro*rietă6i.

    Ace%tui 'uton +i =om a%ocia o %ec=en6ă e co %cri%ă +n V"A *entru +n e*linirea ac6iunii*reci&ate anterior.

    Tre'uie men6ionat că +n Acce%% ca /i +n multe alte me ii e e&=oltare %o$t8are aceea/i ac6iune%e *oate reali&a +n mo uri i$erite. aterialul e $a6ă +/i *ro*une %ă *re&inte i actic uneleintre ace%te =ariante. Alegerea uneia %au alteia intre =ariantele *o%i'ile e*in e e

    ingenio&itatea /i e,*erien6a *rogramatorului.

    În *agina $ther a *ro*rietă6ilor 'utonului a ăugat *oate $i %c9im'at numele ace%tui control.O*era6iunea nu e%te o'ligatorie@ ar e%te e *re$erat *entru i enti$icarea ulterioară a ace%tuia.>e *agina '"ents a *ro*rietă6ilor 'utonului =om acti=a *entru e=enimentul $n 4li k -$ig.5)'utonul *entru e%c9i erea a%i%tentului *entru generarea e co -$ig. 51 .

    2#

    Fig. ;: 3uton de omandă simplu

    Fig. 6B: %nițializarea editării de od pentru e"enimentul $n 4li k

  • 8/15/2019 Baze de Date - Lucrari Practice

    62/87

    Baze de date: Lucrări practice

    >entru un 'uton e coman ă e=enimentul $n 4li k e%te cel mai $rec=ent utili&at. El a*are laac6ionarea cu mou%e?ul a 'utonului %au la a*ă%area ta%tei'nter atunci c3n 'utonul e%te%electat.

    Vom alege 4ode 3uilder *entru a *utea %crie in%truc6iunile V"A *entru e$ectuarea o*era6iuniiorite. >e ecran =a a*are +ntr?o $erea%tră %e*arată e itorul *entru V"A /i =a $i generat automat/a'lonul *entru %u'rutina 4li k a controlului mdFinalizare+oia, -$ig.5( .

    20

    Fig. 61: Asistentul pentru sele tarea modalității de s riere a odului

    Fig. 62: Fereastra editorului pentru od +3A

  • 8/15/2019 Baze de Date - Lucrari Practice

    63/87

    Baze de date: Lucrări practice

    În %u'rutina cm inali&areVoiajPClic =om trece următoarea linie e co :

    Me.DataTerminarii.Value = DMax("DataSosirii", "Escale", _ "idVoiaj=" & CStr(Me.idVoiaj.Value))

    Acea%tă in%truc6iune *une +n *ro*rietatea+alue a controlului &ataTerminarii in $ormularulcurent -Me re&ultatul +ntor% e $unc6ia&Ma9 . Deoarece in%truc6iunea e%te mai lungă ec3tlă6imea e itorului e co @ *entru a o *utea =i&uali&a $ără %ă $ie ne=oie %ă $olo%im 'ara ee$ilare ori&ontală@ acea%ta a $o%t %cri%ă *e ouă linii@ continuarea *rimei linii $iin %emnali&ată la%$3r/it *rin caracterul P.

    unc6ia &Ma9 *oate $i $olo%ită *entru a o'6ine =aloarea ma,imă intr?un %et *re%ta'ilit e +nregi%trări. În %itua6ia noa%tră ne intere%ea&ă o'6inerea =alorii ma,ime *entru c3m*ul&ata*osirii in ta'ela 's ale *entru %u'%etul e +nregi%trări a%ociate cu =oiajul curent.>arametrii $unc6iei tre'uie %*eci$ica6i ca /iruri e caractere -+nca ra6i e g9ilimele u'le . >rimul*arametru al $unc6iei e%te numele ta'elei 's ale @ al oilea e%te numele c3m*ului&ata*osirii /iultimul e%te o e,*re%ie ce $iltrea&ă +nregi%trările *entru a *ă%tra oar %u'%etul care neintere%ea&ă. În $inal $erea%tra e itorului e co =a arăta a%emănător $ig.5#.

    Acce%% i%*une e o multitu ine e $unc6ii a%emănătoare cu&Ma9 cu care *utem o'6ine

    22

    Fig. 6): *ubrutina pentru tratarea e"enimentului $n 4li k

  • 8/15/2019 Baze de Date - Lucrari Practice

    64/87

    Baze de date: Lucrări practice

    i=er%e in$orma6ii in 'a&a e ate. De%crierea ace%tora nu $ace o'iectul *re&entului material.

    C9m # i "al"#late

    O altă +m'unătă6ire *e care o *utem a uce $ormularului +oia,e e%te a$i/area uratei +n &ile a=oiajului. Acea%ta %e *oate $ace utili&3n un c3m* calculat ce $olo%e/te in$orma6iile inc3m*urile &ata%n eperii /i &ataTerminarii in ta'ela +oia,e. Dacă ace%te c3m*uri %unt a%ociatecu controale in $ormular@ ele %unt acce%i'ile irect %au *rin interme iul ace%tor controale.

    >entru a reali&a mo i$icarea %ugerată =om a ăuga +n %ec6iunea&etail a $ormularului un controle ti* Te9t3o9 . 7e o'%er=ă că Acce%% a augă %u*limentar /i o etic9etă ace%tui control -$ig.50 .Vom mo i$ica te,tul etic9etei /i *o&i6ia celor ouă controale. 7e remarcă $a*tul că +n controlule ti* Te9t3o9 e%te men6ionat $a*tul că ace%ta nu e%te a%ociat unui c3m* e ate -unbound .

    >entru a %*eci$ica $ormula e calcul a uratei =oiajului@ *entru controlul e ti*Te9t3o9 %e%electea&ă *agina&ata a *ro*rietă6ilor ace%tuia. ormula *oate $i %cri%ă +n *ro*rietatea4ontrol *our e care %*eci$ică e un e %e *reiau in$orma6iile a$i/ate +n ace%t control. O =ariantă mai $acilăla +nce*ut ar $i %ă utili&ăm a%i%tentul *entru e,*re%ii -'9pression 3uilder ce *oate $i acti=at cu'utonul cu trei *uncte a%ociat *ro*rietă6ii 4ontrol *our e .

    !a e%c9i erea a%i%tentului *entru e,*re%ii -$ig.52 +n &ona %u*erioară *utem %crie manuale,*re%ia orită %au o *utem com*une $olo%in %electarea termenilor %i o*eratorilor cu ajutorul'utoanelor /i li%telor in &ona in$erioară ce a$i/ea&ă elementele ce *ot $i utili&ate +n e,*re%ie.Co*ierea unui element in li%telele in$erioare +n e,*re%ie %e *oate $ace cu u'lu clic *e ace%ta.

    În acea%tă manieră =om com*une cu a%i%tentul *entru e,*re%ii rela6ia:

    = DataTerminarii! Data#nce$erii!

    24

    Fig. 6 : Adăugarea ontrolului de tip Te9t3o9 Gi a eti hetei aso iate

  • 8/15/2019 Baze de Date - Lucrari Practice

    65/87

    Baze de date: Lucrări practice

    /i a*oi =om +nc9i e a%i%tentul cu 'utonul$ . În *ro*rietatea 4ontrol *our e =a a*are e,*re%iacreată.

    !a =i&uali&area atelor cu $ormularul+oia,e@ acă +n c3m*ul cu ata terminării nu a=em atecom*letate atunci nici +n c3m*ul cu urata =oiajului nu =om a=ea in$orma6ii. Du*ă a ăugarea*ortului e%tina6ie@ la a*ă%area *e 'utonulFinalizare "oia, =a $i com*letat automat c3m*ul cuata terminării /i %e =a calcula automat /i a$i/a %i numărul e &ile c3t a urat ace%ta.

    25

    Fig. 6-: Adăugarea unui termen 0n asistentul pentru e9presii

  • 8/15/2019 Baze de Date - Lucrari Practice

    66/87

    Baze de date: Lucrări practice

    &ABORATOR

    Ra oa te ent # e)enta ea %atelo

    În a$ara $ormularelor /i interogărilor@ *entru *re&entarea atelor intr?o 'a&ă e ate Acce%% %e*ot utili&a /i ra*oartele. Ace%tea *ermit *re&entarea atelor +ntr?un $ormat *otri=it *entruti*ărirea *e 93rtie.

    Al treilea %u'*unct al temei ini6iale %olicită crearea unui ra*ort cu li%ta *orturilor =i&itate +nca rul căruia =or $i a$i/ate cel *u6in Bara@ *ortul@ numărul e =i&ite +n acel *ort. Or onareatre'uie $ăcută al$a'etic u*ă co ul 6ării i enumirea *ortului.

    A$i/area in$orma6iilor e,i%tente eja +ntr?o ta'elă %u' $ormă e ra*ort %e *oate $ace $oarte

    %im*lu. În %itua6ia cerin6ei in temă e%te nece%ar %ă numărăm e c3te ori a $o%t =i&itat $iecare*ort. >entru acea%ta o %olu6ie ar $i %ă *regătim atele ce urmea&ă a $i a$i/ate cu ajutorul uneiinterogări +n care %ă $acem /i numărarea e%calelor /i a*oi@ *e 'a&a ace%teia %ă generăm ra*ortul%olicitat.

    2<

    Fig. 6 : A ti"area omenzii pentru gruparea 0nregistrărilor

  • 8/15/2019 Baze de Date - Lucrari Practice

    67/87

    Baze de date: Lucrări practice

    Vom +nce*e e itarea unei noi interogări cu coman a Iuery &esign in %ec6iunea $ther ameniului 4reate . Vom %electa ta'elele 's ale /i #orturi ca %ur%ă e ate. Vor $i %electate ca /ic3m*uri *entru interogare #orturi.Tara @#orturi.&enumire /i 's ale.%&'s ala /i =om acti=acoman a Totals in %ec6iunea *ho5 Hide a meniului &esign *entru a *utea $ace gru*area

    +nregi%trărilor +n =e erea numărării -$ig.54 .C3m*ul's ale.%&'s ala a $o%t a ăugat *entru a *utea $ace numărarea e%calelor +n *orturi. Vommo i$ica *ro*rietă6ile c3m*urilor e%tina6ie *entru a re*re&enta mai 'ine re&ultatul interogării.>entru acea%ta =om %orta *rimele ouă c3m*uri +n or ine al$a'etică@ =om %c9im'a enumireacoloanei #orturi.&enumire +n#ort @ iar *entru's ale.%&'s ala =om $olo%i enumirea!r's ale . În*lu%@ *entru c3m*ul's ale.%&'s ala =om mo i$ica *ro*rietatea Total in Nroup 3y +n4ount *entru a număra e%calele -$ig.55 .

    Cu alte cu=inte@ interogarea =a +ntoarce in$orma6ia %olicitată gru*ată u*ă co ul 6ării /ienumirea *ortului /i or onată al$a'etic u*ă co ul 6ării /i enumirea *ortului. >rioritatea%ortării %e $ace u*ă or inea +n care a*ar c3m*urile +n interogare.

    Du*ă =eri$icarea corectitu inii interogării *rin a$i/area re&ultatelor +n mo ulIuery +ie5 @ %e*oate +nc9i e /i %al=a interogarea cu numele !umar's ale#orturi .

    Interogarea =a a*are ca o'iect i%tinct +n *anoul e na=igare - !a"igation #ane /i =a *utea $iutili&ată ca %ur%ă e ate *entru generarea ra*ortului %olicitat.

    >entru reali&area ra*oartelor e,i%tă mai multe mo alită6i e generare. Vom *re$era *entru +nce*ut utili&area a%i%tentului *entru ra*oarte -

  • 8/15/2019 Baze de Date - Lucrari Practice

    68/87

    Baze de date: Lucrări practice

    >e a oua *agină a a%i%tentului *entru ra*oarte %e *oate $ace gru*area c3m*urilor *e anumitecriterii -$ig.5 . >entru ra*ortul curent acea%tă o*era6iune nu e%te nece%ară.

    >agina a treia a a%i%tentului *entru ra*oarte *ermite %ortarea atelor *e i=er%e criterii -$ig.

  • 8/15/2019 Baze de Date - Lucrari Practice

    69/87

    Baze de date: Lucrări practice

    Deoarece interogarea NrE%cale>orturi e%te eja %ortată@ acea%tă o*era6iune nu e%te nece%ară.

    >agina a *atra a a%i%tentului *entru ra*oarte *ermite aranjarea c3m*urilor +n *agină +n mai

    multe mo uri -$ig.

  • 8/15/2019 Baze de Date - Lucrari Practice

    70/87

    Baze de date: Lucrări practice

    >e *agina a cincea a a%i%tentului *entru ra*oarte %e *oate %electa un %til *entru ra*ort -$ig.

  • 8/15/2019 Baze de Date - Lucrari Practice

    71/87

  • 8/15/2019 Baze de Date - Lucrari Practice

    72/87

    Baze de date: Lucrări practice

    Dacă orim %ă totali&ăm numărul e =i&ite +n *orturi =om trece +n mo ul&esign +ie5. Vom%electa controlul !r's ale /i in meniul

  • 8/15/2019 Baze de Date - Lucrari Practice

    73/87

    Baze de date: Lucrări practice

    C3m*urile e ti* Auto!umber %unt im*licit create ca/ong %nteger . Ace%t lucru *utem %ă +l=eri$icăm uit3n u?ne cu &esign +ie5 +n %tructura ta'elei +oia,e la *ro*rietatea Field *ize ac3m*ului%&+oia, .

    42

    Fig. 7 : A ti"area omenzii pentru editarea parametrilor interogării

    Fig. 76: &efinirea parametrului pentru interogare

  • 8/15/2019 Baze de Date - Lucrari Practice

    74/87

    Baze de date: Lucrări practice

    Vom +nc9i e +n $inal $erea%tra cu$ .

    În continuare@ *entru a $ace $iltrarea =om trece numele *arametrului4are+oia, +nca rat e*arante&e re*te la *ro*rietatea c3m*ului %&+oia, . >entru că nu orim a$i/area ace%tui c3m*@*utem %ă +l a%cun em e'i$3n *ro*rietatea *ho5 a c3m*ului -$ig.

  • 8/15/2019 Baze de Date - Lucrari Practice

    75/87

    Baze de date: Lucrări practice

    >arametrul 4are+oia, a $o%t e$init tem*orar *entru a *utea reali&a ra*ortul. >entru a%ociereara*ortului +oia,4urent cu un 'uton e coman ă in $ormularul +oia,e e,i%tă mai multe =ariante.

    Una intre ele *re%u*une +nlocuirea *arametrului in criteriul e $iltrare al interogării+oia,4urent cu enumirea c3m*ului in $ormular ce memorea&ă %&+oia, . >entru acea%ta@ =ome%c9i e interogarea +oia,4urent +n mo ul &esign +ie5 /i +n criteriul e $iltrare =om +nlocuiO4are+oia,P cu OFormsPQO+oia,eP.O%&+oia,P -$ig.1 /i a*oi =om /terge *arametrul 4are+oia, inli%ta e *arametri ai interogării.

    45

    Fig. ;B: Forma finală a raportului u "oia,ul urent

    Fig. ;1: Modifi area interogării +oia,4urent

  • 8/15/2019 Baze de Date - Lucrari Practice

    76/87

    Baze de date: Lucrări practice

    În continuare %e a augă +n $ormularul+oia,e un 'uton /i cu ajutorul a%i%tentului *entru 'utoanee coman ă %e alege in categoria

  • 8/15/2019 Baze de Date - Lucrari Practice

    77/87

    Baze de date: Lucrări practice

    &ABORATOR

    Utilita e a#/ilia e ent # oie"ta ea *a)ei %e %ate

    Acce%% *une la i%*o&i6ia *rogramatorului o multitu ine e a%i%ten6i /i mo ule utilitare *entrureali&area c3t mai ra*i ă a %tructurii 'a&ei e ate /i a inter$e6ei *entru acea%ta -meniuri@$ormulare@ ra*oarte@ etc. %au *entru %arcinile a mini%trati=e ulterioare. Acce%area unora intreace%te unelte %e *oate $ace in meniul&atabase Tools.

    A(i.a ea ela+iilo 0nt e ta*ele

    Utilitarul *entru a$i/area /i e itarea legăturilor intre ta'ele a $o%t utili&at +n !a'oratorul 1*entru reali&area %tructurii 'a&ei e ate Acce%% /i *re&entarea %a nu =a $i reluată +n cele ceurmea&ă. El %e regă%e/te +n %ec6iunea*ho5 Hide a meniului &atabase Tools /i *oate $i acce%atcu coman a

  • 8/15/2019 Baze de Date - Lucrari Practice

    78/87

    Baze de date: Lucrări practice

    Do"#menta ea st #"t# ii *a)ei %e %ate

    A%i%tentul *entru ocumentarea 'a&ei e ate *ermite o'6inerea unui ra*ort etaliat re$eritorla o'iectele /i %tructura 'a&ei e ate -$ig. # .

    5)

    Fig. ;2: Dtilitarul pentru afiGarea dependențelor 0ntre obie te

    Fig. ;): Asistentul pentru do umentarea bazei de date

  • 8/15/2019 Baze de Date - Lucrari Practice

    79/87

    Baze de date: Lucrări practice

    !a e%c9i erea ace%tuia cu coman a &atabase &o umenter in meniul &atabase Tools%ec6iunea Analyze o*eratorul *oate %*eci$ica ce o'iecte tre'uie inclu%e +n ra*ort *recum /igra ul e etalii al ra*ortului.

    Anali)a e (o man+elo *a)ei %e %ate

    Acce%% *une la i%*o&i6ia *rogramatorului un a%i%tent care =eri$ică *er$orman6ele 'a&ei e ate/i %ugerea&ă mo i$icări *entru o*timi&area ace%teia -$ig.0 . Ace%ta *oate $i e%c9i% cu coman a Analyze #erforman e in meniul &atabase Tools@ %ec6iunea Analyze. Inter$a6a ace%tui a%i%tent*ermite %electarea o'iectelor ce =or $i anali&ate.

    Înainte e orice mo i$icări $acute cu ace%t a%i%tent %e recoman ă reali&area unei co*ii e%iguran6ă a 'a&ei e ate.

    Un al oilea a%i%tent e ata acea%ta care anali&ea&ă atele in ta'ele *oate $i acce%at cucoman a Analyze Table in meniul &atabase Tools@ %ec6iunea Analyze -$ig.2 .

    51

    Fig. ; : Asistentul pentru "erifi area performanțelor bazei de date

    Fig. ;-: Asistentul pentru analiza datelor din tabele

  • 8/15/2019 Baze de Date - Lucrari Practice

    80/87

    Baze de date: Lucrări practice

    unc6ionarea %a nu $ace o'iectul ace%tui material.

    7e recoman ă reali&area unei co*ii e %iguran6ă a 'a&ei e ate +nainte e utili&area ace%tuia%i%tent.

    Reali)a ea #n#i meni# ent # #tili)a ea *a)ei %e %ate : Switchboard Manager <

    Acce%% *une la i%*o&i6ia *rogramatorului o mo alitate relati= %im*lă e a reali&a un meniu*entru 'a&a e ate *rin interme iul a%i%tentului *5it hboard Manager . Ace%ta *oate $i *ornitcu coman a *5it hboard Manager in meniul &atabase Tools in %ec6iunea&atabase Tools.

    Ace%t a%i%tent =a $i $olo%it +n continuare *entru reali&area meniului %olicitat la %u'*unctul cinci altemei ini6iale.

    !a *rima rulare a a%i%tentului ace%ta cere con$irmarea *entru reali&area unei ta'ele +n care =amemora %tructura /i comen&ile meniului /i a unui $ormular *entru a$i/area ace%tuia -$ig.4 .

    Du*ă con$irmare@ =a a*are $erea%tra a%i%tentului -$ig.5 /i li%ta e *agini cu meniuri e,i%tente.

    5(

    Fig. ; : Mesa,ul pentru onfirmarea reerii obie telor pentru meniul prin ipal

    Fig. ;6: Asistentul pentru rearea meniului bazei de date

  • 8/15/2019 Baze de Date - Lucrari Practice

    81/87

    Baze de date: Lucrări practice

    Ini6ial e%te e$inită o %ingură *agină meniu -Main *5it hboard care e%te marcată ca *agină e*ornire -&efault .

    Vom a ăuga +n ace%t meniu comen&ile *entru e%c9i erea $ormularului *entru e itarea=oiajelor /i *entru a$i/area ra*ortului cu %itua6ia centrali&ată a e%calelor. >entru acea%ta =omac6iona 'utonul 'dit /i %e =a e%c9i e *agina e e itare a comen&ilor meniului -$ig.< . Vom%c9im'a enumirea in Main *5it hboard +n Jurnal de alatorie /i cu 'utonul !e5 =o trece laa ăugarea *rimului element +n meniu.

    În meniu *ot $i a ăugate mai multe ti*uri e comen&i:

    • No To *5it hboard ? *ermite %c9im'area *aginii acti=e a meniului

    • $pen Form in Add Mode ? *ermite e%c9i erea unui $ormular *entru a ăugarea unei noi +nregi%trări

    • $pen Form in 'dit Mode ? *ermite e%c9i erea unui $ormular *entru e itarea atelore,i%tente

    • $pen rima *o&i6ie in meniu =a $i o coman ă *entru a ăugarea unui nou =oiaj -$ig. . În moa%emănător =or $i a ăugate comen&i *entru e%c9i erea $ormularului+oia,e *entru e itarea

    +nregi%trărilor e,i%tente@ *entru a$i/area ra*ortului!umar's ale#orturi /i *entru terminareaa*lica6iei. Dacă +n 'a&a e ate au $o%t a ăugate $ormulare /i ra*oarte %u*limentare@ ace%tea

    5#

    Fig. ;7: 'ditarea unei pagini din meniu

  • 8/15/2019 Baze de Date - Lucrari Practice

    82/87

    Baze de date: Lucrări practice

    *ot $i trecute +n ace%t meniu %au *e *agini %u*limentare.

    >entru a con$igura 'a&a e ate %ă a$i/e&e automat $ormularul *5it hboard la e%c9i erea

    ace%teia@ %e acce%ea&ă 'utonul rotun in col6ul %t3nga %u% -Mi rosoft $ffi e 3utton /i %e a*a%ă'utonul A ess $ptions . În categoria 4urrent &atabase +n %ec6iunea Appli ation $ptions +n li%taerulantă &isplay Form %e %electea&ă $ormularul*5it hboard -$ig.1)) .

    !a re e%c9i erea 'a&ei e ate $ormularul *5it hboard =a $i a$i/at automat -$ig.1)1 . eniul /i*anoul e na=igare %unt +ncă acce%i'ile.

    Cu ajutorul $erea%trei A ess $ptions *ot $i con$igurate numeroa%e %etări legate e $unc6ionarea'a&ei e ate. De e,em*lu@ *rogramatorul *oate a%cun e *anoul e na=igare@ meniul *rinci*al/i *oate %ta'ili un $ormular care %ă $ie e%c9i% la *ornirea Acce%% -a/a cum am con$igurat*ornirea *entru $ormularul *5it hboard . În ace%t mo acce%ul la mo i$icarea %tructurii e%te +m*ie icat.

    >entru a *utea re=eni la mo i$icarea %tructurii unei 'a&e e ate Acce%% a%t$el con$igurată@ lae%c9i erea ace%teia tre'uie 6inută /i ta%ta *hift a*ă%ată.

    50

    Fig. ;;: Adăugarea unui element 0n meniu

    Fig. 1BB: *ele tarea formularului de pornire

  • 8/15/2019 Baze de Date - Lucrari Practice

    83/87

    Baze de date: Lucrări practice

    Se"# i)a ea *a)ei %e %ate

    Re%tric6ionarea acce%ului la o a*lica6ie reali&ată cu Acce%% %e *oate $ace +n mai multe mo uri.

    >rima mo alitate e%te a%cun erea o'iectelor +n *anoul e na=iga6ie. Acea%ta %e *oate $ace acă%e %electea&ă in meniul conte,tual al o'iectului coman a *ho5 #roperties ce =a a$i/a o$erea%tră cu *ro*rietă6i -$ig.1)( +n care %e *oate marca o'iectul *entru a $i a%cun% -*ro*rietateaHidden.

    52

    Fig. 1B1: Meniul prin ipal al apli ației A ess

    Fig. 1B2: Fereastra u proprietăți pentru 's ale *ubform

  • 8/15/2019 Baze de Date - Lucrari Practice

    84/87

    Baze de date: Lucrări practice

    >entru a *utea acce%a ulterior ace%te o'iecte %e $ace clic rea*ta cu mou%e?ul +ntr?o &onă li'erăa *anoului e na=igare *entru a$i/area meniului conte,tual in care %e alege coman a!a"igation $ptions . În $erea%tra care a*are -$ig.1)# @ +n %ec6iunea&isplay $ptions %e *oate *une'i$a *entru a$i/area o'iectelor a%cun%e -*ho5 Hidden $b,e ts /i atunci toate o'iectele ce au

    atri'utul Hidden =or re e=eni =i&i'ile +n *anoul e na=igare@ ar =or $i colorate i%tinct *entru ae=i en6ia *ro*rietatea Hidden.

    Tot +n $erea%tra cu *ro*rietă6ile *anoului e na=igare *ot $i marcate ca in=i&i'