1BAZE DE DATE – MICROSOFT ACCESS 2010 Ce este o baz ă de date Intr-o defini ție, pe înțelesul tuturor, vom în țelege printr-o bază de date o colecție… [627801]
1BAZE DE DATE – MICROSOFT ACCESS 2010
Ce este o baz ă de date
Intr-o defini ție, pe înțelesul tuturor, vom în țelege printr-o bază de date o colecție de informa ții ce descrie mai multe
subiecte similare. Exemplul cel mai apropiat de activitatea medical ă este baza de date alc ătuită din foile de observa ție ce
însoțesc pacien ții spitaliza ți. Foaia de observa ție se întinde pe mai multe pagini, rubricile constuiente descriind pacientul
(subiectul) internat.
Totalitatea caracteristicilor ce descriu un subiect din baza de date alc ătuiesc o înregistrare . Deci baza de date este o
reuniune de înregistr ări.
Fiecare caracteristic ă poartă numele de câmp . Deci o înregistrare es te reuniunea tuturor câmpurilor (caracteristicilor)
ce compun o înregistrare.
Revenind la exemplul anterior, baza de date este format ă din mulțimea foilor de observa ție (ce poart ă denumirea de
înregistrări), fiecare rubric ă constituind un câmp. Structura tuturor foilor de observa ție este omogen ă, fiecare înregistrare
conținând acelea și câmpuri (chiar dac ă unele sunt goale). Acest tip de baze de date pot fi organizate și sub forma unui tabel
mare sau a mai multor tabele, mai mici, cu leg ături între ele. S ă remarcăm faptul c ă și în practic ă, în foaia de observa ție sunt
atașate buletine de analize, rezultate ale unor investiga ții, diagrame… Bazele de date ce pot fi astfel organizate poart ă
denumirea de baze de date rela ționale .
Care sunt etapele de realiz are a unei baze de date
Atunci când dorim s ă contruim o baz ă de date trebuie s ă începem cu generarea structurii bazei de date , adică să
stabilim din ce câmpuri alc ătuim o înregistrare. Pentru fiecare câmp se alege un nume, un tip de date (numeric, text, dat ă
calendaristic ă…) și o gamă de reprezentare. În continuare sunt stabilite tabele în care distribuim înregistr ările precum și
legăturile dintre aceste tabele. Aceast ă etapă de proiectare este deosebit de important ă, de aten ția cu care este parcurs ă
depinzând succesul ulterior al aplica ției.
Odat ă generată structura bazei de date se trece la completarea cu informa ție. Operația este de regul ă continuă,
desfășurându-se în paralel cu exploatarea bazei de date.
Exploatarea baza de date, const ă în intocmirea de rapoarte și statistici plecând de la datele de ținute.
Să realizăm concret o baz ă de date
No țiunile de mai sus sunt general valabile, realizarea efectiv ă a unei baze de date necesitând particulariz ări impuse de
limbajul de programare utilizat. Pentru exemplificare noi am ales un mediu modern, larg r ăspândit și anume Microsoft Access
2010.
Baza de date ce o vom construi în continuare este un exemplu minimizat al foii de observa ție. Numărul însușirilor
memorate va fi mic (pentru a ne încadra în ora de laborator) dar va acoperi ca tip de informa ție situațiile concrete din practic ă.
Ne propunem s ă reținem pentru fiecare pacient: [anonimizat] (în câmpul Name_p ), sexul ( sex), greutatea m ăsurată în
kilograme ( weight(kg) ), înălțimea măsurată în centimetri ( height(cm) ), adresa ( locality ), mediul de provenien ță rural sau urban
(environment ), faptul c ă este sau nu fum ător (smoker ), valorile temperaturilor pe perioada intern ării (temperature ) inclusiv a
momentelor când s-au înregistrat ( date_m, time_m ). Câmpurile men ționate vor fi repartizate în trei tabele numite patient ,
patient_origin, temperatures , cu legături între ele (fig.1):
Figura 1. Tabelele ce compun baza de date
Fa ță ce cele expuse mai sus, fiecare din cele trei tabele con ține câte un câmp special (numit cheie primar ă) care
identifică în mod unic fiecare linie din fiecare tabel.
2 O observa ție înainte de a începe, întrucât alocarea butoanelor în Office 2010 este dinamic ă, pentru a nu avea surpriza
inexistenței unor butoane indicate în indrumar, fereastra în care ruleaz ă programul va fi permanent MAXIMIZAT Ă. Acum să
lansăm în execu ție programul Access 2010 (fig.2):
Figura 2. Fereastra de început a programului
Ac ționăm cu mouse-ul și alegem Blank database (pentru a în țelege mecanismul de construire vom pleca de la zero
și vom parcurge to ți pașii necesari), apoi declan șăm apariția ferestrei File New Database (fig.3):
Figura 3. Alegerea folderului noii baze de date
Fa ță de alte programe Microsoft Office, Access-ul ne cere s ă avem definit fi șierul bază de date de la început (lucru
motivat de cantitatea mare de informa ție cu care lucreaz ă o bază de date). Cu ajutorul fereastrei File New Database alegem
3folder-ul (aten ție să fie pe discul D:) în care vom memora fi șierul indicat la rubrica File name. Am ales ca nume,
pacienti.accdb. Efectul acestei opera ții îl avem în figura 4:
Figura 4. Odată pregătit numele fi șierului, precum și folderol, putem ac ționa butonul Create
Finaliz ăm acționând butonul Create (fig.4). Efectul apare sub forma figurii 5.
Din acest moment baza de date se afl ă pe disc și putem s ă o folosim. Aten ție, pentru a nu pierde informa ție, în acest
program, ori de câte ori suntem întreba ți dacă dorim să memorăm, răspundem cu op țiunea Yes.
Construc ția tabelelor
Figura 5. Apariția primului tabel al bazei de date
4 Pentru a în țelege rolul și necesitatea st ăpânirii structurii câmpurilor nu vom utiliza varianta simplist ă oferită de Access
2010 ci vom comuta tabelul in modul de lucru Design View (fig. 6).
Figura 6. Comutarea în modul de lucru Design View
Ac ționând butonul din col țul stânga sus apare lista posibilit ăților de construc ție a unui tabel. Alegem Design
View, ceea ce duce la schimbarea modului de prezentare al tabelului precum și la apariția ferestrei Save As, cu ajutorul c ăreia
indicăm numele sub care memor ăm tabelul (fig.7).
Figura 7. La alegerea op țiunii Design View ni se cere s ă indicăm un nume pentru tabel .
Pentru tabelul în lucru vom alege numele Patients. (deoarece va memora numele pacien ților).
Figura 8 ne prezint ă structura tabelului ( Design View ne dă posibilitatea s ă stabilim pentru fiecare câmp un nume, un
tip de date și o gamă de reprezentare). Pe coloana Field Name indicăm, prin tastare, numele fiec ărui camp. Odat ă denumit un
nou câmp, pentru acesta trebuie s ă fie indicat tipul de date (text, num ăr…) pe coloana Data Type , iar, dacă dorim, pe coloana
5Description , putem ad ăuga informa ții utile în țelegerii con ținutului câmpului și modului de completare cu informa ție. Aceste
informații vor apare la baza ferestrei în care se afl ă tabelul, atunci când cursorul de scriere se afl ă pe coloana corespunz ătoare.
Figura 8. Structura unui tabel în Design View
S ă construim structura tabelului patients . Primul câmp este patient și trebuie s ă defineasc ă în mod unic fiecare linie
(să fie cheie primar ă) în tabelul patients . Cheița din fața câmpului patient indică acest lucru. Varianta cea mai la îndemân ă
pentru construirea unui astfel de câmp este apelarea la num ărul de ordine. Pacien ții din baza de date vor fi numerota ți prin
alegerea tipului de date Autonumber (fig.9). Acest tip de date este de fapt reprezentat de numere Long integer , care se
incrementez ă automat la inserarea unei noi linii în tabel. Aten ție, într-un tabel un singur câmp poate fi Autonumber !
Figura 9. Generarea câmpului name_p
In figura 9 indic ăm generarea urm ătorului camp, cel în care va fi memorat numele și prenumele pacientului. Num ărul
de caractere maxim acceptat pentru acest camp este limitat la 50 (suficient pentru un nume plus prenume). Dup ă ce se tasteaz ă
6name_p pe rândul doi în coloana Field name , se duce cursorul mouse-ului pe acela și rând în coloana Data type și se
acționează butonul ap ărut în rubric ă. Pentru tipul câmpului se alege Text. ( acest tip de câmp este cel implicit pentru Data
type). La rubrica Field size se modific ă valoarea la 50.
Al treilea câmp este sex, tot de tipul text. Procedăm (fig. 10) similar câmpului anterior. Modific ăm numărul de
caractere alocat câmpului. Dup ă ce a fost ales tipul text se duce cursorul mouse-ului în rubrica Field size , unde valoarea
implicită 50 este modificat ă la valoarea 1 (suficient ă pentru memorarea celor dou ă variante: F sau M)
Figura 10. Generarea câmpului sex
Pentru ultimele dou ă câmpuri – weight(kg) și height(cm) – la rubrica Data type este necesar s ă alegem Number , având
în vedere faptul c ă vor fi memorate numere fig.11).
Figura 11. Generarea câmpului weight(kg)
Forma implicit ă a tipului Number este Long integer (fig. 12).
7
Figura 12. Valoarea implicit ă a tipului Number este Long integer .
Deoarece Long integer este destinat memor ării de numere întregi de mari dimensiuni, având în vedere gama de valori
ce vor fi memorate, put em face schimbarea în Byte (domeniul de valori întregi fiind 0-255, suficient cazului nostru). Pentru
aceasta se duce cursorul mouse-ului în rubrica Field size se apasă butonul ap ărut în rubric ă și se face alegerea dorit ă (fig. 13).
Figura 13. Alegerea tipului Byte
În mod similar este generat și câmpul height(cm) (fig.14)
8
Figura 14. Generarea câmpului height(cm)
Pentru finalizarea gener ării tabelului închidem structura patients (fig.15). S ă reținem modalitatea prin care putem
închide orice obiect de pe bar a pe care se afl ă butonul x. Inchiderea este succesiv ă, începând cu obiectul cel mai apropiat de
butonul x încercuit în figura 15.
Figura 15. Inchiderea structurii patients
Inchiderea tabelului este precedat ă de apariția unei interog ări la care r ăspundem Yes (figura 16).
Figura 16. Mesajul prin care suntem întreba ți dacă memorăm tabelul închis anterior
9 Structura patients este finalizat ă, dar deoarece tabelul patients face parte dintr-o baz ă de date cu mai multe tabele nu
vom introduce informa ții până nu finaliz ăm structurile tuturor tabelelor componente.
Baza de date dezvoltat ă de noi mai con ține două tabele. Generarea structurilor acestor dou ă tabele se va face utilizând
opțiunea Create , butonul Table Design View (fig.17)
Figura 17. Lansarea gener ării structurii unui nou table în Design View .
In figura 18 este prezentat efectul comenzii. Se observ ă că de aceasta data nu este prezent ă cheia primar ă.
Figura 18. Structura noului tabel
Continu ăm dezvoltarea bazei de date folosind no țiunile descrise anterior precum și imaginile din figurile 19-26 prin
construirea structurii tabelului patient_origin . Pentru cheia primar ă a fost ales tipul Number , varianta Long integer , deci
atenție atunci când vor fi introduse datele.
10
Figura 19. Introducerea câmpului patient .
Figura 20. Stabilirea cheii primare.
Figura 21. Introducerea câmpului locality
11
Figura 22. Introducerea câmpului environment
Figura 23. Introducerea câmpului smoker
Figura 24. Inchiderea tabelului patient_origin
12
Figura 25. Interogarea la care r ăspundem Yes pentru memorarea structurii
Figura 26. Indicarea numelui, patient_origin, sub care se memoreaz ă tabelul
Continu ăm lucrul cu generarea structurii ultimului tabel ( temperatures ), al bazei de date. În plus fa ță de cele
cunoscute deja apare utilizarea și a tipului de date Date/Time (figurile 27-33) pentru memorarea momentului m ăsurării
temperaturii.
Figura 27. Alegerea tipului de date Date/Time pentru câmpul date_m
13
Figura 28. Stabilirea formatului datei ( Short Date )
Figura 29. Stabilirea formatului ( short time )de memorare a orei pentru câmpul time_m
Figura 30. Generarea câmpului patient de tipul Number .
14
Generarea câmpului patient (cheie străină în acest tabel) trebuie făcută în conformitate cu tipul Autonumber definit în
tabelul patients (unde este cheie primar ă) și este ilustrat ă în figura 19.
Pentru câmpul temperature este necesar s ă alegem o modalitate prin care s ă putem memora numere zecimale, având
în vedere valorile temperaturilor umane. Datorit ă numărului mic de zecimale cu care se m ăsoara temperatura, dintre op țiunile
disponibile ( Single și Double ) se alege Single . (fig. 31).
Figura 31. Alegerea tipului Number , varianta Single , pentru câmpul t emperature .
Figura 32. Inchiderea tabelului temperatures .
Figura 33. Stabilirea numelui tabelului temperatures .
Construc ția legăturilor între tabele
Ultima etap ă în generarea structurii bazei de date o constituie stabilirea leg ăturilor între tabele. Aten ție, legăturile se
fac înainte de introducerea de informa ție. Butonul cu care declan șăm construc ția legăturilor este Relationships și se găsește
apelând op țiunea Database Tools (fig. 34).
15
Figura 34. După ce a fost construit ă structura tabelelor, de la op țiunea Database Tools
se acționează butonul Relationships .
Apăsarea butonului Relationships are ca efect apari ția ferestrei Show table (fig. 35). Cu ajutorul ferestrei Show table reținem
tabelele între care vom stabili leg ături prin selectare cu mouse-ul și apăsarea butonului Add. Finalizăm prin ap ăsarea butonului
Close .
Figura 35. Fereastra Show Table ne ajută să aducem pe ecran tabelele ce vor fi legate
Figura 36. Tabelele între care vor fi construite leg ăturile
Pentru efectuarea primei leg ături ducem cursorul mouse-ului peste câmpul patient din tabelul patiens , apăsăm
prelung butonul din stânga (de pe mouse) și fără a ridica degetul deplas ăm cursorul pân ă peste câmpul patient din tabelul
patient_origin , moment în care eliber ăm mouse-ul. Efectul este prezentat în figura 37
16
Figura 37. Fereastra Edit Relationships prezintă câmpurile ce vor fi legate
În continuare bif ăm cele trei c ăsuțe din fereastr ă, impunând în acest fel un control continuu asupra informa țiilor din
tabele. Finaliz ăm operația prin ap ăsarea butonului Create . Efectul îl vedem în figura 38.
Figura 38. Legătura tip 1:1 între tabelele patients și patients_origin
Leg ătura format ă este de tipul 1:1 (one to one) adic ă fiecarei linii în primul tabel îi corespunde cel mult o singur ă linie
în al doilea. Practic cele dou ă tabele pot fi alipite, rezultând un singur tabel cu mai multe coloane dar mai greu de manevrat.
Figura 39. Realizarea leg ăturii între tabelele patients și temperatures
17 A doua leg ătură o realizăm între câmpurile patient din tabelele patients și temperatures urmând o procedur ă similară
celei de la leg ătura anterioar ă (fig. 39). Figura 40 ne arat ă că a doua leg ătură care este de tip 1:m (one to many) adic ă fiecarei
linii din primul tabel îi pot corespunde mai multe în al doilea și fiecarei linii din al doilea tabel îi corespunde exact una în
primul.
Figura 40. Cele trei tabele, legate între ele
Figura 41 . Incheierea efectu ării legăturilor
Pentru ca baza de date s ă rețină legăturile efectuate vom închide fereastra Relationships și vom răspunde Yes la
întrebarea din figura 42.
Figura 42. Memorarea, în cadrul bazei de date, a rela țiilor stabilite prin ac ționarea butonului Yes
Completarea cu informa ție a tabelelor
Primul tabel în care întroducem date este patients (fig. 43). Dup ă ce îl deschidem, introdrucem datele, pentru un
număr de pacien ți, incluzând datele din figura 44. În c ăsuța in care scrie ( New) nu tastăm nimic, programul incrementând
automat.
Figura 43. Deschiderea tabelului patients
18
Figura 44. Completarea cu informa ție a tabelului patients .
Trecem acum la tabelul patients_origin (fig. 45), Il deschidem și introducem date, în conformitate cu figura 46.
Figura 45. Deschiderea tabelului patient_origin
Figura 46. Introducerea de informa ție în tabelul patient_origin
Aten ție, numărul introdus la rubrica patient trebuie s ă se regăsească la rubrica patient din tabelul patients . După ce
introducem num ărul putem ap ăsa asupra plusului din fa ța numărului de pacient, declan șăm apariția unui mic tabel, cu datele
corespunz ătoare din tabelul patients (figura 46). Putem completa acum patient_origin , cunoscând și celelalte date . La apariția
tabelului explicativ, plusul devine minus (figura 47). Ac ționarea asupra minusului (click) duce la transformarea lui in plus și la
dispariția tabelului explicativ.
19
Figura 47. Aducerea pe ecran a datelor corepunz ătoare din tabelul patients
În figurile 48, 49, ni se arata ce se întâmpl ă dacă se introduc date pentru un num ăr de pacient inexistent (7). Mesajul
de eroare apare atât la trecerea pe rând nou cât și la incercarea de închidere a tabelului.
Figura 48. P acientul 7 nu exist ă în tabelul patients , trecerea pe rândul urm ător genereaz ă mesajul de eroare
Figura 49. Mesaj de eroare datorat încerc ării de memorare a unui pacient inexistent .
Pentru a a putea continua ap ăsăm succesiv pe tastatura Esc până dispare mesajul de eroare.
Continu ăm cu introducerea valorilor temperaturilor m ăsurate. Acestea sunt memorate în tabelul temperatures , însă
pentru a lucra mai u șor vom deschide tabelul patients (fig. 50) și vom acționa cu mouse-ul asupra plusului din fa ța numelui
20pacientului c ăruia îi memor ăm temperatura. Plusul devine minus și un tabel în care s ă introducem datele se desf ășoară (fig.
51). Închiderea acestui tabel poate fi f ăcută acționând asupra minusului.
Figura 50. Pentru a introduce mai u șor temperaturile deschidem tabelul patients.
Figura 51. Introducerea temperaturilor m ăsurate pentru pacientul 1
Figura 52. Aspectul tabelului temperatures
21
Temperaturile pot fi introduse și direct în tabelul temperatures , cu precizarea c ă trebuie indicat num ărul pacientului
(fig. 52).
Sortarea informa ției dintr-un tabel
Pentru a sorta liniile dintr-un tabel select ăm coloana dup ă care dorim ordonarea (ca exemplu în figura 53 a fost aleas ă
coloana name_p ) din tabelul patients . Selectarea s-a f ăcut prin ac ționare cu mouse-ul pe titlul name_p . Apariția listei de
comenzi este efectul ap ăsării asupra butonului triunghi cu varful în jos din dreapta numelui coloanei.
Figura 53. Selectarea coloanei name_p și lansare unei comenzi de sortare
Figura 54. Efectul sort ării descendente dup ă nume
22 Filtrarea informa ției dintr-un tabel
Prin opera ția de filtrare se vor putea re ține spre vizualizare doar acele informa ții ce respect ă un criteriu. Comanda se
lansează din meniul Home . Se selecteaz ă coloana asupra c ăreia se dore ște filtrarea și apasă Filter (fig. 55).
Figura 55. Lansarea comenzii de filtrare.
Pentru indicarea criteriului de filtrare, din lista ap ărută (se poate ac ționa și butonul din dreapta numelui coloanei), se
lasă bifată doar opțiunea dorit ă (în cazul nostru F). Aplicarea filtrului se face dând comanda OK din meniu (fig. 55). În figura
56 este ilustrat rezultatul filtr ării.
Figura 56. Efectul filtr ării și comanda de anulare a efectului filtr ării
Lista anterioar ă poate fi folosit ă și pentru filtr ări numerice ( Number Filters ). Operația este aleas ă din lista ce apare
automat atunci când s ăgeata mouse-ului ajunge peste Number Filters (fig 57) . In fi gura 57, urmat ă de 58 este exemplificat ă o
filtrare asupra coloanei weight(kg) , pentru g ăsirea greut ăților mai mari decât 50.
23
Figura 57. Aplicarea filtrului construit
Figura 58. Indicarea valorii numerice și obținerea rezultatului filtr ării.
Figura 59. Efectul filtr ării poate fi aplicat cumulativ, succesiv filtr ăm rezultatul. Spre exemplu la rezultatul din fig. 52 am
selectat bărbații
24. Trebuie remarcat faptul c ă structura filtrului nu poate fi memorat ă și trebuie construit ă la fiecare utilizare.
Interogări asupra informa țiilor dintr-unul sau mai multe tabele
Interogările sunt structuri cu care putem filtra informa ția din unul sau mai multe tabele și pe care putem s ă le
memorăm pe disc.
Generarea structurilor de interogare se face alegând op țiunea Create, butonul Query Design (fig. 60).
Figura 60. Construirea unei structuri de interogare în modul de lucru Query Design .
Efectul ac ționării butonului Query Design este apari ția ferestrei Show Table pe fundalul tabelului în care vom
construi structura de interogare (fig. 61).
Figura 61. Fereastra Show Table
Fereastra Show table este utilizat ă pentru aducerea tabelelor peste care vom face interogarea, dup ă care este închis ă.
Primul exemplu prezentat este listarea numelor pacien ților bărbați cu greutate mai mare de 50 kg.
25
Figura 62. Aducerea în structur ă a tabelului patients asupra căruia vom face interogarea .
Figura 63. Tabelul patients pregătit pentru interogare .
Figura 64. Structura interog ării pentru aflarea pacien ților bărbați cu greutate mai mare de 50 kg.
26 În tabelul cu structura interog ării sunt indicate atât câmpurile ce vor impune condi țiile cât și câmpurile ce vor fi
afișate. Atenție, nu apar implicit toate câmpurile componente ale tabelelor!. Figura 64 ne indic ă modul în care sunt indicate
campurile dorite s ă participe la interogare. Pe linia Field se alege numele câmpului, pe linia Table numele tabelului, pe linia
Show dacă să apară informația, pe linia Criteria condiția ce trebuie respectat ă. Numele cîmpurilor de pe linia Field pot fi
tastate, trase cu mouse-ul din tabelul patients sau alese din lista ce apare la click în rubric ă.
Pentru memorarea pe disc a structurii interogarii se închide obiectul Query1 . (fig. 65sus), și se răspunde cu Yes la
întrebarea din figura 65jos.
Figura 65 . După închiderea interog ării apăsarea Yes declanșează memorarea structurii pe disc .
Figura 66. Stabilirea numelui structurii interog ării (M>50kg ).
27
Figura 67 Lista pacien ților bărbați cu greutate mai mare de 50 kg .
Figura 67 ne ofer ă rezultatul interog ării.Obținem aceast ă listă acționând M>50kg cu dublu click.
Al doilea exemplu este de interogare peste mai multe tabele, vom afla numele pacien ților bărbați cu temperatura mai
mare de 38 de grade. Tabelele utilizate în interogare sunt patients și temperatures . Structura este ilustrat ă în figurile 68, 69, 70.
Figura 68. Structura ce ne ofer ă momentele în care unii b ărbați depășesc temperatura de 38 de grade
Figura 69. Stabilirea numelui structurii ( temp>87M ).
28
Figura 70. Rezultatul interog ării
Formulare
Formularele ( Forms ) sunt instrumente foarte utile în prezentarea sau actualizarea informa țiilor din tabele. Marele
avantaj al acestui instrument il constituie prezentarea informa țiilor înregistrare cu înregistra re. Generarea unui formular îl
putem face selectând Create și apoi Form Design (fig. 71).
Figura 71. Generarea unui formular nou,
Pentru a construi structura unui formular avem nevoie de structura din figura 72 (ce se genereaz ă conform figurii 71)
precum și de lista câmpurilor tabelului pe care dorim s ă-l actualiz ăm sau vizualiz ăm. După ce aducem (conform figurii 73) în
Field List numele tabelelor disponibile, putem ac ționa cu mouse-ul asupra plusului din fa ța numelui tabelului dorit, ceea ce
duce la desf ășurarea listei câmpurilor dorite (fig. 73,74).
29
Figura 72. Platforma pentru construirea structurii formularului
Figura 73. Aducerea numelor tabelelor disponibile în zona Field list
S ă construim un formular, cu care s ă actualizăm informa ția din tabelul patients . Pentru construirea structurii avem
nevoie de platforma Forms (fig. 72) și de Field list, cu câmpurile tabelului patients desfășurate (fig. 73,74).
Figura 74. Aducerea in zona formularului a campului name_p
Cu ajutorul mouse-ului sunt trase din fereastra Field List în zona Detail , câmpurile dorite (fig. 74, 75). Deoarece în
stânga fiec ărui câmp apare automat o etichet ă cu numele câmpului vom avea grije s ă lasăm la opera ția de tragere, suficient loc.
Componen ța în câmpuri a unui formular este la alegerea noastr ă, nu e obligatoriu s ă tragem toate câmpurile. Finalizarea
30construirii formularului o facem închizând obiectul Form1 și răspunzând Yes (fig. 76). Stabilim numele formularului acc_pat
conform figurii 77.
Figura 75. Tragerea în formular a tuturor câmpurilor dorite.
Figura 76. Inchiderea structurii formularului și cecrerea memor ării pe disc (ap ăsarea butonului Yes)
Figura 77. Stabilirea numelui acc_pat pentru formular
31 În figura 78 este prezentat formularul construit. Lansarea lui se realizeaz ă cu dublu click peste acc_pat (zona Forms ,
dreapta). Parcurgerea întregului tabel (linie cu linie) se face cu ajutorul butoanelor de la baza formularului. Aten ție, fiecare
informație poate fi modificat ă, modificările fiind memorate pe disc!. Dac ă dorim să adăugăm o inregistrare nou ă, se poate
acționa butonul cu stelu ță și pe ecran va fi adus un formular cu rubrici goale (fig. 79).
Figura 78. Aspectul formularului construit, acc_pat
Figura 79. Introducerea datelor unui nou pacient.
Rapoarte
Raportul este instrumentul prin care pot fi tip ărite liste precum și statistici asupra datelor din tabele. Generarea unui
raport o începem alegând op țiunea Create și apoi apăsând butonul Report Design (fig. 80). Ca și la formulare avem și în acest
caz nevoie de Field List (modalitatea de aducere pe ecran este cunoscut ă deja, fig. 73,74).
S ă construim un raport ce s ă conțină numele, saxul și greutățile pacien ților din tabela patients . Deasemenea în cadrul
raportului vom calcula și greutatea medie.
Un raport se compune din cinci zone, implicit fiind afi șate doar trei. Pentru a avea pe ecran toate zonele se apeleaz ă la
meniul flotant (click dreapta pe mouse), în care apar și comenzile Page Header/Footer și Report Header/Footer . Bifăm și
comanda Report Header/Footer (fig. 81,82).
32
Figura 80. Lansarea comenzii de generare a nunui nou raport.
Figura 81. Aducerea celor cinci zone ale unui raport.
Figura 82. Structură pregătită pentru construirea raportului.
Cele cinci zone ale raportului sunt:
-Report Header – zonă în care se poate scrie titlul raportului
-Page Header – zonă în care se poate scrie un antet de pagin ă, informație ce se repet ă la începutul
tuturor paginilor raportului. Zon ă în care se poate pagina raportul.
-Detail – zonă în care se indic ă informația a căror câmpuri s ă fie prezent ă în raport.
33-Page Footer – zonă în care se poate scrie un subsol de pagin ă, informația scrisă se repetă la sfârșitul
tuturor paginilor raportului. Este zon ă în care se poate pagina raportul.
-Report Footer – zonă în care se poate scrie un sfâr șit de raport. Singura zon ă în care pot fi efectuate
calcule statistice asupra datelor din raport.
Fiecare din cele 5 zone poate fi modificat ă ca dimensiune. Pentru aceasta se duce s ăgeata mouse-ului s ă înțepe
frontiera de jos sau din dreapta (dup ă necesitate), se apas ă prelung butonul din stânga (de pe mouse) și se mută mouse-ul pe
masă, până când dimensiunea este cea dorit ă. În acel moment eliber ăm butonul mouse-ului. Este bine ca suprafa ța celor 5 zone
să fie redusă la maxim pentru a economisi hârtia la tip ărire.
Pentru a scrie o informa ție într-un raport (un titlu, o nume de rubric ă, o explica ție…) este necesar s ă creem un
dreptunghi etichet ă (label ). Pentru aceasta ap ăsăm butonul Aa (opțiunea Design ), apoi ducem cursorul mouse-ului pe suprafa ța
raportului, în zona dorit ă, apăsăm prelung butonul din stânga și trasăm un dreptunghi. La ridicarea degetului de pe mouse,
apare un cursor de scriere, tast ăm textul dorit și încheiem editarea ap ăsând tasta enter (fig. 83). Aten ție, dacă nu tastăm nimic,
dreptunghiul etichet ă se pierde.
Figura 83. Introducerea cu ajutorul etichetelor, a titlului și a numelor coloanelor din list ă.
În zona Detail trebuiesc indicate câmpurile a c ăror informa ție dorim s ă o prezent ăm în raport. Pentru aceasta cel mai
simplu este s ă procedăm ca și la formulare (fig. 84).
Figura 84. Tragerea din Field List a câmpului name_p .
34Se trage cu mouse-ul din Field list , câmpul dorit, în locul dorit în zona Detail , suficient de departe de marginea din
stânga. În urma acestei ac țiuni apar 2 dreptunghiuri, pereche, unul în stânga cu inscrip ția text în interior, și unul în dreapta, cu
numele câmpului din Field list , în interior. Dreptunghiul din stânga func ționează ca o etichet ă, în care putem scrie dup ă dorință
orice. Pentru ob ținerea unui cursor de scriere este necesar s ă ducem cursorul mouse-ului peste etichet ă și să apasăm succesiv
de două ori butonul din stânga. Se utilizeaz ă în continuare tastatura pentru a indica textul dorit, finalizând opera ția prin
apăsarea tastei enter. Dac ă dorim să ștergem dreptunghiul etichet ă îl selectăm (un singur click pe mouse) și apăsăm tasta
Delete . Dreptunghiului din dreapta, cu numele câmpului nu i se aduc modific ări în interior. Urmeaz ă poziționarea cu mouse-ul
a dreptunghiurilor, prin ag ățare de col țul din stânga sus și tragere (figurile 85,86,97).
Figura 85. Selectarea etichetei name_p în vederea ștergerii cu tasta Delete .
Figura 86. Mutarea câmpului name_p
Figura 87. Poziționarea câmpurilor: name_p, sex, weight(kg) în zona Detail și micșorarea zonei
35
Figura 88. Paginarea raportului
Pentru a efectua calcule statistice în zona Report Footer este necesar s ă apăsăm cu mouse-ul butonul ab (opțiunea
Design ), apoi să trasăm un dreptunghi, cu acest instrument, în zona Report Footer . Atenție lăsați suficient loc în stânga,
deoarece dreptunghiul trasat este înso țit în stânga de un dreptunghi etichet ă pereche. In interiorul dreptunghiului de calcul
apare scris Unbound . Textul etichetei poate fi modificat dup ă dorință. Pentru ob ținerea unui cursor de scriere este necesar s ă
ducem cursorul mouse-ului peste etichet ă și să apasăm succesiv, de dou ă ori, butonul din stânga. Se utilizeaz ă în continuare
tastatura pentru a indica textul dorit, finalizând opera ția prin ap ăsarea tastei enter. Pentru ștergerea etichetei se selecteaz ă (un
singur click cu mouse-ului) și apoi se apas ă tasta delete. Pentru a genera o formul ă de calcul în dreptunghiul Unbound
respectăm regulile:
-editarea începe cu semnul = , -operanzii câmpuri se încadreaz ă între paranteze drepte,
-pentru respectarea ordinii opera țiilor se folosesc parantezele,
-semnele folosite sunt: pentru adunare este +, pentru sc ădere este -, pentru înmul țire este *, pentru împ ărțire este /,
-pot fi folosite func ții predefinite.
Exemple de func
ții predefinite:
AVG([ nume câmp ]) pentru media valorilor din câmpul citat,
SUM([ nume câmp ]) pentru sum ă valorilor din câmpul citat,
MIN([ nume câmp ]) pentru minimul valorilor din câmpul citat,
MAX([ nume câmp ]) pentru maximul valorilor din câmpul citat,
COUNT([ nume câmp ]) pentru num ărul valorilor din câmpul citat.
Figura 89. Introducerea unei formule de calcul
36
Figura 90. Calcularea mediei pentru greutate
Figura 91 . Incheierea construirii structurii raportului, confirmarea memor ării și indicarea numelui raportului
37
Figura 92. Afișarea raportului
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: 1BAZE DE DATE – MICROSOFT ACCESS 2010 Ce este o baz ă de date Intr-o defini ție, pe înțelesul tuturor, vom în țelege printr-o bază de date o colecție… [627801] (ID: 627801)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
