Vous êtes sur la page 1sur 15

Microsoft ACCES 2003

Introducere Microsoft Access 2003 este aplicaia de management al bazelor de date pus la dispoziie de suita Microsoft Office. Spre deosebire de Excel Access !a permite s stocm "i s administrm !olume mari de date organizate #n uniti numite #nregistrri. O baz de date Access const din urmtoarele obiecte$ %abele & conin toate #nregistrrile 'nterogri & localizeaz #nregistrri specifice (ormulare & afi"eaz #nregistrrile din tabele una c#te una )apoarte & tipresc loturi de #nregistrri *agini de acces la date & pun la dispoziie date prin intermediul paginilor +eb Macrocomenzi & aciuni automate uzuale Module & stoc,eaz declaraii si proceduri -isual .asic care ne permit s scriem programe pentru bazele de date astfel #nc/t acestea s poat interaciona cu alt soft0are.

1tilitarele de asisten din aplicaia Access asigur un proces simplu pas cu pas de configurare a tabelelor formularelor paginilor de acces la date rapoartelor "i interogrilor. *rezenta lucrare conine 2 paragrafe. 3 4 conine noiuni de baze de date tipuri .5. O baz de date 6.57 reprezint o colecie de date integrat anume structurat "i dotat cu o descriere a structurii "i a relaiilor dintre date. 3 2 conine caracteristica general a S8.5 Access. 3 3 conine tabelele Access care #n baza lor se definesc celelalte clase de obiecte. 3 9 conine funcii Access. 1ltimul 3 conine interogri Access care include "i subpunctele interogri de selecie de sortare de actualizare a datelor de excludere a #nregistrrilor de grupare "i totalizare "i interogri #ncruci"ate.

CUPRINS ......................................................................................................................................................2 .1 Noiune de ba ! de date."i#uri de $%.....................................................................2

. 2 S&$% Access. Caracteristica 'enera(!..........................................................3 .3 "abe(e Access......................................................................................) *.+uncii Access................................................................................................1, ,.1Intero'!ri de se(ecie a -nre'istr!ri(or(Select Query

.1

Noiune de ba ! de date."i#uri de $%.

*rintre multiplele forme de organizare a datelor bazele de date ocup un loc aparte. O baz de date 6.57 reprezint o colecie de date integrat anume structurat "i dotat cu o descriere a structurii "i a relaiilor dintre date. :n funcie de modul de organizare a informaiilor se cunosc c#te!a modele de .5$ ierarhic 6arborescent7 reea, relaional ".a. Mode(u( ierar.ic.;u a<utorul modelului conceptual ierar,ic sc,ema bazei de date poate fi reprezentat sub forma unui arbore #n care nodurile exprim colecii de date iar ramurile reflect relaiile de asociere #ntre #nregistrrile coleciilor de date superioare "i inferioare. Accesul la #nregistrrile coleciilor de date inferioare se face prin tra!ersarea arborelui adic se parcurg toate coleciile aflate #n subordonare ierar,ic dintre colecia & rdcin "i colecia cercetat. 1nui element superior #i pot corespunde unul sau mai multe elemente inferioare iar unui element inferior #i corespunde un singur element superior. Mode(u( reea. Modelul reea se aseamn cu cel ierar,ic diferena const#nd #n aceea c unui element inferior #i pot corespunde unul sau mai multe elemente superioare. Mode(u( re(aiona(. Modelul relaional este #n prezent cel mai rsp#ndit model de baze de date. Acest model are o singur structur de date$ re(aia sau tabe(u(. O baz de date relaional este un ansamblu de relaii 6tabele7 grupate #n <urul unui subiect bine definit. 5eci o relaie poate fi redat printr=un tabel #n care fiecare r#nd reprezint o #nregistrare diferit iar fiecare coloan un atribut. ;oloanele tabelului sunt identificate prin nume diferite "i reprezint cmpurile (atributele, caracteristicile) modelului conceptual. :n fiecare coloan datele trebuie s fie de acela"i tip. ;utarea #n acest model de .5 se face sec!enial toate articolele "i compar#nd criteriile de cutare. Articolele ce satisfac conditiei cutrii se selecteaz "i pot fi afi"ate. Subiectele pe care se axeaz tabelele unei .5 pot fi cele mai di!erse$ acti!itatea unei firme stocarea mrfurilor la un depozit rezultatele unui recensm#nt etc. 5e"i #n modelul relaional principala structur de date o reprezint tabelul o baz de date este mai mult dec#t o simpl mulime de tabele.*e parcurs !om !edea c #ntre tabelele bazei de date exist o interdependen str#ns #n timp ce #ntre tabelele de calcul obi"nuite aceast interdependen practic lipse"te. &estiunea ba e(or de date. Sistemul de gestiune a bazelor de date 6S8.57 este acel sistem de programe care faciliteaz "i super!izeaz introducerea de informaii #n baza de date actualizarea "i extragera din baz controlul "i autorizarea accesului la date. 1n sistem de gestiune a bazelor de date trebuie s fie capabil s #ndeplineasc urmtoarele funcii$ de descriere care rezid #n definirea structuriidatelor a relaiilor dintre acestea "i a condiilor de acces la informaile coninute #n baza de date> de actualizare care presupune inserarea redactarea "i suprimarea datelor> de interogare a BD care permite obinerea diferitor informaii din .5 conform unor criterii de cutare> de obinere de date noi, care const #n prelucrarea informaiei iniiale #n scopul obinerii unor totaluri medii etc.> de ntreinere care const #n crearea copiilor de rezer! compactarea .5 "i repararea ei #n cazul deteriorrii>

de securitate a datelor care rezid #n prote<area .5 #mpotri!a accesului neautorizat "i #n atribuirea drepturilor de acces. Ad/inistrarea ba e(or de date. Administrarea .5 presupune coordonarea lucrrilor de proiectare a .5 protecia 6securitatea7 informaiei dezvoltarea .5 etc. Aceste funcii le #ndepline"te Administatorul Bazei de Date 6A.57. El define"te obiectele sistemului elaboreaz principiile de protecie a datelor rspunde de alegerea "i implimentarea S8.5 asigur funcionarea normal a sistemului.

. 2 S&$% Access. Caracteristica 'enera(! ?a #nceputul anilor @0 s=a produs o trecere #n mas la elaborarea "i utilizarea sistemelor de gestiune a bazelor de date de tip relaional.Acest fenomen se explic prin atingerea unor limite te,nice "i prin flexibilitatea redus a sistemelor de gestiune a bazelor de date cu structuri arborescente "i reea care se foloseau p#n atunci .:nzestrate cu limba<e de generaia a patra "i cu generatoare de aplicaii puternice S8.5 de tip relaional ofer numeroase faciliti de proiectare "i dez!oltare a aplicailor .;ele mai rsp#ndite S8.5 de acest tip sunt$ Oracle 'nformix SA.ase MASB? 'nterbase Access acesta din urm fiind subiectul capitolului de fa. Sistemul de gestiune a bazelor de date MS Access 2003 6"i !ersiunile care l=au precedat7 a fost realizat de corporaia Microsoft "i reprezint o nou ideologie #n acest domeniu a!#nd performane sporite. 0ansarea siste/u(ui MS Access 2003 S8.5 MS Access funcioneaz numai #n mediul +indo0s. Exist mai multe modaliti de lansare a sistemului Access una din ele fiind executarea consecuti! a aciunilor Start/All Programs(sau Programs)/ icroso!t O!!ice/ icroso!t O!!ice Access "##$% ;a rezultat obinem o fereastr asemntoare cu cea din figura 4.

(igura 4. ?ansarea sistemului Access Crearea 1 accesarea unei ba e de date 5up cum am mai menionat elementele principale ale unei baze de date sunt tabelele. 5ar o baz de date poate conine "i alte elemente care se creeaz pe baza tabelelor 6interogri formulare rapoarte etc.7. Aceste elemente #mpreun cu tabelele formeaz a"a=numitele clase de obiecte ale bazei de date. *entru a crea o baz de date nou #n zona Open a ferestrei reprezentate #n figura 4 alegem opiunea &reate a ne' !ile iar #n caseta urmatoare = opiunea Blan( Database% *utem de asemenea utiliza comenzile de creareCaccesare a bazelor de date din meniul )ile%

(igura .2 *entru a desc,ide o baz de date existent #n zona Open a ferestrei reprezentate #n figura 4 executm un clic pe denumirea uneia din bazele de date utilizate recent sau selectm opiunea

ore pentru a accesa o baz de date amplasat pe un dispoziti! de memorie auxiliar. :n caseta de dialog care apare indicm numele .5

(igura.3 6de ex. .'.?7 "i localizarea ei 6discul dosarul7.Obinem o fereastr #n care sunt disponibile cele D clase de obiecte Access.

(igura. 9 (ereastra cu clasele de obiecte Access 2nc.iderea 1 redesc.iderea ba ei de date :nc,iderea unei baze de date poate fi fcut prin executarea comenzii &lose din meniul )ile sau prin acionarea butonului din bara de titlu a bazei de date. 5e regul la #nc,idere sistemul sal!eaz automat baza de date #mpreun cu toate obiectele pe care le conine. :nc,iderea unei baze de date nu #nseamn "i #nc,iderea aplicaiei MS Access astfel #nc#t putem desc,ide o alt de date sau crea o baz de date nou #n modul descris mai sus. Ie3irea din Access 'e"irea din MS Access poate fi fcut #n unul din urmtoarele moduri$ se apas combinaia de taste AltE(9> se execut comanda Exit din meniul (ile>

se acioneaz butonul

din bara de titlu a aplicaiei

.3 "abe(e Access. Crearea unui tabe( 5up ce am desc,is o baz de date e!eniment confirmat prin apariia ferestrei cu cele D clase de obiecte 6fig.97 putem crea diferite obiecte #n oricare din clasele nominalizate. 5ar deoarece fiecare din clasele Bueries (orms )eports *ages Macros "i Modules se definesc #n baza tabelelor acestea 6tabelele7 trebuie create #n primul r#nd. ;u alte cu!inte dac o .5 nu conine cel puin un tabel crearea altor clase de obiecte de!ine lipsit de sens. *entru a crea un tabel nou de exemplu ;omenzi selectm clasa de obiecte *ables, apoi acionm butonul . ;aseta de dialog +e' *able care apare 6fig.27 ne ofer 2 moduri de definire a structurii tabelului.

(igura.2 Moduri de definire a structurii unui tabel 5ac selectm opiunea Design ,ie' "i acionm butonul O-, obinem o fereastr 6fig.F7 #n care definim c#mpurile tabelului "i caracteristicile lor.

fig.F.5efinirea c/mpurilor tabelului ;omenzi

Caracteristici(e c-/#uri(or *entru fiecare c#mp al tabelului se specific 3 caracteristici "i anume$ G )ield +ame 6denumirea c#mpului obligatoriu7> G Data *.pe 6tipul c#mpului obligatoriu7> G Description 6descrierea c#mpului opional7. *entru comoditate denumirile c#mpurilor se introduc pe /ertical, urm#nd ca #n regimul de introducere a datelor Datas0eet ,ie' denumirile c#mpurilor s="i ocupe poziiile obi"nuite 6pe orizontal7. )egimul Design ,ie' nu permite introducerea #nregistrrilor #n tabel ci doar descrierea c#mpurilor care alctuiesc tabelul. Denumirea cmpului poate conine diferite caractere inclusi! spaii cu excepia unor semne speciale 6 H.H HIH ".a.7. :n caz de necesitate denumirea poate conine semnul HJH 6subliniere7. ?ungimea denumirii c#mpului 6#mpreun cu spaiile7 nu poate dep"i F9 de caractere. 12emple3 autorul45d6 rii4 locul6 de6 munc4 7oculDe unc4 7ocul de unc% ipul cmpului poate fi unul din urmtoarele$ G *e2t 8 pentru texte sau numere care nu !or fi folosite #n calcule> G emo 8 pentru texte lungi 6biografia autorului rezumatul crii etc.7. G +umber 8 pentru numere care !or fi folosite #n calcule> G Date/*ime 8 pentru date calendaristice> G &urrenc. 8 pentru !alori bne"ti> G Auto+umber 8 pentru numere #ntregi care #"i mresc #n mod automat !alorile 6numrul de ordine de exemplu7> G 9es/+o 8 pentru !alori logice care pot lua numai dou !alori$ 9es 6ade!r7 +o 6fals7> G O71 Ob:ect 8 pentru imagini 6fotografia autorului7 sunete 6imnul rii7. G ;.perlin( 8 pentru adrese ;.perlin(% -alorile acestui c#mp pot fi adrese 'nternet 6de exemplu 000.google.com7 sau locaii 6calea spre un fi"ier sau dosar din calculator7 G 7oo(up <izard 8 reprezint de fapt nu un tip de date ci o proprietate a c#mpului prin care !alorile lui pot fi selectate din alt tabel. Acest mod de abordare simplific procedura introducerii !alorilor c#mpului "i #n plus reduce riscul comiterii unor erori. *entru a sc,imba tipul c#mpului 6implicit tipul este *e2t), trecem #n coloana Data *.pe 6fig.F7 "i din lista derulant alegem tipul dorit. Apoi trecem 6dac e cazul7 #n coloana Description, pentru a introduce note explicati!e sau #n r#ndul urmtor pentru descrierea altui c#mp. Stabi(irea c.ei(or #ri/are 5ac !alorile unui c#mp sunt unice 6nu se repet7 putem semnala acest lucru pentru a e!ita introducerea accidental a dou !alori identice. Aceast procedur poart denumirea de stabilire a cheii primare, #n cazul tabelului ;'%'%O)' cheia primar poate fi stabilit pe c#mpul 5d&arte, pentru a exclude e!entualitatea repetrii identificatorului crii 6#n bibliotec nu pot exista dou cri cu acela"i identificator7. ;,eia primar poate fi stabilit "i pe c#te!a c#mpuri. *entru a stabili c,eia primar selectm c#mpul respecti! apoi executm un clic pe butonul din bara cu instrumente. ;a rezultat #n partea din st#nga a c#mpului respecti! apare semnul c0eii 6!ezi fig. F7. 5up #nc,eierea procedurii de descriere a c#mpurilor "i de stabilire a c,eii primare sal/m tabelul 6descrierea lui7 select#nd comanda Save din meniul )ile =i indic#nd numele tabelului. 5ac nu am stabilit o c0eie primar 6acest lucru nu este obligatoriu7 sistemul ne !a a!ertiza suger#ndu=ne stabilirea c,eii pe un c#mp de tip Auto+umber% *entru a confirma acionm butonul 9es% :n acest caz sistemul stabile"te automat c,eia primar pe un c#mp Auto+umber 6dac el exist7 sau creeaz suplimentar un asemenea c#mp 6dac el nu exist7 stabilind pe el c,eia primar. *entru a renuna la stabilirea c,eii primare acionm butonul +o% Pro#riet!i(e c-/#uri(or :n afar de tipul c#mpului putem stabili "i unele proprieti ale sale cum ar fi mrimea 6lungimea7 numrul ci!relor zecimale, !ormatul datei calendaristice etc. (iecare tip de date are

proprieti prestabilite dar ele pot fi modificate execut#nd un clic pe c#mpul respecti! 6fig. F partea de sus7 "i modific#nd !alorile prestabilite care apar #n partea de <os. ;#mpurile de ti p *e2t pot a!ea lungimi cuprinse #ntre l "i 222 de caractere. 'mplicit mrimea c#mpului este de 20 dar ea poate fi modificat #n limitele amintite #n funcie de lungimea maxim preconizat a !alorilor c#mpului respecti!. Astfel pentru 5d&arte (identi!icatorul crii), modificm mrimea c#mpului din 20 6!aloarea prestabilit7 #n @ 6!aloarea necesar7. ?a fel procedm "i cu caracteristicile altor c#mpuri. Menionm "i cu aceast ocazie c pentru c#mpurile ce conin numai !alori numerice 6identificatori numerici7 care nu !or fi folosite #n calcule !om prefera tipul *e2t #n locul tipului +umber% Acest mod de abordare !a facilita ulterior cutarea informaiei #n baza de date. ;#mpurile de tip +umber au lungimi diferite #n funcie de opiunea specificat pentru proprietatea )ield Size% Opiunea implicit pentru c#mpurile de tip +umber este de regul Single, dar ea poate fi modificat utiliz#nd comanda Options din meniul *ools. *entru c#mpurile de tip +umber poate fi stabilit "i proprietatea )ormat #n care specificm modul de afi"are a !alorilor 6numrul cifrelor zecimale etc.7. ;#mpurile de t ip Date/*ime au lungimi !ariabile #n funcie de formatul dateiCorei specificat pentru proprietatea )ormat a c#mpului. 5e altfel formatul de reprezentare a datelor calendaristice la fel ca "i delimitatorii dintre dat lun "i an pot s difere de cele utilizate #n aceast lucrare. )eprezentarea datelor ine de modul #n care a fost personalizat sistemul +indo0s. *entru a sc,imba formatul de reprezentare a datelor calendaristice 6dar "i a orei a numerelor "i a !alutei7 este necesar de a efectua setrile respecti!e utiliz#nd aplicaia >egional Options din meniul &ontrol Panel al meniului de baz Start% !emarc" Dac anul este indicat cu " ci!re, Access l interpreteaz ast!el3 pentru /alorile din inter/alul ##8"? se subnelege anii "###8"#"?4 pentru /alorile din inter/alul $#8?? se subnelege anii @?$#8@???% ;#mpurile de tip logic (9es/+o) ocup #n memoria calculatorului un octet "i pot fi reprezentate #n 9 moduri #n funcie de opiunea specificat pentru proprietatea )ormat a acestui c#mp "i anume$ 9es/+o, *rue/)alse, On/O!!, =4C0. :n ultimul caz !aloarea = l corespunde strii *rue 6ade!r7 iar !aloarea 0 = strii )alse 6fals7. S#ecificarea 4a(ori(or #restabi(ite 5ac o bun parte din !alorile unui c#mp se repet frec!ent 6de exemplu # n cazul c#nd ma<oritatea cititorilor au studii superioare7 putem specifica o !aloare prestabilit 6implicit7 a c#mpului respecti!. -aloarea prestabilit 6#n cazul nostru AsuperA) se specific pentru proprietatea De!ault ,alue a c#mpului. 'n procesul introducerii datelor sistemul atribuie c#mpului !aloarea prestabilit #n mod automat utilizatorul urm#nd s modifice doar !alorile care difer de cea prestabilit. Stabi(irea unor condiii de 4a(idare *entru a diminua riscul introducerii unor !alori gre"ite putem stabili condiii 6reguli7 de !alidare pentru !alorile c#mpurilor respecti!e. )egulile de !alidare se stabilesc pentru proprietatea ,alidation >ule a c#mpului. %otodat pentru proprietatea ,alidation *e2t se specific mesa<ul care trebuie s fie afi"at #n cazul nerespectrii regulii. Astfel dac se "tie c preul crilor nu dep"e"te !aloarea 200 specificm pentru proprietatea ,alidation >ule a c#mpului Pre condiia BC"##, iar pentru proprietatea ,alidation *e2t 8mesa<ul APreul crii nu poate !i mai mare de "## de lei% >eintroducei preul crii% ?a fel data #mprumutuluiCrestituirii crii nu poate dep"i data curent astfel c pentru c#mpurile Data5mpr =i Data>estit putem stabili condiia BCDate() pentru proprietatea ,alidation >ule% Mesa<ul specificat pentru proprietatea ,alidation *e2t !a fi "i el adec!at. 'n fiecare din situaiile descrise !or fi afi"ate mesa<ele respecti!e #n cazul introducerii unor !alori care nu corespund condiiilor de !alidare stabilite #n procesul definirii c#mpurilor. Modificarea descrierii unui tabe(

:n cazul c#nd apare necesitatea modificrii descrierii iniiale a unui tabel 6adugarea sau excluderea unuia sau mai multor cmpuri sc,imbarea ordinii modificarea unor caracteristici etc7 desc,idem tabelul respecti! #n regimul %esi'n 5ie6 "i efectum modificrile necesare dup cum urmeaz 6#n orice consecuti!itate7$ a7 Modificarea denu/irii c-/#u(ui. Executm un clic pe denumirea c#mpului "i efectum sc,imbrile necesare. b7 Ad!u'area unui c-/#. Marcm c#mpul #naintea cruia trebuie inserat noul c#mp. *entru aceasta executm un clic #n partea st#ng a r#ndului respecti! acesta sc,imb#ndu="i culoarea. Apoi executm comanda Insert Ro6 din meniul Edit. c7 E7c(uderea unui c-/#. Marcm c#mpul ca #n cazul precedent apoi apsm tasta %e(ete. ;onfirmm aciunea prin OK. d7 Sc.i/barea ordinii 8de#(asarea9 c-/#uri(or. Marcm c#mpul care urmeaz a fi deplasat apoi in#nd apsat butonul st#ng al mouse=ului deplasm c#mpul dat peste c#mpul #naintea cruia dorim s fie situat. e7 Sc.i/barea caracteristici(or. Executm un clic pe r#ndul #n care este definit c#mpul apoi stabilim caracteristicile c#mpului #n modul descris #n paragrafele precedente. :n cazul #n care #n tabel au fost introduse date modificarea caracteristicilor c#mpurilor tabelului poate implica denaturarea informaiei. Astfel dac mic"orm lungimea unui c#mp de tip "e7t este posibil trunc,ierea 6din dreapta7 a datelor. Modificarea tipului c#mpului poate a!ea de asemenea consecine nedorite. 5in aceast cauz ne !om strdui s definiti!m proprietile c#mpurilor #nainte de a introduce !alori #n tabel. f7 Ad!u'area sau anu(area unei c.ei #ri/are . :n caz de necesitate putem aduga sau anula una sau mai multe c,ei primare. *entru a sc,imba c,eia primar de pe un c#mp pe altul selectm c#mpul nou apoi acionm butonul din bara cu instrumente. *entru a stabili c,eia primar pe c#te!a c#mpuri le selectm apoi acionm acela"i buton. *entru a anula una sau mai multe c,ei primare executm comanda Inde7es din meniul 5ie6 apoi #n caseta care se desc,ide selectm c#mpurile respecti!e "i apsm tasta %e(ete. 5up efectuarea modificrilor sal!m tabelul cu Sa4e As sau Sa4e din meniul +i(e. Introducerea date(or -n tabe( 5up ce am efectuat procedurile de descriere a tabelului putem introduce date #n c#mpurile lui. *entru a iniia procesul de introducere a datelor desc,idem .5 6dac nu este desc,is7 apoi #n fereastra Database 6fig.97 selectm tabelul necesar 6de exemplu ;ititori7 "i executm un clic pe Open% ;a rezultat se afi"eaz c#mpurile tabelului respecti! fig.D6iniial tabelul conine doar un r#nd liber7.

fig.D 'ntroducerea "i modificarea datelor #n tabel

Lu este absolut obligatoriu s completm toate c#mpurile> astfel dac anumite date nu s#nt deocamdat cunoscute introducerea lor poate fi am#nat. Excepie fac c#mpurile pentru care au fost stabilite c.ei #ri/are. Aceste c#mpuri nu pot avea valori nule, de aceea !alorile lor trebuie introduse n mod obligatoriu# Ordinea introducerii datelor poate fi "i ea oricare. 5ac a fost stabilit o c,eie primar la o nou desc,idere a tabelului #nregistrrile !or fi afi"ate #n ordinea cresc!toare a !alorilor c#mpului respecti!. 5atorit acestui fapt orice #nregistrare nou se adaug la sf#r"itul tabelului a!#nd certitudinea c ulterior ea !a fi plasat #n locul corespunztor. 5up terminarea introducerii datelor #nc,idem tabelul acion#nd butonul sau execut#nd comanda C(ose din meniul +i(e 6modificrile efectuate se sal!eaz automat7. Re/arc!: %ipul "i caracteristicile datelor introduse trebuie s corespund #ntocmai tipului "i caracteristicilor c#mpurilor respecti!e definite #n procesul crerii 6descrierii7 tabelului. Redactarea date(or 5ac apare necesitatea modificrii 6editrii7 #nregistrrilor unui tabel desc,idem tabelul #n regimul Datas0eet ,ie', acion#nd butonul Open din fereastra Database 6sau execut#nd un dublu= clic pe numele tabelului7. ;a rezultat obinem tabelul cu coninutul precedent coninut pe care=4 putem modifica la dorin. Modificrile pot fi cele mai di!erse$ nlocuirea datelor existente completarea unor c#mpuri ale cror !alori nu erau cunoscute anterior adugarea unor #nregistrri noi 3tergerea unor #nregistrri; copierea unor !alori etc. Ma<oritatea acestor modificri se efectueaz prin simpla deplasare #n c#mpul "i r#ndul necesar "i prin #nlocuirea coninutului !ec,i prin altul nou. Menionm c semnul indic r#ndul curent iar atunci c#nd iniiem procedura se modificare a #nregistrrii acest semn este #nlocuit cu ultimul fiind prezent p#n la trecerea la o alt #nregistrare. 'n cele ce urmeaz !om descrie c#te!a proceduri de redactare a datelor. a7 Adugarea unor nregistrri noi% :nregistrrile noi sunt plasate la sf#r"itul tabelului . b7 $%cluderea unor nregistrri % *entru a "terge una sau mai multe #nregistrri consecuti!e marcm aceste #nregistrri prin glisarea 6HtragereaH7 mouse=ului pe !erticala din st#nga tabelului apoi apsm tasta %e(ete sau alegem comanda Delete din meniul 1dit% Li se !a cere confirmarea aciunii la care !om rspunde prin O- sau !om renuna prin &ancel% c7 &opierea unor blocuri de date% *entru a copia un bloc de date marcm blocul apoi acionm butonul &op. din bara cu instrumente. ;a rezultat coninutul blocului se copie #n memoria &lipboard% 5in acest moment coninutul memoriei ;lipboard poate fi HlipitH oriunde. 'n acest scop marcm locul inserrii 6blocul= destinaie7 "i acionm butonul Paste din bara cu instrumente. !emarc" Dimensiunile =i caracteristicile blocului8destinaie trebuie s corespund ntocmai dimensiunilor =i caracteristicilor blocului8surs% Modificrile efectuate #n orice #nregistrare a tabelului se sal!eaz #n mod automat de fiecare dat c#nd trecem la o alt #nregistrare sau la #nc,iderea tabelului. Aceasta #nseamn c dup terminarea lucrului cu un tabel nu este neaprat ne!oie s=4 sal!m = sistemul o !a face singur. 1tilizatorul trebuie doar s aib gri< s #nc,id tabelul #n caz c nu=4 !a mai utiliza. 5ac #ns am efectuat modificri ce i n de aspectul tabelului 6limea coloanelor ordinea lor etc.7 "i dorim ca aceste modificri s fie prezente la o nou desc,idere #nainte de a #nc,ide tabelul #l sal!m cu comanda Save din meniul 'ile# MS Access pstreaz informaia despre modificrile efectuate ceea ce permite #n cazul c#nd am gre"it anularea modificrilor "i re!enirea la starea precedent. *entru a anula modificrile din c#mpul curent apsm tasta Esc; iar pentru a anula modificrile din #nregistrarea curent =apsm tasta Esc de dou ori. *entru a anula modificrile din #nregistrare dup ce s=a trecut la o nou #nregistrare executm comanda (ndo Saved

!ecord din meniul $dit# *rin aceasta se re!ine la s i t u a i a anterioar aciunii gre"ite 6nedorite7. Modific!ri ce nu afectea ! structura funda/enta(! *e lng modificrile care !izeaz structura unui tabel "i coninutul lui sunt posibile "i modificri care sc,imb doar modul de prezentare a tabelului fr a afecta structura lui fundamental. Aceste modificri i n de ordinea afi"rii c#mpurilor 6coloanelor7 limea c#mpurilor #nlimea r#ndurilor etc. a) Schimbarea ordinii a*i+rii cmpurilor , #n unele cazuri este necesar de a sc,imba ordinea afi"rii c#mpurilor diferit de cea din descrierea fundamental stabilit #n regimul Design ,ie'% *entru a reamplasa un c#mp #l marcm apoi in#nd apsat butonul st#ng al mouse=ului #l deplasm #n poziia dorit "i eliberm butonul. ;a rezultat c#mpul deplasat #nlocuie"te c#mpul peste care a fost suprapus acesta din urm deplas#ndu=se la dreapta. :n mod analog putem deplasa "i alte c#mpuri astfel #nc#t ordinea c#mpurilor s de!in cea dorit. 5ar oricare ar fi modificrile efectuate #n regimul Datas0eet ,ie' ()oaie de date), ele nu afecteaz ordinea "i caracteristicile c#mpurilor stabilite #n regimul Design ,ie' (Proiectare)% b) Sortarea nregistrrilor % *entru a obine o consecuti!itate a #nregistrrilor diferit de cea existent putem efectua o sortare 6#n ordine cresctoare sau descresctoare7 dup !alorile unui c#mp al tabelului. *entru aceasta plasm cursorul pe c#mpul respecti! "i acionm unul din butoanele sau . 5ac la #nc,iderea tabelului aceast modificare nu se sal!eaz la o nou desc,idere a tabelului #nregistrrile se !or afi"a #n ordinea obi"nuit. Modul de sortare descris aici nu pre!ede sortri complexe acestea p ut#nd fi obinute #n baza interogrilor . c) ,odi*icarea limii coloanei unui cmp % 'n cazul c#nd limea unui c#mp nu corespunde lungimii datelor pe care le conine putem sc,imba 6mri mic"ora7 limea lui. *entru aceasta poziionm indicatorul mouse=ului pe l i n i a din partea dreapt a denumirii c#mpului 6forma indicatorului se sc,imb #n sgeat dubl orizontal7 apsm butonul st#ng al mouse= ului "i deplas#ndu=4 la st#nga=la dreapta mic"orm=mrim limea c#mpului. 5ac #n poziia #n care indicatorul mouse=ului ia forma menionat mai sus executm un dublu=clic limea c#mpului de!ine egal cu lungimea celei mai mari #nscrieri a acestui c#mp din partea !izibil a tabelului. Subliniem "i cu aceast ocazie c aceste modificri nu sc,imb limea iniial a c#mpului stabilit #n procesul descrierii lui #n regimul Design ,ie'% d) ,odi*icarea nlimii rndurilor# *entru a modifica #nlimea r#ndurilor poziionm indicatorul pe linia ce desparte oricare dou r#nduri 6forma indicatorului se modific #n sgeat dubl !ertical7 apsm butonul st#ng al mouse=ului "i deplas#ndu=4 #n sus=#n <os mic"orm= mrim #nlimea r#ndurilor 6se modific simultan #nlimea tuturor r#ndurilor "i nu doar a celui curent7. 5ac nu sal!m tabelul cu Sa/e din meniul )ile, modificrile descrise #n a)8d7 #"i pierd actualitatea astfel #nc#t la o nou desc,idere a tabelului ordinea c#mpurilor "i a #nregistrrilor dimensiunile coloanelor "i r#ndurilor !or rm#ne acelea"i de p#n la modificarea tabelului. 5ac #ns dup efectuarea modificrilor sal!m tabelul aceste modificri !or fi actuale la o nou desc,idere a tabelului dar "i #n acest caz ele nu afecteaz caracteristicile din descrierea lui iniial. 5up terminarea lucrului cu un tabel #l putem minimiza 6#n cazul c#nd intenionm s=4 mai utilizm7 sau #nc,ide 6#n cazul c#nd nu=4 !om mai utiliza7. 5esc,iz#nd consecuti! c#te!a tabele "i redimension#nd ferestrele respecti!e putem afi"a pe ecran mai multe tabele ale .5. :nc,iderea tabelului se face dup cum am mai menionat prin executarea comenzii &lose din meniul )ile% *entru a relua lucrul cu un tabel #l desc,idem acion#nd butonul Open din fereastra Database 6fig. 97. Re(aii dintre tabe(e. Inte'ritatea date(or )elaiile dintre dou tabele se stabilesc de regul prin intermediul unor c#mpuri identice 6cu aceea"i denumire de aceea"i lungime cu acelea"i proprieti7 prezente #n ambele tabele.

:n cazul relaiei de tipul unu la muli #n tabelul primar 6din partea cruia se realizeaz relaia HunuH7 trebuie s existe un c#mp numit c0eie primar, #n care nu se admit !alori care se repet iar #n tabelul secundar 6din partea cruia se realizeaz relaia HmuliH7 trebuie s existe un c#mp analogic cu cel din tabelul primar numit c0eie strin, care poate admite !alori care se repet. )elaia muli la muli poate fi transformat #n dou relaii de tipul unu la muli prin definirea unui tabel intermediar #n care se introduc #n calitate de c,ei strine c,eile primare ale primelor douM tabele. Astfel pentru a e!ita relaia muli la muli dintre tabelele ;N)O' "i ;'%'%O)' a fost definit tabelul ;OMELP' #n care au fost incluse c#mpurile 5d&arte =i 5D&it din tabelele respecti!e. )elaia de tipul unu la unu presupune existena #n ambele tabele a unei c,ei primare cu acelea"i caracteristici #n fond dou tabele #ntre care exist o relaie de tipul unu la unu pot fi oric#nd unite #ntr=un singur tabel> la fel orice tabel poate fi di!izat #n dou sau mai multe tabele #ntre care se stabile"te o relaie de tipul unu la unu% 5i!izarea unui tabel #n modul menionat mai sus poate fi util #n cazul unui tabel cu un numr foarte mare de c#mpuri 6un tabel Access de exemplu nu poate conine mai mult de 222 de c#mpuri7 dar "i #n situaia c#nd o parte din informaia care se refer la o entitate are un caracter confidenial sau se utilizeaz foarte rar. :n concluzie de"i relaiile de tipul unu la unu nu sunt caracteristice unei baze de date de tip relaional totu"i #n unele situaii acest tip de relaii este preferabil sau c,iar necesar. 5ac la proiectarea tabelelor inem cont de principiile expuse mai sus atunci Access stabile"te automat relaiile dintre tabelele care conin c#mpuri comune. %otu"i putem stabili relaii #ntre tabelele bazei de date "i #n mod explicit utiliz#nd comanda !elationships din meniul ools# :n acest caz apare

fig.@ )elaiile dintre tabelele bazei de date .'.? o fereastr 6fig.@7 #n care indicm tabelele #ntre care se stabilesc relaii apoi mouse=ului trasm legturile #ntre c#mpurile respecti!e. 5ac unul din c#mpurile de legtur este de tip c,eie primar 6el are o culoare mai pronunat7 trasarea se face pornind de la acest c#mp. % a b e l u l de la care se traseaz legtura se nume"te tabel primar 6principal7 i a r cellalt = secundar 6subordonat7. ;a rezultat apare o caset de dialog 6fig.Q7 cu a<utorul

fig.Q Stabilirea proprietilor relaiilor #n care putem specifica proprietile relaiei 6legturii7. *entru relaia dintre dou tabele pot fi stabilite urmtoarele proprieti$ 4. *ipul relaiei (>elations0ip *.pe) poate fi stabilit ca unu la unu (one to one) sau unul la muli (one to man.)4 2. 5mpune integritatea re!erenial (1n!orce >e!erential 5ntegrit.D% 'ncluderea acestui parametru asigur integritatea datelor #n procesul introducerii modificrii sau "tergerii #nregistrrilor din tabelele legate. Acest lucru este posibil doar #n cazul c#nd c#mpul din tabelul principal este de t i p c,eie primar iar c#mpul de legtur din tabelul subordonat are acela"i tip de date. Atunci c#nd introducem date #n c#mpul de legtur al tabelului subordonat sunt acceptate doar acele !alori care se conin #n c#mpul respecti! al tabelului principal. 5e exemplu dac nu exist un cititor cu identificatorul #EF" #n tabelul ;'%'%O)' sistemul nu !a admite apariia acestui cod #n c#mpul respecti! al tabelului ;OMELP'. 'n acest caz este necesar s introducem mai #nt#i datele despre cititorul #n cauz #n tabelul ;'%'%O)' apoi s utilizm identificatorul cititorului #n tabelul ;OMELP'. ?a fel nu putem exclude o #nregistrare din tabelul principal dac !aloarea c#mpului de legtur a acestei #nregistrri se conine #n una sau mai multe #nregistrri ale tabelului subordonat. 3. odi!icarea n cascad a nregistrrilor (&ascade Gpdate >elated )ields)% 5ac acest parametru este inclus sistemul !a modifica toate !alorile c#mpului de legtur ale tabelului subordonat #n cazul c#nd !aloarea c#mpului respecti! al tabelului principal se modific. 5e exemplu dac un cititor a pierdut carnetul de cititor cu numrul #H@? 6identificatorul cititorului7 "i i se remite un nou carnet cu numrul @EIH, aceast !aloare trebuie s se modifice #n toate #nregistrrile tabelului ;OMELP' #n care figureaz !aloarea !ec,e. 'n caz contrar #mprumuturile de cri fcute de cititorul cu identificatorul #H@? nu sunt !alide deoarece nu se cunoa"te nici o informaie despre cititorul #n cauz. 9. 12cluderea n cascad a nregistrrilor (&ascade Delete >elated >ecords)% 5ac acest parametru este acti! atunci excluderea unei #nregistrri din tabelul principal implic excluderea tuturor #nregistrrilor din tabelul subordonat #n care !aloarea c#mpului de legtur coincide cu cea a c#mpului respecti! din tabelul principal. 5e cele mai multe ori asemenea excluderi sunt fire"ti deoarece existena unor #nregistrri #n tabelul subordonat pentru care !aloarea c#mpului de legtur nu se conine "i #n tabelul principal duce la pierderea integritii datelor. %oate raionamentele de mai sus in de integritatea datelor asigurarea creia reprezint unul din principiile fundamentale ale proiectrii bazelor de date.

*.+uncii Access MS Access conine un set de !uncii standard de cele mai diferite tipuri. *entru descrierea lor !om folosi urmMtoarele con!enRii$ &Jmp+um 8 argument ce reprezint c#mpuri de tip +umber sau &urrenc.4 &Jmp*e2t 8 argument ce reprezint c#mpuri de tip *e2t4 &JmpDate 8 argument ce reprezint c#mpuri de tip Date/*ime4 &Jmp 8 argument ce reprezint c#mpuri de orice tip> n,m 8 argumente ce reprezint numere naturale4 i 8 argument ce reprezint numere ntregi4 KD 8 argumentele incluse #n paranteze figurate sunt opionale 6neobligatorii7> Argumentele funciei se pun #ntre paranteze rotunde "i se separ prin punct " i !irgul 6uneori prin !irgul7. :n cazul lipsei argumentelor dup denumirea funciei se pun paranteze rotunde care nu conin #n interior nimic. :n cazul c#nd argumentul funciei reprezint un c#mp numele c#mpului se ia #ntre paranteze ptrate ST. Enumerm #n cele ce urmeaz c#te!a dintre funciile sistemului Access$ 4. Abs(&Jmp+um) 8 calculeaz !aloarea absolut 6modulul7. 2. A4'8&Jmp+um) 8 calculeaz media aritmetic. 3. Sin(&Jmp+um) 8 calculeaz !aloarea sinusului. 9. E7# (&Jmp+um) 8 calculeaz puterea numrului e% 2. 0o'(&Jmp+um) 8 calculeaz logaritmul natural. F. S<r8&Jmp+um) 8 calculeaz rdcina ptrat. D. Int8&Jmp+um) 8 calculeaz partea #ntreag. @. Rnd8i9 sau Rnd89 = returneaz un numr aleator situat #ntre 0 "i 4. Q. Su/(&Jmp+um) 8 calculeaz suma. 40. Ma7(&Jmp+um)8 calculeaz!aloareamaxim l 4. Min(&Jmp+um) 8 calculeaz !aloarea minim. 42. 5ar(&Jmp+um) 8 calculeaz !ariaia 6dispersia7. 43. Count6&Jmp7 = calculeaz numrul !alorilor nenule. 49. 0eft(&Jmp*e2t,n) 8 extrage primele n caractere 6din st#nga7. 42. Ri'.t6&Jmp*e2t,n 7 = extrage ultimele n caractere 6din dreapta7. 4F. 0en (&Jmp*e2t) 8 calculeaz lungimea expresiei. 4D. 0"ri/(&Jmp*e2tD 8 lic,ideaz toate spaiile de debut 6din fa7. 4@. R"ri/(&Jmp*e2t) = lic,ideaz toate spaiile 6blancurile7 de la sf#r"it.

Vous aimerez peut-être aussi