Sunteți pe pagina 1din 56

Toate specializrile

BAZE DE DATE SI
PROGRAME
ANUL II Semestrul 3

Cluj-Napoca 2014

INFORMAII GENERALE
I.1. Date de identificare ale cursului
I.1.1. Date de identificare despre titularul de curs i tutori
Numele cursului: Baze de date i Programe
Codul cursului: ELR0016
Anul, Semestrul: Anul II, Semestrul 3
Tipul cursului: Obligatoriu
Titulari de curs i tutori:
Specializarea Contabilitate i Informatic de Gestiune
Conf.univ.dr. Petrusel Rzvan titular de curs i tutore
razvan.petrusel@econ.ubbcluj.ro
Lect. univ.dr. Bologa Cristian tutore
cristian.bologa@econ.ubbcluj.ro
Consultaii: conform orarului afiat la nceputul semestrului.

CUPRINS
I.

INFORMAII GENERALE
I.1. Date de identificare ale cursului
I.1.1. Date de identificare despre titularul de curs
I.1.2. Date de identificare curs i contact tutori
I.2. Condiionri i cunotine prerechizite
I.3. Descrierea cursului
I.4. Organizarea temelor din cadrul cursului
I.5. Materiale bibliografice obligatorii
I.6. Materiale i instrumente necesare pentru curs
I.7. Calendar al cursului
I.8. Politica de evaluare i notare
I.9. Elemente de deontologie academic
I.10. Studeni cu dizabiliti
I.11. Strategii de studiu recomandate

II.

SUPORTUL DE CURS PROPRIU-ZIS

MODULUL 1 BAZE DE DATE BAZE DE DATE RELAIONALE---------------8


UNITATEA 1. CONCEPTE GENERALE REFERITOARE LA BAZE DE DATE---------------------8
UNITATEA 2. MODELUL RELAIONAL--------------------------------------------------------------13

MODULUL 2 CREAREA I GESTIUNEA BAZELOR DE DATE I A


TABELELOR N ACCESS-------------------------------------------------------------18
Unitatea 1 Crearea i gestiunea bazelor de date n MS Access---------------------------18
Unitatea 2. Crearea i gestiunea tabelelor n MS ACCESS--------------------------------20

MODULUL 3 UTILIZAREA INTEROGRILOR N ACCESS---------------------29


MODULUL 4 UTILIZAREA FORMULARELOR N ACCESS---------------------39
MODULUL 5 RAPOARTE EXEMPLIFICATE CU ACCESS-----------------------48

I.2. Condiionri i cunotine prerechizite


Pentru participarea la acest curs studenii trebuie s participe la cursul de Informatic Economic
anul I, semestrul 1.

I.3. Descrierea cursului


Cursul urmrete crearea unor abiliti de utilizare a bazelor de date i de creare a unor aplicaii
economice specifice utilizrii acestora. Acest curs este important pentru orice economist avnd n
vedere ca bazele de date sunt utilizate extensiv i obligatoriu n domeniul economic din Romnia.
Cursul se mparte n 2 pri eseniale i anume:
Bazele teoretice
o
elemente referitoare la baze de date i aplicaii economice
o
probleme specifice gestiunii bazelor de date n Access 2013
o
probleme referitoare la utilizarea formelor, rapoartelor i proiectelor
Aplicaii practice pentru Access

I.4. Organizarea temelor din cadrul cursului


Cursul, conform normelor metodologice are 2 componente:
componenta teoretic;
componenta practic.
Parcurgerea componentei teoretice se realizeaz de ctre cursani. Elementele principale sunt
organizate pe 3 nivele:
elemente de teorie a bazelor de date;
elemente referitoare la utilizarea obiectelor sub Access;
elemente de programare vizual i obiectual a aplicaiilor economice.
Referitor la elementele de teorie cursanii pot apela, pentru problemele de baz, la suportul de curs
elaborat de membrii catedrei de Informatic Economic prezentat la bibliografie obligatorie.
Pentru bibliografie detaliat pot recurge la bibliografia din literatura de specialitate n limba
romn, accesibil la biblioteca Catedrei de Informatic Economic dar i la majoritatea
bibliotecilor din ar, iar pentru cea n limba englez la biblioteca Catedrei de Informatic
Economic. Informaii suplimentare se pot obine i din site-urile amintite n material.
Pentru partea practic, n cadrul suportului de curs sunt date exemple. De asemenea, cursanii pot
participa la pregtiri periodice unde se discut aspectele referitoare la elementele practice, dar i
probleme de teorie cu un grad mai ridicat de dificultate.

I.5. Materiale bibliografice obligatorii


1.
2.

Suportul de curs electronic afiat pe portalul www.bis.econ.ubbcluj.ro/moodle


[Sitar_2010], Sitar- Taut D., Elemente de baze de date pentru economiti, Ed.
Risoprint, Cluj-Napoca, 2010
3.
Colectiv departament Informatic Economic, Baze de date. Aplicaii economice.
Culegere de probleme, Ed. Risoprint, Cluj-Napoca, 2013
4.
Mocean, L., Programarea aplicaiilor Office

I.6. Materiale i instrumente necesare pentru curs


Pentru curs este necesar conectarea cursanilor la Internet i participarea la leciile de sintez. n
privina soft-urilor, n general cursul este proiectat pe soft-uri uzual folosite n economia
romneasc i care pot fi utilizate i n slile de exerciiu ale FSEGA. n acest sens:
Pentru Access exist Microsoft Office 2013.
Toate produsele sunt nsoite de teste, tutoriale, etc.

I.7. Calendar al cursului


Activiti

Tematica abordat

ntlnire
I:
Activiti didactice

Responsabilitile
studenilor
Parcurgerea bibliografiei.
Rezolvarea
de
teme
practice.

Locul de
desfurare
Conform
orarului afiat
pe
site-ul
FSEGA

practice.

pe
FSEGA
Conform
orarului
pe
FSEGA
Conform
orarului
pe
FSEGA
Conform
orarului
pe
FSEGA

Modulul 1 Baze de date


Baze de date relaionale
Modulul 2 Crearea i
gestiunea bazelor de date n
Access
Crearea i gestiunea tabelelor
n Access
ntlnire
II: Modulul
3
Utilizarea Parcurgerea bibliografiei. Conform
Activiti didactice
Rezolvarea de
teme orarului afiat
interogrilor n Access
ntlnire
III:
Activiti didactice

Modulul 4 Formulare n
Access

Parcurgerea
Rezolvarea
practice.

bibliografiei.
de
teme

ntlnire
IV:
Activiti didactice

Modulul 5 - Rapoarte n
Access

Parcurgerea
Rezolvarea
practice.

bibliografiei.
de
teme

Examen final

Prezentarea temelor de
control.
Susinerea probei practice
ntr-un interval dat de timp
i susinerea unui test grila
(cu un singur rspuns
corect)

site-ul
afiat
site-ul
afiat
site-ul
afiat
site-ul

Calendarul activitilor este unul orientativ, fiind susceptibil unor modificri ulterioare, acestea
urmnd s fie comunicate studenilor.

I.8. Politica de evaluare i notare


Modul de evaluare a cursului:
40% din not reprezint rspunsurile la problemele teoretice (test gril, nota minim de
trecere 5);
40% din not reprezint partea practic final (bilet de examen cu ntrebri ce trebuie
realizate ntr-un timp dat - o jumtate de or, nota minim de trecere 5);

20% prezentarea temelor de control la o data fixat de tutori i comunicat studenilor la a


doua ntlnire (evideniat i pe portalul departamentului de Informatic economic bis.econ.ubbcluj.ro/moodle al disciplinei).

I.9. Elemente de deontologie academic


Se aplic regulile generale de deontologie academic din Universitatea Babe Bolyai Cluj-Napoca.

I.10. Studeni cu dizabiliti


n principiu pentru cursanii cu dizabiliti care nu se pot deplasa la sediul facultii se aplic
urmtoarele soluii:
utilizarea Internet-ului i a portalului, dup aceleai reguli ca la ceilali cursani;
utilizarea, la nevoie, a unui sistem webcam i Skype n cazul evalurilor.

I.11. Strategii de studiu recomandate


n principiu, n medie, pentru nelegerea coninutului unui modul sunt necesare minim 3 ore.
Prezentul curs fiind unul fundamental pentru orice economist este necesar ca el s fie studiat cu
mare atenie i deci numrul de ore de studiu ar putea fi, n funcie de particularitile cursanilor,
mai mare sau mai mic.
Pentru realizarea temelor de control timpul afectat ar putea fi substanial mai mare.

II. SUPORTUL DE CURS PROPRIU-ZIS


MODULUL 1 BAZE DE DATE BAZE DE DATE RELAIONALE
CONCEPTE DE
BAZ:

OBIECTIVE:

RECOMANDRI
PRIVIND
STUDIUL:
REZULTATE
ATEPTATE:

Fiier, Baz de date


Sistem de gestiune a bazelor de date (SGBD), dicionar de
date
Model entitate-relaie, atribut, constrngere
Model intern, extern i conceptual i tipurile de independen
Relaie i tabel.
Crearea unei perspective clare asupra bazelor de date.
Familiarizarea cu elementele legate de baze de date i
modelele bazelor de date.
Crearea unor deprinderi referitoare la proiectarea bazelor de
date.
Pentru parcurgerea prezentului material se recomand
parcurgerea atent a bibliografiei, precum i studierea atent a
materialului aferent n cadrul Activitilor Asistate (AA).
Clarificarea noiunilor legate de baze de date i modele de
date.
Clarificarea noiunilor legate de proiectarea i normalizarea
bazelor de date.

UNITATEA 1. CONCEPTE GENERALE REFERITOARE LA BAZE


DE DATE
OBIECTIVE

NOIUNI CHEIE

Clarificarea noiunilor referitoare la conceptele generale legate de


baze de date i nivelele de organizare ale acestora.
Clarificarea elementelor referitoare la modelele de date i tipurile de
independen.
Fiiere, baze de date, arhitectura unei baze de date, nivele de
organizare, entitate, relaie, atribut, nivel conceptual, intern sau
extern.

Conceptul de "Baz de date"


La baza prelucrrii datelor stau fiierele. Odat cu dezvoltarea informaticii, numrul acestora a
crescut, ajungndu-se ca ntr-o firm s existe mai multe zeci sau sute de fiiere permanente i
temporare legate de gestiunea personalului, materialelor, produciei, vnzrilor etc. Aceast
cretere a avut o serie de dezavantaje, dintre care amintim [Nichi90]:
redundana este proprietatea unei informaii de a se repeta nejustificat; de exemplu
codul materialelor, care poate ajunge la 20-30 de cifre, se repet n majoritatea acestor
fiiere, mrind nejustificat spaiul fizic ocupat;

inconsistena este legat de apariia distorsionat a unor informaii n diferite contexte;


una dintre cauzele inconsistenei este redundana deoarece este suficient ca la o apariie
(copie) a informaiei redundante, aceasta s fie introdus greit i informaia poate deveni
inconsistent;
validarea datelor este clar c diferite aplicaii care gestioneaz fiiere disparate pot
valida datele diferit; nevalidarea uniform a datelor poate duce la compromiterea ntregului
sistem de fiiere;
disponibilitatea i securitatea datelor reprezint o problem de asemenea foarte
spinoas. Datele aflndu-se n fiiere disparate, acestea pot fi reinute de proprietari nefiind
disponibile i comunitii utilizatorilor. De asemenea, neexistnd un control centralizat
asupra lor nu se poate asigura securitatea acestora.
O prim definiie a bazelor de date este [Nichi&Racovian96]: baza de date este un sistem
integrat, coerent i partajat de fiiere.
Pentru a asigura folosirea n comun a acelorai date de ctre mai muli utilizatori era necesar
asigurarea independenei aplicaiilor fa de structura logic a datelor.
Din acest motiv, era necesar desprinderea din cadrul programelor de aplicaie a descrierii
structurii datelor. Acest lucru a fost posibil prin definirea unui fiier de descriere global a bazei
de date, denumit dicionar de date.
Bazele de date au aprut n anii 60, odat cu lansarea programului Apollo, n 1964, pornind de la
ceea ce formau sistemele de fiiere nlnuite, introduse de IBM pentru gestionarea lansrii i
urmririi produciei. Astfel au aprut aa zisele baze de date arborescente sau de generaia 1-a.
Conceptul de baz de date, sub aceast denumire, a aprut pentru prima dat n anul 1969, an n
care CODASYL a publicat, n cadrul unei conferine dedicate limbajelor de gestiune a datelor, un
raport tehnic despre acest concept. Fa de modelul bazat pe fiiere clasice (file-based), noul
model de organizare a datelor n baze de date include un fiier de descriere global a bazei de date
(dicionar de date) care s poat asigura independena programelor fa de structura datelor.
Pornind de la aceste considerente, se pot da i alte definiii bazelor de date, cum ar fi [Fotache01]:
O baz de date reprezint o colecie de date, organizate ntr-o structur descris printr-un model
conceptual sau colecie de date aflate n interdependen, mpreun cu descrierea datelor i a
relaiilor dintre ele.
Totalitatea informaiilor stocate n baza de date la un moment dat reprezint coninutul bazei de
date. Coninutul are un caracter volatil, n sensul c se modific permanent n funcie de volumul
i complexitatea proceselor i fenomenelor economice la care se refer. Structura datelor
mpreun cu legturile dintre entiti i restriciile de integritate formeaz schema bazei de date,
care, de obicei, rmne constant pe durata utilizrii bazei de date.
Gestionarea datelor dintr-o baz de date este asigurat de un sistem de gestiune a bazelor de date
sau SGBD (n limba englez DBMS - Data Base Management System).
Un SGBD reprezint un ansamblu de programe pentru gestiunea datelor sau un mediu de
programare destinat gestiunii datelor din baza de date. Prin urmare, el este cel care asigur
ncrcarea bazei de date, actualizarea i interogarea acesteia, ct i interfaa cu sistemul de operare
n vederea simplificrii accesului la date.
n general SGBD-urile au implementate limbaje gazd, care conin att instruciuni specifice
exploatrii datelor din bazele de date, ct i unele instruciuni din limbajele de programare clasice.

Un SGBD include, n general, o serie de componente [Date2000] grupate n jurul dicionarului de


date, dintre care amintim:

sistemul de gestiune a fiierelor i suporturilor la nivel fizic;

sistemul de gestiune a fiierelor la nivel logic;

limbajul de manipulare a datelor (LMD) i translatorul aferent;

limbajul de descriere a datelor (LDD) i translatorul aferent;

limbajul de consultare sau interogare (Query Language) i procesorul aferent, care


traduce instruciunile limbajului de consultare n instruciuni inteligibile pentru sistemul de
gestiune la nivel logic;

componente de interfa cu programele de aplicaii;

componente de serviciu, legate de jurnalizri, securitate etc.


Trebuie s specificm, ns, c n majoritatea SGBD-urilor, cum este i cazul xBase sau Visual
FoxPro, mai multe componente, cum ar fi de exemplu cele trei limbaje i translatoarele lor, sunt
integrate, formnd o singur component.
Principalele funcii ale unui SGBD sunt urmtoarele:

Funcia de descriere date

Funcia de manipulare date

Funcia de utilizare
Arhitectura unei baze de date
Asigurarea independenei logice i fizice a datelor impune adoptarea unei arhitecturi a bazei de
date pe trei nivele astfel:
1.
nivelul intern
2.
nivelul conceptual
3.
nivelul extern
Nivelul intern (baza de date fizic), definete baza de date ca fiind o colecie de fiiere,
coninnd datele din cadrul bazei de date, la care se adaug i alte structuri auxiliare de
date i un set de programe, care interacioneaz cu sistemul de operare pentru
mbuntirea managementului bazei de date. La acest nivel structura bazei de date se
concretizeaz n schema intern. Aici apare independena fa de cile de acces, adic
utilizatorul nu trebuie s fie preocupat de organizarea i modul de acces la date la nivel
fizic.
Nivelul conceptual, este nivelul imediat superior celui fizic, datele fiind privite prin prisma
semanticii lor, respectiv a coninutului i relaiilor cu alte date. Acesta este i primul nivel
de abstractizare a lumii reale, avnd ca obiectiv principal modelarea realitii existente prin
definirea i descrierea unitilor logice cu care se lucreaz i a legturilor dintre acestea.
Aceast schem este descris n general de administratorul bazei de date, el fiind singurul
care cunoate i manipuleaz schema conceptual a bazei de date, degrevnd utilizatorii
de cunoaterea ntregii structuri a bazei de date.
Nivelul conceptual se definete cu ajutorul schemei entitate-relaie (E-R)[Gardarin86] sau obiectentitate-relaie (OLE) [Miranda&Busta86].

Prin entiti se neleg concepte cu care opereaz utilizatorii i prin care acetia i modeleaz
aplicaiile, cum ar fi: PRODUSE, BENEFICIARI, FACTURI (n cazul unei firme productive) sau
PROFESORI, STUDENTI, SALI, MATERII (n cadrul unei faculti).
Fiecare entitate poate avea una sau mai multe atribute. De exemplu, un STUDENT are
MATRICOLA, NUME, DATA-NATERII, etc.
Constrngerile reprezint proprieti ale datelor i se refer la restricii privind valorile pe care le
pot lua aceste date sau la restricii privind legturile dintre diferite entiti.
n cadrul oricrei operaii de actualizare a datelor din baza de date sau de ncrcare a acesteia cu
date, se verific aceste constrngeri, pentru a asigura integritatea bazei de date.
Ca urmare, orice modificare n structura de memorare a datelor sau schimbarea suportului
magnetic, va afecta doar interfaa dintre nivelul conceptual i cel fizic fr a modifica nivelul
conceptual. Rezultatul imediat al independenei fizice a datelor l reprezint imunitatea
aplicaiilor fa de structura fizic de memorare a datelor. La acest nivel structura bazei de date se
concretizeaz n schema conceptual.
Nivelul extern este ultimul nivel de abstractizare la care se poate descrie o baz de date.
Nivelul extern conine, deci, o parte din unitile logice descrise la nivel conceptual, dar poate
include i uniti logice care nu apar la nivel conceptual i care nu au corespondent direct n baza
de date fizic, obinute de exemplu prin calcule. Ca urmare, nivelul extern este derivat din nivelul
conceptual i reprezint ceea ce vede utilizatorul din baza de date. Fiecrui utilizator i va
corespunde un model extern propriu, n funcie de cerinele informaionale ale acestuia.
Unitile logice folosite la nivel extern se numesc numite uniti logice virtuale, imagini sau
vederi i formeaz o baz de date virtual.
Aceste vederi se pot obine n unul din urmtoarele moduri:
1.
prin modificarea unor uniti logice reale;
2.
prin combinarea a dou sau mai multe uniti logice reale.
Vederile asigur, printre altele, urmtoarele funcii n cadrul unei baze de date:
1. securitatea bazei de date
2. definirea modului de acces la date;
3. ofer utilizatorului o viziune simplificat i personalizat asupra bazei de date.
Prin nivelul extern se realizeaz independena logic a datelor din baza de date.
Interfaa dintre utilizator i SGBD se poate realiza n mai multe moduri, dintre care amintim :
printr-un mecanism de apel (cuvnt cheie urmat eventual de parametrii) inserat n
programele scrise ntr-un limbaj tradiional (C, COBOL, etc.), numit limbaj gazd;
prin comenzi speciale utilizate autonom (specifice SGBD-urilor, n afara limbajelor
tradiionale), n cazul SGBD-urilor autonome.
Modele de organizare a datelor
Analiza, proiectarea i implementarea structurii bazei de date se realizeaz utiliznd un anumit
model de date.
Un asemenea model reprezint un ansamblu de instrumente conceptuale, care permit descrierea
datelor, a relaiilor dintre ele, a semanticii lor, ct i a restriciilor la care sunt supuse aceste
date [Fotache02, Popescu02]. Un model de date reprezint, deci, un instrument teoretic care ne
ajut s identificm semnificaia sau coninutul unei colecii de date (structura de organizare a

10

acestora) ct i modul de utilizare a acestora, prin intermediul operaiilor permise asupra datelor
respective.
Modelul de organizare a datelor este deci o reprezentare a obiectelor lumii reale i a evenimentelor
asociate lor, avnd rolul de a pune la dispoziia utilizatorilor conceptele de baz i notaiile, care
s le permit acestora s comunice clar i rapid informaiile despre datele firmei [Selinger98].
Ca urmare, un model de date include urmtoarele componente [Selinger98]:
1.
un set de reguli de structurare a datelor prin limbajul de descriere date (LDD).
2.
un set de reguli de manipulare a datelor prin limbajul de manipulare date (LMD).
Modelele utilizate de bazele de date se pot grupa n trei categorii [Fotache98]: modele bazate pe
obiect, modele bazate pe nregistrare i modele fizice.
Modelele bazate pe obiect permit descrierea datelor la nivel conceptual i extern. Din aceast
categorie fac parte:
a)
modelele entitate-asociaii (E-A), entitate-relaie (E-R) sau obiect-entitate-relaie
(OLE)
b)
modelul semantic
c)
modelul funcional
d)
modelul orientat pe obiecte.
Din categoria modelelor orientate pe nregistrri fac parte:
a)
modelul ierarhic
b)
modelul reea
c)
modelul relaional.
Entiti i tipuri de entiti
O entitate este o realitate obiectiv care exist prin ea nsi. Orice entitate, aa dup cum s-a mai
artat, se caracterizeaz prin anumite proprieti, care n cadrul modelului de date sunt
reprezentate prin atribute. Entitile la rndul lor sunt reprezentate prin tipuri de entiti. Mulimea
entitilor descrise prin tipul de entitate dat reprezint extensiunea tipului de entitate respectiv,
atributele unei instane ale entitii fiind proprietile particulare sau extensionale ale acesteia.
REZUMAT

O prim definiie a bazelor de date este [Nichi&Racovian96]: baza


de date este un sistem integrat, coerent i partajat de fiiere.
O baz de date reprezint o colecie de date, organizate ntr-o
structur descris printr-un model conceptual sau colecie de date
aflate n interdependen, mpreun cu descrierea datelor i a
relaiilor dintre ele.
Un SGBD reprezint un ansamblu de programe pentru gestiunea
datelor sau un mediu de programare destinat gestiunii datelor din
baza de date.
Principalele funcii ale unui SGBD sunt urmtoarele:
Funcia de descriere date
Funcia de manipulare date
Funcia de utilizare
Asigurarea independenei logice i fizice a datelor impune adoptarea
unei arhitecturi a bazei de date pe trei nivele astfel:

11

1.
2.
3.

nivelul intern
nivelul conceptual
nivelul extern
Din categoria modelelor orientate pe nregistrri fac parte:
d)
modelul ierarhic
e)
modelul reea
f)
modelul relaional.
Teste de
1. Care sunt dezavantajele utilizrii fiierelor
autoevaluare
2. Care este definiia bazei de date
Bibliografie
[Sitar_2010]

UNITATEA 2. MODELUL RELAIONAL


OBIECTIVE

Clarificarea noiunilor referitoare la conceptele generale legate


de relaie, atribut, domeniu.
Clarificarea elementelor referitoare la chei i legturi ntre
tabele.

NOIUNI CHEIE

Atribut, tabel, domeniu, relaie, cheie candidat, cheie primar,


cheie strin, cele trei forme normale de baz

Modelul de date relaional


Primul model de date relaional, aa dup cum s-a amintit, a fost propus de ctre cercettorul
american E.F. Codd de la laboratorul din Palo Alto, al IBM. Principiile matematice care stau la
baza acestui model pornesc de la teoria matematic a relaiilor, extins la cerinele de gestiune a
datelor.
O baz de date relaional este definit ca fiind un ansamblu de tabele sau relaii ntre care
exist anumite legturi, fiecare tabel fiind alctuit din coloane, denumite atribute i linii,
denumite tuple.
Definirea entitilor i structurii acestora
Conceptele cu care se opereaz n cadrul modelului relaional n vederea definirii entitilor i
structurii acestora sunt urmtoarele:
1.
linia sau tuplul
2.
atributul sau caracteristica
3.
domeniul
4.
nregistrarea logic
5.
cardinalitatea relaiei
6.
rangul relaiei
7.
cheia relaiei

12

Pentru exemplificarea conceptelor anterior prezentate se consider relaia sau tabelul FACULTI
avnd urmtoarea structur:
Atribut
FACULTI
Cod facultate
STE
FIL
BIO
MED
linie
(tuplu)

Denumire facultate
T. ECONOMICE
FILOLOGIE
BIOLOGIE
MEDICIN
domeniu

Adres
MIHALI FN
HOREA 5
HAJDEU 10
E. ISAC 20
nregistrare logic
(antet relaie)

Putem considera c un atribut reprezint o utilizare sub un anumit nume a unui domeniu. Din
acelai domeniu pot deriva mai multe atribute, fiecare cu nume diferite la nivelul unui tabel.
Astfel, dac considerm domeniul numerelor ntregi sau reale, din acest domeniu pot deriva
atribute cum ar fi: SALAR, IMPOZIT, VALOARE, PRET, CANTITATE etc.
Legturi ntre relaii
Definirea cheilor unei relaii
Dac ntr-o relaie exist mai multe atribute sau combinaii de atribute care permit identificarea
unic a tuplelor, acestea sunt denumite chei candidat. O astfel de cheie reprezint un atribut sau o
mulime de atribute (K) cu urmtoarele proprieti [Gardarin86] :
1.
identificare unic;
2.
ireductibilitate;
3.
valorile atributului.
O entitate poate conine mai multe chei candidat, dar numai una dintre ele se alege pentru a fi
folosit la identificarea tuplelor. Aceast cheie se numete cheie primar. O cheie candidat care nu
este desemnat ca i cheie primar se numete cheie alternativ.
Pe lng noiunile de cheie candidat i cheie primar, n cadrul modelului relaional se mai
folosete i noiunea de cheie strin. Ea se utilizeaz la stabilirea legturilor dintre dou tabele,
numite tabela principal sau printe i tabela secundar sau copil. Prin definiie, valoarea cheii
strine trebuie s se regseasc n mulimea cheilor primare ale tabelei principale. Ea reprezint
deci o referin ctre un tuplu din tabela printe care are aceeai valoare a cheii primare.
Tipuri de legturi ntre relaii
Una din componentele modelului relaional se refer la legturile dintre relaii sau tabele. O
legtur (relaie dinamic) se definete ca fiind o asociere ntre mai multe tipuri sau clase de
entiti. Cea mai frecvent legtur ntlnit n practic este cea dintre dou tipuri de entiti,
numit i legtur binar.
Legturile binare, aa cum s-a amintit, dup cardinalitatea lor (numrul entitilor din fiecare clas
de entiti care intr n cadrul legturii) se pot clasifica astfel:

13

1.

legturi de tip 1-1, prin care unei entiti din mulimea sau clasa M1 i corespunde o
singur entitate n mulimea sau clasa M2;
2.
legturi de tip 1-n, prin care unei entiti din mulimea M1 sau din tabelul M1 i
corespund mai multe entiti n mulimea sau tabelul M2, iar unei entiti din M2 i
corespunde o singur entitate n M1;
3.
legturi de tip m-n, prin care unei entiti din M1 i corespund mai multe entiti n
M2 i reciproc.
Definirea restriciilor pentru datele dintr-o baz de date
Pentru datele dintr-o baz de date pot fi definite mai multe tipuri de restricii, cum ar fi: restricia
de domeniu, de atomicitate, referenial i restricii utilizator. Dintre acestea, ne vom referi n
continuare la restricia referenial sau integritatea referenial, pe care se bazeaz stabilirea
legturilor dintre dou tabele.
Integritatea referenial, denumit n unele sisteme (ca de exemplu n SQL Server), integritate
referenial static deoarece se pstreaz n dicionarul de date, se definete ca fiind un ansamblu
de reguli impuse tabelelor ntre care s-au stabilit anumite legturi. Astfel, pentru a asigura
integritatea referenial trebuie ca atunci cnd se fac modificri ale valorii unui cmp de tip cheie
primar sau strin dintr-un tabel, s nu fie afectat relaia dintre cele dou tabele, adic s se
modifice automat valorile cheii n toate tuplele corespunztoare.
Integritatea referenial cere ca valorile cheii strine s se regseasc printre valorile cheii primare.
Aceast condiie introduce n baza de date constrngeri numite constrngeri refereniale.
Operaiile de adugare, modificare i tergere pot afecta integritatea referenial astfel:
1) In tabela principal (tabela referit sau printe):
a. operaia de adugare se va face fr nici un fel de restricii din punct de vedere al
condiiilor de integritate referenial;
b. operaia de tergere - deoarece prin tergerea unui tuplu din relaia sau tabela
principal, n relaia secundar pot rmne tuple care fac referire la tuplul ters, pentru
a menine integritatea referenial se poate introduce tergerea restricionat sau n
cascad:
- n primul caz, nu se poate terge un tuplu din tabela principal dac acesta are
corespondent tuple n tabela secundar, deoarece tuplele din tabela secundar
rmn orfane, adic vor avea referine nesatisfcute;
- n al doilea caz, tergerea unui tuplu din tabela principal va fi urmat de tergerea
tuturor tuplelor din relaia secundar care fac referire la tuplul ters;
c. operaia de modificare poate fi privit ca i n cazul operaiei de tergere, iar restriciile
refereniale sunt cele folosite la operaia de tergere.
2) In tabela secundar (de referin sau tabela copil):
a. operaia de adugare se poate face numai dac valorile cheii strine pentru articolele
adugate se regsesc printre valorile cheii primare din tabela principal, altfel operaia
de adugare este interzis;

14

b. operaia de tergere se poate realiza fr nici o restricie din punct de vedere al


condiiilor de integritate referenial;
c. operaia de modificare se poate realiza cu condiia s nu apar nregistrri fr
corespondent n tabela principal.
Schema i coninutul unei baze de date relaionale
Exist dou modaliti de abordare a bazelor de date relaionale i anume [Fotache2001]:
schema relaional (intensia sau structura bazei de date);
coninutul unei relaii (extensia bazei de date).
Schema relaional sau intensia unei baze de date poate fi definit ca un ansamblu de relaii
asociate semantic prin domeniul de definiie i prin restricii de integritate. Ea conine:
a.
una sau mai multe scheme de relaie, unde fiecare schem de relaie include numele relaiei
i atributele aferente;
b.
restricii de integritate, care pot fi:
- restricia cheilor primare, adic fiecare cheie primar trebuie s fie unic, nenul i cu
compoziie minimal;
- restricii refereniale, care decurg din existena cheilor strine;
- alte restricii, cum ar fi cele definite de utilizator (dependene ntre atribute, valori limit,
unicitate, caracter nenul, etc.).
Schema relaional descrie ntotdeauna modelul conceptual din cadrul unei baze de date.
Relaiile dintre relaie i tabel sunt date de urmtoarele:
1.
n timp ce relaia este o mulime teoretic, tabela este un obiect concret cu o anumit
reprezentare (tablou bidimensional);
2.
n timp ce ntr-o relaie ordinea atributelor sau tuplelor nu este semnificativ, ntr-o
tabel exist o ordonare att a coloanelor, dat de ordinea acestora la creare, ct i a
nregistrrilor, dat de ordinea n care au fost introduse n tabel sau ca urmare a
indexrii tabelei;
3.
n timp ce o relaie teoretic este format ntotdeauna din tuple distincte, n practic o
tabel poate conine i linii duplicat, aa dup cum s-a mai menionat n cazul SQL Server.
n acest context, noiunea de relaie se identific cu cea de tabel sau fiier, atributele cu
denumirea coloanelor unei tabele sau cu cmpurile unui fiier, iar tuplele cu liniile tabelei sau cu
articolele (respectiv nregistrrile) unui fiier.
Cele de mai sus justific faptul subliniat la definiia bazelor de date, c baza de date este o
colecie de fiiere. n unele SGBD-uri, cum este cazul Visual FoxPro, fiecare fiier are articole de
lungime fix, n timp ce la altele, cum este cazul SQL Server, articolele pot fi de lungime
variabil. Spre deosebire ns de fiierele obinuite, fiierele bazei de date prezint o serie de
particulariti, dintre care amintim:
1.
fiecare fiier are asociat o nregistrare de structur sau un antet, care include
informaii despre coninutul fiierului i se memoreaz n dicionarul de date;
2.
dac fiierul are articole de lungime fix, articolele sau nregistrrile de date conin un
numr de ordine, folosit la identificarea unei nregistrri n baza de date, numit i

15

indicatorul sau pointer-ul articolului respectiv; n Visual FoxPro acest pointer poate fi
obinut prin funcia RECNO();
3.
de regul unul dintre articolele bazei de date este cel tratat curent; pointer-ul acestui
articol se numete pointer-ul sau indicatorul bazei de date;
4.
fiierele din baza de date sunt interconectate ntre ele prin legturi de tip 1-1, 1-n sau
m-n.
REZUMAT

O baz de date relaional este definit ca fiind un ansamblu de


tabele sau relaii ntre care exist anumite legturi, fiecare tabel
fiind alctuit din coloane, denumite atribute i linii, denumite i
tuple.
Din punct de vedere matematic, prin relaie se nelege o
submulime a produsului cartezian al domeniilor.
Dac ntr-o relaie exist mai multe atribute sau combinaii de
atribute care permit identificarea unic a tuplelor, acestea sunt
denumite chei candidat.

TESTE DE
AUTOEVALUARE

1. Baza de date este:


a) un sistem integrat, coerent i nepartajat de fiiere;
b) un sistem integrat, coerent i partajat de fiiere;
c) un sistem integrat, necoerent i nepartajat de fiiere.
Rspuns: b .
2. Sistemul de gestiune a bazelor de date (SGBD) este:
a) o baz de date;
b) o component hardware;
c) o component software;
d) niciuna.
Rspuns: c .

Bibliografie

[Sitar-2010]

16

MODULUL 2 CREAREA I GESTIUNEA BAZELOR DE DATE I A


TABELELOR N ACCESS

Unitatea 1 Crearea i gestiunea bazelor de date n MS Access


CONCEPTE
DE BAZA

OBIECTIVE
RECOMANDRI
PRIVIND STUDIUL
REZULTATE
ATEPTATE

Crearea unei baze de date


Deschiderea i nchiderea bazelor de date
Adugare de obiecte (tabele, formulare, rapoarte, interogri) n
baza de date
Eliminare de obiecte (tabele, formulare, rapoarte, interogri) din
baza de date
nsuirea modului de creare i gestionare a bazei de date
Studiul aspectelor specifice tabelelor din bazele de date
Recomandm parcurgerea etapelor de creare a unei baze de date
folosind instrumentele puse la dispoziie de MS Access.
Se vor studia n continuare operaiile de gestiune cu baze de date.
nelegerea i nsuirea deprinderilor practice de creare i
gestionare a bazelor de date
nsuirea gestiunii obiectelor n cadrul unei baze de date.

Crearea bazei de date se realizeaz prin lansarea aplicaiei MS Access i deschiderea ferestrei
principale a acesteia:

Fereastra principal Microsoft Access


Pas1. Se alege icon-ul Blank desktop Database ( din fereastra principal)
Pas2: In fereastr de dialog aprut se introduce numele bazei de date (extensia acesteia va fi
implicit .accdb) i locaia n care se salveaz aceasta, apoi se acioneaz butonul Create.
Pas3. Se deschide pe ecran fereastra de mai jos n care se poate defini coninutul bazei de date
(tabele, formulare, rapoarte, interogri, s.a.) :

17

Deschiderea i nchiderea bazelor de date


Odat ce au fost create, bazele de date se regsesc n locaiile specificate de utilizator la momentul
crerii. Ca urmare, pentru a deschide o baz de date este suficient s o identificm dup denumire
la locaia la care am salvat-o anterior i, prin poziionarea cursorului sau selectarea acesteia cu
mouse-ul vom aciona tasta ENTER sau dublu-click cu ajutorul mouse-ului, iar aplicaia MS
Access asociat va deschide fiierul ce conine baza de date.
O alt modalitate de deschiderea a fiierului este cea n care, lansm n execuie aplicaia MS
Access iar cu opiunea Open Other Files din fereastra principal, identificm locaia fiierului ce
conine baza de date dorit, selectm fiierul iar prin dublu-click de mouse sau tasta ENTER
acesta va fi accesat de ctre aplicaie.
nchiderea unei baze de date dup terminarea lucrului cu aceasta se poate realiza:
- prin selectarea opiunii Close din fila File a meniului principal al aplicaiei;
- prin nchiderea ferestrei aplicaiei MS Access cu ajutorul butonului Close (X) din colul dreapta
sus al acesteia.
Adugarea unui obiect (tabel, interogare, formular, raport) n baza de date
Operaiunea de adugare a unui obiect (ex. tabel) ntr-o baz de date se realizeaz cu ajutorul
icon-ului aferent (Table) din fila CREATE a meniului principal al aplicaiei. Aplicaia acord
acestui obiect o denumire implicit (ex. Table1). Pentru finalizarea operaiunii este necesar
salvarea pe disc a obiectului adugat (tabelei):
- fie prin salvarea fiierului ce conine baza de date, cu ajutorul opiunii Save din fila File a
meniului principal;
- fie prin selectarea etichetei aferente obiectului adugat (tabelei) i activarea meniului contextual
cu ajutorul butonului drept al mouse-ului, din care selectai opiunea Save.

18

tergerea (Eliminarea) unui obiect (tabel, interogare, formular sau raport) din baza de date
tergerea unui obiect (ex.tabel) din baza de date se realizeaz astfel:
- selectai obiectul dorit a fi eliminat (tabela) din baza de date, prin clic de mouse asupra etichetei
acestuia din lista de obiecte a ferestrei active (All Access Objects);
- activai meniul contextul al obiecului prin click cu butonul drept al mouse-ului i selectai
opiunea Delete apoi confirmai operaiunea in ferestra de dialog activat sau acionai de la
tastatura tasta DEL i confirmai operaiunea.

Unitatea 2. Crearea i gestiunea tabelelor n MS ACCESS


CONCEPTE DE
BAZ

Crearea, modificarea i listarea structurii tabelelor;


Validarea datelor din cadrul unui tabel la nivel de cmp i
nregistrare;
Deschiderea i nchiderea tabelelor;
ncrcarea tabelelor cu date i listarea coninutului acestora;
Modificarea coninutului unui tabel;
tergerea nregistrrilor din cadrul unui tabel
Relaionarea tabelelor ntr-o baz de date
OBIECTIVE
Cunoaterea modului de creare i modificare a structurii tabelelor;
Asimilarea tehnicilor de ncrcare a tabelelor cu date i de
actualizare a datelor din tabelele respective;
Studiul relaionrilor dintre tabele
RECOMANDRI Se vor studia n continuare operaiile de gestiune cu tabele libere:
PRIVIND
creare, deschidere, nchidere, adugarea sau eliminarea unei baze de
STUDIUL
date din proiect, adugare, eliminare tabele din baza de date,
indexarea nregistrrilor unui tabel;
Pentru nsuirea lucrului cu tabelele se vor studia tehnicile de creare
a structurii tabelelor i de ncrcare a tabelelor cu date, de
actualizare a datelor i de definire a relaiilor dintre tabele.
REZULTATE
nsuirea tehnicilor de creare a structurii tabelelor, de ncrcare a
ATEPTATE
acestora cu date i de actualizare a datelor din tabele;
Cunoaterea procedurilor de indexare a tabelelor i a tipurilor de
indeci utilizai n MS Access.
Crearea, modificarea i listarea structurii tabelelor
Crearea structurii tabelelor se realizeaz prin mai multe modaliti: odat cu crearea bazei de
date , n modul de introducere date (Table View), n modul de proiectare (Design View), prin
utilizarea unor abloane (Table Templates) sau prin importul acestora din alte produse sau versiuni
anterioare ale MS Access (Import). Spre exemplificare, in cele ce urmeaza vom prezenta varianta
de creare a unei tabele n modul de proiectare Design View.
Pentru aceasta selectm din fila Create opiunea Table Design.n zona de lucru va aprea
structura curent a tabelei, sub forma unui tabel cu 3 coloane, n care liniile tabelului vor
reprezenta cmpurile tabelei.

19

Caracteristicile fiecrui cmp pot fi rafinate n ferestra Field Properties, din partea de jos a zonei
de lucru, care poate avea coninut difereniat n funcie de tipul de dat al cmpului curent.

Tabelul de definire a cmpurilor fiecare cmp (atribut) al bazei de date este definit prin 3
caracteristici: denumire (Field Name), tipul de dat (Data Type) i descrierea (Description).
Denumirea (Field Type) numele cmpului (atributului) trebuie s fie uor de neles de ctre
persoanele care urmeaz s opereze cu aceast baz de date. Chiar dac sunt acceptate cmpuri de
pn la 64 de caractere lungime, denumirea este recomandat s fie cea mai scurt i cuprinztoare
posibil.
Tipul de data (Data Type) exist 10 tipuri de date selectabile, plus unul impropriu. Acestea se
pot alege din lista derulant din coloana Data Type. Tipul de dat definit pentru un cmp descrie
domeniul de valori al cmpului i impune anumite reguli de domeniu pentru acel cmp.
Tipul de dat Access Utilizat pentru a stoca

Limitri/Restricii

Text

Date alfanumerice (text i


Stocheaz pn la 255 caractere.
numere)

Memo

Stocheaz pn la 2 GO de date (limita de


dimensiune pentru toate bazele de date Access), 2
Date alfanumerice (text iGO de date poate micoreaz viteza de operare a
numere)
bazei de date. Maxim de 65.535 de caractere ntrun cmp de tabel i n orice controale pe care le
legai la cmp

Number

se utilizeaz o setare Dimensiune cmp, care


controleaz dimensiunea valorii pe care o poate
conine cmpul. Se poate seta dimensiunea
cmpului la 1, 2, 4, 8 sau 16 octei.

Date numerice

20

Date/Time

Date i ore

Access stocheaz toate datele ca numere ntregi


pe 8 octei cu dubl precizie.

Currency

Date monetare

Stocheaz date ca numere de 8 octei cu precizie


de patru zecimale.

AutoNumber

Valori unice create de Access

Stocheaz date ca valori pe 4 octei; utilizat de


obicei pentru cheile primare.

Yes/No

Date de tip Boolean (adevratAccess utilizeaz -1 pentru toate valorile Da i 0


sau fals).
pentru toate valorile Nu.

Obiect OLE

Stocheaz pn la 2 GO de date (limita de


dimensiune pentru toate bazele de date Access).
Imagini, documente, grafice i
Cmpurile obiect OLE creeaz imagini bitmap ale
alte obiecte din programele
documentului original sau a obiectului respectiv,
Office i cele bazate pe
apoi afieaz acea imagine bitmap n cmpurile
Windows
din tabel i n controalele raportului sau
formularului din baza de date.
Stocheaz pn la 1 gigaoctet de date.Se
stocheaz linkuri ctre site-uri Web, site-uri sau
fiiere dintr-un intranet sau dintr-o reea LAN
(Local Area Network) i ctre site-uri sau fiiere
de pe computerul dvs.

Hyperlink

Adrese Web

Attachment

Stocheaz fiiere de genul


Unul sau mai multe registre de calcul Excel,
celor ataabile la un mesaj
documente Word, grafice, sunete sau fotografii
electronic

Lookup Wizard

Nu reprezint un cmp anume,


ci o facilitate de introducere a
Alegerea unitii de msur dintr-o list, a valutei,
datelor prin definirea unei liste
a localitii, etc.
pe baza unor valori-utilizator
sau generate din alte cmpuri

Descrierea (Description) este opional, pentru cazurile n care cele 64 de caractere ale
denumirii cmpului nu sunt suficiente; aici se pot detalia elemente suplimentare documentrii
cmpului, care vor fi utile persoanelor care vor introduce date n tabel sau vor consulta coninutul
acesteia.
Proprietile cmpurilor
Principalele proprieti ale cmpurilor sunt cele legate de:
FORMAT- stabilete formatul de afiare a coninutului cmpului; permite alegerea unor
formate prestabilite sau crearea unui format personalizat pentru tipul de dat ales.
DECIMAL PLACES se utilizeaz pentru numerele nentregi i specific precizia la
afiarea acestora; stabilete numrul de zecimale ntre 0-15.

21

INPUT MASK uneori avem nevoie de un format de introducere acolo unde sunt date
care trebuie s se conformeze unui format mai strict, impus de utilizator; se aplic tipului
text i dat calendaristic un format personalizat de afiare. Ex.Tel.(0262)655-224.
CAPTION permite afiarea unui nume atribuit cmpului la vizualizare (diferit de cel
intern, deja atribuit la definirea structurii bazei de date).
DEFAULT VALUE -valoarea afiat implicit, nainte de actualizarea cmpului
VALIDATION RULE testeaz dac valoarea introdus corespunde unor reguli definite
de utilizator, funcie de cerinele afacerii modelate
VALIDATION TEXT este un text care se va afia ntr-o caset de dialog pe ecran, n
cazul n care valorile introduse de utilizator pentru cmpul n cauz contravin regulilor
stabilite prin VALIDATION RULE
REQUIRED stabilete dac completarea acestui cmp este obligatorie sau nu. Se traduce
ca NOT NULL/NULL
INDEXED menioneaz dac acest cmp va fi un index sau nu. Dac da, se va meniona
dac accept sau nu duplicate.
Modificarea structurii unei tabele const n adugarea sau eliminarea unor cmpuri din
structura tabelei.
Adugarea unui cmp n structura unei tabele se poate realiza parcurgnd urmtorii pai:
1. se afieaz caseta Table cu definiia tabelei (n Design View), prin click de mouse asupra
numelui tabelei dorite din lista All Access Objects
2. se selecteaz cmpul naintea cruia se va insera noul cmp, prin click de mouse pe linia
aferent acestuia;
3. cu butonul drept al mouse-ului se activeaz meniul contextual din care selectm opiunea
Insert Rows;
4. se definete noul cmp al structurii tabelei cu caracteristicile aferente.
5. Se salveaz tabela cu noua structur iar, dac este cazul, se completeaz valorile pentru noul
cmp al tabelei.
tergerea (Eliminarea) unui cmp din structura unei tabelei se procedeaz astfel:
1. se afieaz caseta Table cu definiia tabelei (n Design View), prin click de mouse asupra
numelui tabelei dorite din lista All Access Objects
2. se selecteaz cmpul ce se dorete a fi eliminat din structura tabelei, prin click de mouse pe
linia aferent acestuia;
3. cu butonul drept al mouse-ului se activeaz meniul contextual din care selectm opiunea
Delete Rows;
4. se confirm operaiunea n fereastra de dialog afiat;
5. Se salveaz tabela cu noua structur.
Listarea (afiarea) structurii unei tabele se realizeaz parcurgnd urmtorii pai:

22

a. Selectm tabela a crei structur dorim s o afim, prin click de mouse asupra denumirii
acesteia din fereastra All Access Objects;
b. Activm meniul contextual al tabelei prin click cu buton dreapta al mouse-ului
c. Selectm butonul Open pentru deschiderea tabelei n fereastra de lucru curent;
d. Din fila Home a meniului principal, din caseta Views, selectm icon-ul Design View
Validarea datelor din cadrul unei tabele la nivel de cmp i nregistrare
Validarea datelor dintr-o tabel la nivel de cmp se realizeaz astfel:
- o prim validare este dat de tipul cmpului. Ea este realizat automat de Access.
- a doua validare este dat de dimensiunea cmpului (proprietatea Field Size). Ea specific cea
mai mare valoare ce poate fi introdus n cmp.
- o a treia validare se poate realiza prin intermediul definirii unei reguli de validare pentru cmp,
astfel :
a.regula de validare se poate introduce direct n caseta proprietii Validation Rule sau se
definete cu aplicaia Expression Builder. Caseta aplicaiei Expression Builder se afiaz la
selectarea proprietii Validation Rule a cmpului, cu un clic pe butonul . Caseta Expression
Builder conine n partea superioar o zon n care se va construi expresia. Urmeaz apoi
butoanele corespunztoare operatorilor, +, -, etc. La un clic pe un buton, caracterul corespunztor
este inserat n caseta expresiei n punctul n care se afl cursorul. In partea de jos exist trei zone
ce pot afia funciile standard, constantele i operatorii ce se pot utiliza n expresii. Pentru
finalizarea operaiunii de validare se recomand utilizarea casetei proprietii Validation Text n
care se va introduce un mesaj ce se afieaz ntr-o fereastra de dialog utilizatorului, n cazul n
care regula de validare a cmpului definit anterior este nclcat.
Validarea datelor dintr-o tabel la nivel de nregistrare
O regul de validare a unei nregistrri se aplic dup completarea tuturor cmpurilor i verific
relaiile ntre cmpuri. Expresiile de validare pot conine i nume de cmpuri, pe lng
constante i funcii standard. Inregistrarea este scris n tabel doar dac regula de validare este
satisfcut. Construirea expresiilor de validare se realizeaz similar cu cele aferente validrii
cmpurilor.
Deschiderea i nchiderea tabelelor
Deschiderea unei tabele dintr-o baz de date se realizeaz parcurg urmtoarele etape:
a. Selectarea tabelei din lista existent n fereastra All Access Objects, prin click de mouse asupra
acesteia
b. Activarea meniului contextual cu butonul drept al mouse-ului si selectarea opiunii Open sau
dublu-click de mouse asupra tabelei selectate.
Inchiderea unei tabele dintr-o baz de date se realizeaz astfel:
a. Selectarea tabelei dintre cele active n fereastra de lucru curent, cu click de mouse pe
eticheta acesteia
b. Activarea meniului contextual prin click cu butonul dreapta al mouse-ului

23

c. Selectarea opiunii Close din meniul contextual; n cazul n care s-au efectuat modificri
de structur sau de coninut asupra tabelei se va confirma salvarea acestor modificri
anterior nchiderii tabelei.

ncrcarea tabelelor cu date i listarea coninutului acestora


Incrcarea tabelelor cu date presupune:
a. Selectarea tabelei n care se dorete ncrcarea datelor, prin dublu-click de mouse asupra
denumirii acesteia din fereastra All Access Objects
b. Activarea vizualizrii coninutului tabelei n modul Datasheet View din fila Home caseta
Views
c. Introducerea de la tastatur a valorilor aferente fiecrui cmp al tabelei; trecerea de la un cmp
la celalalt al tabelei se realizeaz cu ajutorul tastei TAB (salt n cmpul drepta celui curent) sau
SHIFT + TAB (salt n cmpul din stnga celui curent)
d. Finalizarea operaiunii se realizeaz prin salvarea noului coninut al tabelei cu ajutorul opiunii
Save din meniul contextual al tabelei, activat prin click cu butonul dreapta al mouse-ului pe
eticheta acesteia.
Listarea (afiarea) coninutului tabelei presupune parcurgerea umtoarei secvene:
a. Selectarea tabelei al crei coninut dorim s l vizualizm
b. Deschiderea acesteia n fereastra de lucru curent, cu ajutorul opiunii Open din meniul
contextual
c. Activarea vizualizrii tabelei n modul Datasheet View fie prin selectarea icon-ului
corespunztor din caseta Views a filei Home sau selectnd icon-ul Datasheet View din colul
dreapta jos a ferestrei de lucru curente.
Modificarea coninutului unei tabele presupune operaiuni de: adugare de noi nregistrri,
modificarea uneia sau mai multor nregistrri in tabel sau tergerea uneia sau mai multor
nregistrri din tabel.
Adugarea de noi nregistrri ntr-o tabel se poate realiza astfel:
a. Selectarea i deschiderea tabelei al crei coninut dorim s l modificm prin adugare noi
nregistrri i activarea modului Datasheet View de vizualizare
b. Click de mouse pe ultima linie necompletat a tabelei, marcat cu pointer-ul *, i introducerea
datelor de la tastatur. Pentru abandonarea nregistrrii, n cazul in care am introdus deja unele
date n noua nregistrare, apsm tasta ESC.
Modificarea unei nregistrri din tabel presupune:
a. Selectarea i deschiderea tabelei al crei coninut dorim s l modificm prin adugare noi
nregistrri i activarea modului Datasheet View de vizualizare
b. Poziionarea pe nregistrarea ale crei valori dorim s le modificm prin click de mouse asupra
liniei nregistrrii

24

c. Parcurgerea valorilor din cmpurile nregistrrii cu ajutorul tastei TAB sau prin click de mouse
n celula a crei valoare dorim s o modificm
d. Introducerea de la tastatura a noilor valori aferente cmpului/cmpurilor vizate, pn la
finalizarea operaiunii, urmat de nchiderea tabelei.
tergerea unei nregistrri din tabel se poate realiza astfel:
a. Selectarea i deschiderea tabelei al crei coninut dorim s l modificm prin adugare noi
nregistrri i activarea modului Datasheet View de vizualizare
b. Click de mouse pe linia nregistrrii ce se dorete a fi eliminat din tabel
c. Activarea meniului contextual al nregistrrii cu ajutorul butonului dreapta al mouse-ului i
selectarea opiunii Delete Record urmat de confirmarea operaiunii n caseta de dialog
afiat.
Relaionarea tabelelor ntr-o baz de date
O baz de date se compune din mai multe tabele. O tabel este o structur logic de date ce
conine informaii pe care baza de date le reprezint. Fiecare tabel are un nume unic. O tabel
este constituit dintr-un numr de coloane (attribute sau cmpuri). Fiecare tabel are o cheie
primar ce identific n mod unic liniile tabelei. Cheia primar poate consta dintr-un singur atribut
sau din mai multe attribute (cheie simpl sau cheie compozit).
O tabel se poate referi la atributele uneia sau mai multor alte tabele din baza de date. Acest lucru
se face prin cheia extern. Atunci cnd o tabel trebuie s se refere la atributele altei tabele, unul
sau mai multe atribute ale tabelei-fiu vor conine cheia extern, care este cheia primar a tabeleiprinte.
Relaiile ntre tabele sunt de regul de tipul unul la mai muli. Vom spune c ntre tabelele A i B
exist relaia unul la mai muli dac unei linii din tabela A i corespund mai multe linii din tabela
B, dar unei linii din tabela B i corespunde o singur linie din tabela A.
Pentru crearea relaiei ntre cele dou tabele se procedeaz astfel:
a. Se nchid toate tabelele bazei de date i, din fila Tools selectai caseta Relationship care
produce afiarea ferestrei Relationships i a casetei Show Table;
b. Din caseta Show Table selectai pe rnd cele dou tabele ntre care dorii s formalizai
stabilirea relaiei existente i acionai butonul Add care va avea ca efect afiarea structurii
celor dou tabele n fereastra Relationship
c. Se inchide caseta Show Table cu clic pe butonul Close
d. Pentru a defini o relaie ntre atributul cheie primar a unei tabele i atributul corespunztor
cheie extern n alt tabel se selecteaz atributul cheie primar din prima tabel i se trage
cu butonul stng al mousului apsat peste atributul cheie extern al celei de-a doua tabele.
e. se afiaz caseta Edit Relationship. In partea de jos a casetei n seciunea Relationship
Type apare tipul relaiei, n cazul nostru unu la mai muli
f. clic pe butonul Join Type, care afiaz caseta Join Properties, unde selectm butonul
corespunztor tipului de relaie dintr-e cele dou tabele; clic pe butonul OK al casetei Join
Properties

25

g. se marcheaz opiunea Enforce Referential Integrity. Integritatea referenial a bazei de


date nu permite ca ntr-o tabel cu un cmp cheie extern s existe o linie n care cheia
extern nu exist n tabela primar. In cazul integritii refereniale putem executa
urmtoarele aciuni: Cascade Update Related Fields, care atunci cnd se modific un
cmp n tabela primar, se modific valoarea sa n toate tabelele legate i Cascade Delete
Related Records, care atunci cnd este tears o linie din tabela primar, se terg toate
liniile ce se refer la aceast linie din tabele corespunztoare,
h. clic pe butonul Create i relaia ntre tabele este creat.

Relaionarea tabelelor din baza de date


n Access relaiile pe care le crem ntre tabele cu ajutorul casetei Relationship.
Tabelele ntre care se creeaz o relaie se numesc: tabel principal sau printe i respectiv tabel
secundar sau fiu.
ntre cele dou tabele se pot defini urmtoarele tipuri de relaii:
a. relaie una-la-una; prin care unei nregistrri din tabela printe i corespunde o singur
nregistrare n tabela fiu (copil);
b. relaii una-la-mai-multe; prin care unei nregistrri din tabela printe i corespund mai
multe nregistrri n tabela copil;
c. relaie mai-multe la-una; prin care pentru o nregistrare n tabela copil putem
avea mai multe nregistrri n tabela printe;
d. relaie mai-multe-la-mai-multe; prin care unei nregistrri din tabela printe i
pot corespunde mai multe nregistrri n tabela copil i invers adic unei
nregistrri din tabela copil i pot corespunde mai multe nregistrri n tabela
printe.
Asigurarea integritii datelor din tabelele legate ntre ele prin relaii permanente
Printre mecanismele care asigur integritatea bazei de date se numr i cele privind integritatea
entitilor i integritatea referenial.
Integritatea entitilor este implementat prin specificarea n cadrul unei tabele, a faptului c nu
pot accepta valori nule cmpurile care reprezint chei primare.
Integritatea referenial (referenial integrity-RI) definete un ansamblu de reguli, care permit
menionarea integritii datelor din tabelele legate ntre ele, la operaiile de modificare, adugare i
tergerea datelor din tabelele respective, astfel nct s nu existe nregistrri neparticipante la
relaie. Implementarea acestor reguli ntre tabele se realizeaz prin intermediul unor restricii
numite restricii pentru integritate referenial (RI constraints).
Specificarea restriciilor de integritate referenial i generarea automat a procedurilor aferente se
realizeaz prin intermediul butoanelor de control din fereastra Edit Relationship.

REZUMAT

Operaiile care se pot realiza asupra unei baze de date sunt: crearea
acesteia, popularea ei cu obiecte (tabele, interogri, rapoarte,
formulare, macrouri, module), tergerea unui obiect, actualizarea

26

TESTE DE
AUTOEVALUARE

Bibliografie

unui obiect.
Operaiile legate de obiectul tabel realizabile sunt: crearea,
modificarea i listarea structurii tabelelor;
Validarea datelor din cadrul unui tabel la nivel de cmp i
nregistrare;
Deschiderea i nchiderea tabelelor;
ncrcarea tabelelor cu date i listarea coninutului acestora;
Modificarea coninutului unui tabel;
tergerea nregistrrilor din cadrul unui tabel
Relaionarea tabelelor ntr-o baz de date
1. Care sunt paii necesari pentru crearea unei baze de date n
Access
2. Care este extensia unei baze de date n Access 2013
3. Ce tipuri de date se pot utiliza n tabelele din Access
4. Cum se realizeaz o relaie ntre tabele din Access
[Sitar-2010]

27

MODULUL 3 Utilizarea interogrilor n ACCESS


CONCEPTE
DE BAZA

OBIECTIVE
RECOMANDRI
PRIVIND STUDIUL
REZULTATE
ATEPTATE

Definirea noiunii de interogare


Tipuri de interogri realizate n Access
Grila de interogare QBE
Etapele realizrii unei interogri n Access 2013
Operaii legate de interog[ri
nsuirea modului de creare i gestionare a interogrilor prin
intermediul Access 2013
Studiul aspectelor specifice interogrilor din cadrul tabelelor
Recomandm parcurgerea etapelor de creare a unei baze de date
folosind instrumentele puse la dispoziie de Access.
nelegerea i realizarea unor interogri cu scop practic pe tabele
singure sau aflate n relaie

Interogrile sunt acele obiecte din baza de date care ne permit s introducem, s actualizm
i s aranjm datele stocate n tabele. De asemenea, le putem folosi ca surse pentru formulare i
rapoarte.
Rezultatul interogrii este un nou set de date, numit set dinamic (engl: Dynaset). Setul
dinamic (rezultalul interogrii) conine doar cmpurile specificate ale nregistrrilor din tabelele
specificate care satisfac condiiilor specificate. Denumirea '"Set dinamic" este legat de faptul c
orice modificri ale datelor din tabelele specificate n interogare implic modificri respective ale
rezultatului interogrii (la o nou executare a ei). i invers, orice modificri n setul dinamic
implic modificri n tabelele respective (cu condiia respectrii integritii datelor). Seturile
dinamice nu se memorizeaz; ele se formeaz din nou de fiecare dat cnd executm o interogare.

Tipurile de interogri posibile n Access 2013 sunt:


-

Interogri de selecie -select queries acele interogri care extrag sau ne arat
anumite date. Aceste interogri ne vor afia datele n funcie de anumite criterii.
Interogri de aciune - action queries - folosite pentru a modifica unele nregistrri.
n acest tip de interogri se regsesc urmtoarele aciuni: tergere nregistrare- DELETE,
actualizare nregistrare- UPDATE, inserare date - APPEND, crearea unui nou tabel din
unul deja existent - MAKE TABLE.
Interogri ncruciate (de tip table pivot) - crosstab queries - folosite pentru a
calcula sau restructura un tabel pentru o analiz mai uoar a datelor. Astfel putem calcula
numrul de nregistrri, media unui cmp, suma elementelor sau alte tipuri de calcule
pentru datele care sunt grupate dup dou cmpuri.

Operaiile legate de interogarea tabelelor pot fi :


-

Crearea unei interogri


Adugarea de cmpuri ntr-o interogare adugarea unei coloane ca i n Excel

28

Definirea cmpurilor obinute prin calcule - Aceste cmpuri sunt rezultatul unei
expresii. O expresie este alctuit prin combinarea unui operator cu unul sau doi
termeni. n marea majoritate a cazurilor un termen este un cmp al unui tabel, iar cellalt
termen este o valoare numeric sau un alt cmp.
Schimbarea ordinii cmpurilor la fel ca i la un tabel Excel
Salvarea interogrilor opiunea Save din meniul contextual aferent obiectului

Rularea unei interogri - - RUN sau butonul din bara de instrumente.


Modificarea structurii unei interogri - fereastra Database, n obiectul Queries,
selectare interogare ce urmeaz a fi modificat; opiunea Design

Crearea unei interogri n Access 2013


Pentru a crea o interogare trebuie s respectm urmtorii pai:
- Deschidem baza de date i tabela sau tabelele pe care trebuie s crem interogarea.
- Selectam opiunea CreateQuery n Design View. La intrarea n Query Design suntem
ntrebai ce tabele vom folosi pentru a extrage datele.
- Selectm tabela de unde dorim s extragem datele i acionm cu un click pe butonul Add
(sau dublu-click pe tabela respectiv).
Dac dorim s extragem datele din alt interogare, click pe tabul Queries i selectm sursa
datelor.
Dac dorim s extragem datele din mai multe tabele, trebuie s parcurgem paii de mai sus
i s adugm toate tabelele.
- n final alegem butonul Close .
Astfel va aprea fereastra Design View.

Ecranul de mai sus arat zona de tabele ce vor fi folosite pentru interogri, iar n partea de
jos avem un grid (form tabelar), n care vom putea defini structura unei interogri.
Not - Fiecare coloan din acel grid corespunde unui cmp. Fiecare linie are cte o
funcie:
Field: - cmpurile folosite n interogare(de obicei vor fi cmpurile pe care le vom
vizualiza);poate fi un cmp dintr-un tabel, sau un cmp calculat. n cazul unui cmp nou, calculat,
vom folosi urmtoarea form:
-numecmpnou : expresie

29

unde:
-numecmpnou- va fi numele cmpului nou creat prin diferite calcule;
-expresie- va fi format din cmpuri din tabele, operatori, funcii predefinite,
numere, care vor contribui la determinarea valorilor aferente cmpului nou.
Obs: ntre cele dou componente avem semnul :
Table: -numele tabelului de unde extragem cmpul. Aceast linie este foarte folositoare,
mai ales n cazul n care avem de fcut o interogare bazat pe mai multe tabele.
Sort: -ajut la ordonarea rezultatelor ntr-o anumit ordine.
Show: -dac nu este marcat, atunci respectivul cmp nu va aprea n rezultatul final al
interogrii. Nu este marcat n cazul n care dorim s folosim acest cmp n interogare, dar nu
dorim s-l afim.
De exemplu, dac vrem s afim toi studenii din FSEGA, vom avea nevoie de un cmp
care ne arat facultatea, dar nu trebuie neaprat s-l afim.
Criteria: -specific un criteriu de cutare. Un criteriu de cutare este o condiie pe care o
nregistrare trebuie s o ndeplineasc pentru a aprea ca un rezultat a unei interogri. Acest
criteriu poate fi compus dintr-una sau mai multe condiii cu ajutorul operatorilor AND i OR.
or: -este folosit pentru condiiile multiple.
Se folosesc operatorii cunoscui o +, pentru adunare
o -, pentru scdere
o *, pentru nmulire
o ^, pentru ridicare la putere
o /, pentru mprire
o \, pentru mprire (se obine doar partea ntreag a mpririi)
o Mod, face mprirea i returneaz doar restul
o &, folosit pentru concatenarea a dou iruri
Se pot utiliza i funcii ( cele cunoscute din Excel) o DATE()- returneaz data curent
o NOW()- returneaz data i timpul curent
o YEAR(datevalue)- returneaz anul expresiei din paranteze
o MONTH(datevalue)- returneaz luna parametrului

Criterii n interogrile de selecie


n cazul n care dorim s afim numai anumite nregistrri trebuie s stabilim anumite
condiii de ndeplinit de respectivele linii de tabel. Pentru aceasta vom folosi seciunea Criteria:
din gridul de definire a interogrii.

30

De exemplu,vrem s vizualizm furnizorii care-i au sediul n Iai, deci liniile rezultate din
interogare trebuie s ndeplineasc condiia jude = Iasi.Deci trebuie s adugm un criteriu n
gridul QBE(de descriere a interogrii), n seciunea Criteria: a cmpului judet condiia =Iasi.
Cnd aceast condiie este o egalitate nu este neaprat necesar s folosim semnul =, el
fiind considerat implicit de Access n lipsa oricrui alt semn.
Operatori folosii pentru comparaii n criteriile interogrilor
Aceti operatori compar valoarea unei expresii cu valoarea altei expresii. n cazul n care
una dintre aceste expresii are valoare nul, atunci rezultatul returnat de operator va fi tot nul.
Operator

Semnificaie
Egal cu
Diferit de
Mai mic dect
Mai mic sau egal cu
Mai mare dect
Mai mare sau egal cu

=
<>
<
<=
>
>=
Operatorul Between
Operatorul are urmtoarea sintax: - Between valoare1 and valoare2
Acest operator permite examinarea valorii unui cmp, prin compararea valorii acestuia cu
valoare1 i valoare2.
Operatorul In
Operatorul are urmtoarea sintax: - In (valoare1, valoare2, valoare3,)
Acest operator examineaz dac valoarea dintr-un cmp ia una dintre valorile din
paranteze.
Operatorul is Null
n cazul n care o coloan care intervine n comparaie are valoare nul, rezultatul condiiei
are un rezultat nul. n cazul n care vrem s afim toate nregistrrile care nu au valori n anumite
coloane, putem folosi acest operator.
De exemplu, dorim s punem condiia ca acel Codp s fie nul:

Operatorul Like
Acest operator este folosit n cazul n care vrem s comparm valoarea dintr-un cmp cu
un anumit format (model). De exemplu, vrem s vizualizm toi clienii care ncep cu litera A.
Sintaxa pentru acest operator este urmtoarea:

31

Like A*
n tabelul urmtor avem caracterele care sunt folosite pentru definirea formatului.
Caractere din model
?
*
#
[list de caractere]
[!list de caractere]

Descriere
Un singur caracter
Zero sau mai multe caractere
Cifre
Orice caracter din lista de caractere
Orice caracter care nu se afl n lista de caractere

Criterii pentru Cmpuri de tip text


ORAS =CLUJ
Extrage acele nregistrri care au n cmpul ORAS valoarea CLUJ
ORAS = .NOT.
Extrage acele nregistrri care NU au n cmpul ORAS valoarea CLUJ
CLUJ
LIKE C*
Extrage acele nregistrri care au n campul ORAS o valoare ce incepe cu
litera C
NOT LIKE C*
Extrage acele nregistrri care au n campul ORAS o valoare ce NU ncepe cu
litera C
LIKE CLUJ*
Extrage acele nregistrri care au n cmpul ORAS o valoare care ncepe cu
textul CLUJ
<> *CLUJ*
Extrage acele nregistrri care NU au n cmpul ORAS o valoare ce include
textul CLUJ (oriunde n componen)
IS NULL
Extrage acele nregistrri care au n cmpul ORAS o valoare vid (nul).
IS NOT NULL
Extrage acele nregistrri care au n cmpul ORAS o valoare ne-vid
ORAS>=CLUJ
Extrage acele nregistrri care au n cmpul ORAS, din punct de vedere
STAT >=Mexic alfabetic, urmtoarea valoare dup CLUJ, respectiv n cmpul STAT, dpdv alphabetic,
dup Mexic
LIKE [A-D]*
Extrage acele nregistrri care au n cmpul ORAS o valoare care ncepe cu
literele de la A la D
Oras=Cluj or
Extrage acele nregistrri care au n cmpul ORAS o valoare care este fie Cluj
Turda
fie Turda
Criterii pentru cmpuri de tip numeric
Pret=100
NOT 100
Pret >100

Extrage acele nregistrri care au n cmpul Pret valoarea 100


Extrage acele nregistrri care NU au n cmpul Pret valoarea 100
Extrage acele nregistrri care au n cmpul Pret o valoare mai mare dect
100

Pret = 20 Or 25
Pret = <25 Or >100
Like *3,50
Is NULL
Is Not NULL

Extrage acele nregistrri care au n cmpul Pret o valoare 20 sau 25


Extrage acele nregistrri care au n cmpul Pret valori care nu sunt mai
mari de 25 sau valori care nu sunt mai mici dect 100
Extrage acele nregistrri care au n cmpul Pret o valoare care se termin
cu 3,50 (cum ar fi: 13,50, 23,50, 33,50)
Extrage acele nregistrri care au n cmpul Pret o valoare vid
Extrage acele nregistrri care NU au n cmpul Pret o valoare vid

32

Criterii pentru cmpuri de tip dat calendaristic


Data_C=#02.02.2008#
Data_C NOT
#02.02.2008#
Data_C <
#02.02.2008#
Data_C >
#02.02.2008#
Data_C >
#02.02.2008# and <
#30/05/2008#
Data_C =Date()
Data_C =Date()-1
Data_C =Date()+1
BETWEEN Date() and
Date()+6

Extrage acele nregistrri care au n cmpul Data_C valoarea de 2 februarie


2008
Extrage acele nregistrri care NU au n cmpul Data_C valoarea de 2 februa
2008
Extrage acele nregistrri care au n cmpul Data_C valoarea nainte de data
2 februarie 2008
Extrage acele nregistrri care au n cmpul Data_C valoarea dup data de 2
februarie 2008
Extrage acele nregistrri care au n cmpul Data_C valoarea cuprins ntre
februarie i 30 mai 2008

Extrage acele nregistrri care au n cmpul Data_C valoarea egal cu data


curent
Extrage acele nregistrri care au n cmpul Data_C valoarea egal cu ziua
dinaintea datei curente
Extrage acele nregistrri care au n cmpul Data_C valoarea egal cu ziua du
data curent
Extrage acele nregistrri care au n cmpul Data_C valoarea cuprins de la d
curent nc 6 zile

Interogrile cu cmp calculat presupun ca n grila QUERY DESIGN s se introduc


numele cmpului calculat ntr-o nou coloan, se introduce caracterul : urmat de formula de
calcul
asa
cum
rezult
din
exemplul
urmator:
Valoare:
[continutfactura.cantitate]*[continutfactura.pretf]
Cmpul calculat din interogare nu va face parte din structura tabelului folosit la interogare.
n Access putem defini o serie special de interogri care s calculeze totalurile nregistrrilor unui
tabel, prin aa numitele funcii de agregare - Summary query.
Se poate crea o interogare agregat prin selectarea opiunii Totals din meniul Design,
zona Show/Hide.
n urma acestor aciuni, o nou linie este adugat n gridul QBE, linia Total:.
Toate coloanele pe care le vom include n grid, trebuie s aib valori n fiecare nregistrare,
astfel cu ajutorul opiunii Total: putem indica Access-ului ce s fac cu acele coloane introduse n
Field:.
Valorile pe care le putem introduce n seciunea Total: pot fi vizualizate n figura
urmtoare:

33

Sum - calculeaz suma valorilor indicate n cmpul aferent. Datele pe care trebuie s le conin
cmpul asupra cruia apelm aceast funcie trebuie s fie de tip numeric (integer, decimal,
currency...). Rezultatul va fi acelai tip de dat ca i datele surs.
Avg - calculeaz media aritmetic a elementelor din cmpul specificat. Datele surs trebuie s fie
de tip numeric, iar rezultatul va avea un anumit tip de dat n funcie de necesiti.
Min i Max - returneaz minimul sau maximul dintr-o coloan. n acest caz n coloan putem
avea date de tip numeric, text sau dat. Tipul de dat returnat va fi acelai ca i tipul de
dat ntlnit n coloana surs. Dac valoarea e de tip numeric, aceste funcii vor returna cel
mai mic, respectiv cel mai mare numr, dac este text, pentru returnarea unui rezultat se va
folosi de alfabet, iar n cazul valorilor de tip dat vom avea la baz ordinea cronologic.
First i Last - returneaz prima i ultima nregistrare din coloan. n cazul n care ordonm ntr-un
fel respectiva coloan, rezultatul funciilor nu se schimb.
Count - returneaz numrul de nregistrri din respectiva coloan. Indiferent de tipul de date al
coloanelor, aceast funcie returneaz un ntreg.
Opiunea Group by ne ajut s grupm nregistrrile. O interogare agregat, fr opiunea de
grupare, d ca rezultat o singur valoare, iar calculele sunt efectuate pe toate nregistrrile surs.
Opiunea Expression ne permite s folosim o expresie n seciunea Field:. Aceast expresie are
anumite limitri. Astfel putem avea n acea seciune doar numele cmpurilor alturi de o funcie
agregat studiat, valori fixe sau numele coloanelor care apar cu opiunea Group by.O expresie
poate combina mai multe funcii agregat, dar nu avem posibilitate s includem funcie n funcie.
De exemplu: Max(hours)-Min(hours) i nu Max(sum(hours)).
Opiunea Where ne permite s stabilim un criteriu de cutare care se va aplica asupra coloanei
surs nainte de anumite calcule. Pentru aceast opiune vom putea folosi aceeai operatori ca ntro interogare normal, iar condiiile multiple pot fi scrise cu ajutorul operatorilor OR, AND, NOT.

Interogri crosstab(ncruciate)
O interogare crosstab este folosit n cazul n care vrem s reprezentm o interogare de tip
agregat cu dou coloane de grupare, la rezultat avnd una dintre coloane reprezentat n stnga, iar
cea de-a doua coloan n partea de sus. Altfel spus, dup selectarea opiunii Crosstab din Design,
Query Design ca apare n grila QBE linia CROSSTAB, care permite definirea de:
- Row Heading linie (mai multe)
- Column Heading- verticala (1 singura coloana)
- Value valori la intersecie linii cu coloanele (1 singur coloan)

34

De exemplu, vrem s obinem salariile lunare ale salariailor care lucreaz pe baz de
comision. Trebuie s apelm la o interogare agregat, care s calculeze sumele necesare dup dou
cmpuri: dup salariat i dup lun.

Interogri pentru crearea de tabele noi MAKE TABLE


1. Elaborarea unei interogri de selecie n Query Design.
2. n linia Criteria se impun condiiile de selecie din contextul problemei.
3. Selectare MAKE TABLE din meniul DESIGN
4. Specificarea numelui pentru tabelul nou creat
5. Lansare n execuie interogare.
Interogri pentru adugarea nregistrrilor ( tip Append)
1. Create Query.
2. Elaborare Interogare de selecie n Query Design.
3. Show table - selectare tabel de unde se adaug nregistrri.
4. Selectare APPEND din Query Type
4. Apare caseta APPEND, specificare nume tabel n care se adaug nregistrri i OK.
5. Completarea grilei de interogare, n coloana APPEND TO se precizeaza nume cmp
destinaie
6. Salvare interogare.
7. Lansare n execuie.
. Interogri pentru modificarea nregistrrilor ( tip Update)
1. Create Query
2. Elaborare interogare de selecie n Query Design.
3. SHOW TABLE - selectare tabele
4. Selectare UPDATE din Query Type
5. Selectare cmpuri de modificat.
6. Completarea n gril a valorilor sau formulei de calcul pe linia Update to
7. Specificare criterii de selecie
8. Salvare interogare
7. Lansare n execuie.
Interogri pentru tergerea nregistrrilor (tip Delete)
1. Create Query
2. Elaborare interogare de selecie n Query Design.
3. SHOW TABLE- selectare tabele
4. Selectare DELETE din Query Type
5. Completarea n gril a criteriilor pentru tergerea nregistrrilor
6. Salvare interogare
7. Lansare n execuie
Exemple de interogri prin grila de interogare:

35

1. Lista emisiunilor cu durata mai mic de 30 de minute.

2. Lista emisiunilor de tip tiri.

3. Lista emisiunilor care conin caracterele ru

Definirea unei interogri pentru care durata de emisiune a emisiunilor de tip tiri se
mrete cu 5 minute.

36

Remarc: Interogrile de tip Update se execut de regul o singur dat. n cazul


executrii repetate a interogrii definite n exemplul de mai sus, vom obine de
fiecare dat mrirea emisiunilor tiri cu 5 minute.
Dorim s excludem din tabela Emisiuni toate emisiunile al cror timp de ncepere
este ntre ora 1000 i ora 1200.

REZUMAT

In acest modul s-au conturat urmtoarele:


a.Tipurile de interogri posibile n Access 2013 sunt:
- Interogri de selecie -select queries
- Interogri de aciune - action queries
- Interogri ncruciate (de tip table pivot) -crosstab queries
b.Operaiile legate de interogarea tabelelor pot fi :
- Crearea unei interogri
- Adugarea de cmpuri ntr-o interogare
- Definirea cmpurilor obinute prin calcule
- Schimbarea ordinii cmpurilor
- Salvarea interogrilor
- Rularea unei interogri de instrumente.
- Modificarea structurii unei interogri.
c.Grila de interogare conine Field, Table, Sort, Show, Criteria

37

TESTE DE
AUTOEVALUARE
Bibliografie

i operatorul OR.
Pentru realizarea unui criteriu se folosesc operatori, constante,
funcii (asemntoare cu cele din Excel)
1. Ce nseamn grila QBE
2. Care sunt interogrile de aciune
3. Explicai criteriul urmtor Data_C =Date()-1 ataat unui
cmp de tip dat calendaristic
[Sitar-2010], www.cigase.ro

38

MODULUL 4 Utilizarea formularelor n ACCESS


CONCEPTE DE
BAZ

Caracteristici generale ale unui formular


Crearea unui nou formular
Proprieti i metode ale formularelor
Salvarea i rularea unui formular
Descrierea i utilizarea obiectelor grafice

OBIECTIVE

nsuirea tehnicilor de creare a unui formular i de adugare de


obiecte n cadrul formularului respectiv;
Cunoaterea modului de asigurare a proprietilor i metodelor
unui formular;
Cunoaterea principalelor evenimente la nivel de format i a
modului de scriere a codului pentru evenimentele respective;
Cunoaterea obiectelor grafice ce pot fi ntr-un formular
(proprietate, evenimente): butoane radio, liste, casete de validare,
casete de text, butoane de comand.
RECOMANDRI n vederea cunoaterii modului de creare a unui formular, se
PRIVIND
recomand efectuarea de exerciii practice, folosind n acest scop
STUDIUL
Form Wizard i apoi Form Designer;
Dup crearea formularului se vor studia proprietile aferente unui
formular, urmrind aceste proprieti n fereastra Properties;
Se vor introduce apoi n formularul creat o serie de obiecte de pe
bara Form Controls i apoi se vor defini proprietile acestora din
fereastra Properties;
n etapa urmtoare se vor defini evenimentele aferente
formularului i obiectelor incluse n formular i se va scrie
secvena de comenzi pentru fiecare eveniment n funcie de
programul pentru care s-a proiectat formularul;
n ultima etap se salveaz i se lanseaz formularul n execuie.
REZULTATE
La ncheierea studiului acestui modul, utilizatorul trebuie s fie n
ATEPTATE
msur s creeze un formular cu diferite obiecte ncorporate n
formular i s defineasc proprietile i evenimentele aferente
formularului i obiectelor aferente.
Formularul astfel creat s fie testat pe calculator i s permit
executarea corect a programului pentru care a fost proiectat.

Formularul este folosit pentru vizualizarea si editarea datelor din tabela sau interogarea aferente
unei baze de date
Un formular este o fereastr de tipul celor pe care se bazeaz sistemul de operare Windows
Exist dou tipuri de formulare: formulare bazate pe date i formulare care nu au la baz date
(formulare numai cu butoane de comanda, tip meniu)
Formularul este un obiect sau o entitate n care sunt ncapsulate (ascunse):

39

1. setul de proprieti care descrie entitatea: denumire, titlu, dimensiune, poziie, diverse
proprieti ale fundalului sau ale aspectului exterior sau scrisului n cadrul formularului etc
2. metodele (procedurile) care opereaz asupra acestor date i dau comportamentul
entitii. Dintre metodele formular menionm:
Show afieaz un formular i determin dac un formular este modal sau nu;
Hide face un formular invizibil (l ascunde) fr a-l terge din memorie;
Release nchide un formular (terge obiectul din memorie);

Refresh actualizeaz grafica formularului i coninutul obiectelor sale n cazul


modificrilor din timpul rulrii.

De asemeni, formularului, n calitate de obiect, i sunt asociate evenimente (clic, dublu-clic, clic
dreapta, mouse deasupra, obinerea sau pierderea controlului, redimensionarea, acionarea unei
taste etc.).
Formularul (Form):
furnizeaz interfaa grafic (GUI) pentru introducerea datelor n baza de date
utilizatorii finali sunt n general contieni de structura bazei de date (structura tabelelor i
relaiile ntre tabele)
utilizatorii interacioneaz prin intermediul formularelor cu baza de date Access
are una sau mai multe tabele ataate
MS Access ofer o serie de faciliti n vederea crerii unui formular. Astfel se poate alege ntre:
I.generarea automat a unor formulare predefinite (AutoForm: Columnar, Tabular, Datasheet,
PivotTable, Pivotchart);
II.proiectarea asistat a unui formular, caz n care utilizatorul este ndrumat de ctre o serie
de asisteni (Wizards: Form Wizard, Chart Wizard, PivotTable Wizard).
Etapele crerii unui formular sunt urmtoarele:
Pas1. Se selecteaz fila Create din care se acioneaz n zona Forms
Pas2. Se alege una din variantele existente n zona Forms :
Design View crearea formularului cade n sarcina exclusiv a utilizatorului;
Form Wizard utilizatorul va fi asistat la crearea formularului;
Chart Wizard utilizatorul va fi ndrumat n crearea unui formular ce va afia datele sub
form de grafic;
PivotTable Wizard - noul formular va ngloba o tabel pivot generat prin aplicaia Excel
(folosind tehnica OLE).
Un formular este compus din trei pri:
1. antetul;
2. zona de detaliu;
3. subsolul.
n antet se include: numele formularului, sigla firmei (opional) i capul de tabel.

40

n zona de detaliu sunt prezentate datele ce vor fi introduse de la tastatur pentru a fi stocate n
tabela/tabele.
n subsol sunt prezentate, de regul, informaii statice, care nu se schimb cu fiecare nregistrare
editat.
Structura detaliat a unui Formular:
1. Bordura definete chenarul ce va delimita formularul pe ecran.
2. Antetul formularului (Form Header) este folosit, de regul, pentru a afia titlul
formularului. Aceast zon nu este vizibil n modul Datasheet. Dac formularul este
afiat n format Tabular, coninutul zonei de antet nu va fi derulat. Pentru ca aceast zon
s fie disponibil n timpul proiectrii, se selecteaz opiunea View > Form apoi Fila
Arrange/seciunea Show-Hide/Header/Footer.
3. Antetul de pagin (Page Header) este o zon ce apare numai cnd formularul este
tiprit la imprimant. Pentru a fi disponibil n cursul proiectrii selectai Fila
Arrange/seciunea Show-Hide\Page Header/Footer
4. Seciunea de detaliu (Detail) va conine toate controalele necesare afirii/editrii
nregistrrilor.
5. Subsolul de pagin (Page Footer) este afiat numai la tiprirea formularului i poate
conine data curent, numrul de pagin, etc.
6. Subsolul formularului (Form Footer) are aceleai caracteristici cu zona de antet i
poate s conin, spre exemplu, totalul general sau diverse alte controale (butoane pentru
salvare, adugare, tergere de nregistrri etc.).
7. Butoane de navigare sunt afiate numai n timpul execuiei formularului i pot fi folosite
pentru deplasri n cadrul nregistrrilor.
Proprietile obiectelor Forms

41

n cadrul ferestrei Properties, proprietile formularului curent sunt mprite n patru categorii
plus ALL astfel:
I. Format conine atribute privitoare la dimensiune, aspect, coordonatele de afiare ale
formularului etc.;
Caption conine titlul formularului ce va aprea n bara de titlu a acestuia;
Default View specific modul implicit de afiare, folosit la execuia formularului (Single Form,
Tabular Form, Datasheet);
Views Allowed reprezint modurile de afiare ce sunt disponibile n timpul execuiei;
Scroll Bars seteaz barele de defilare vizibile n cursul execuiei (bara orizontal, bara
vertical, amndou sau nici una);
Record Selectors afieaz sau nu selectorul de nregistrare n timpul execuiei formularului;
Navigation Buttons specific dac formularul va conine butoanele de navigare n
cursul execuiei sale;
Dividing Lines precizeaz dac se afieaz linii pentru delimitarea seciunilor
formularului sau a nregistrrilor la execuie;
Auto Center dac este setat pe valoarea Yes, formularul va fi afiat, la execuie, n
centrul ecranului;
Border Style specific tipul bordurii. Setarea acestei proprieti va avea efect i asupra
comportamentului formularului.
II. Data grupeaz proprieti referitoare la sursa de date i nregistrrile aferente
1. Record Source conine sursa de date a formularului (tabel sau interogare).
Aceast proprietate poate conine chiar i o comanda SQL (sunt admise numai cererile
de selecie).
2. Filter conine criteriul de selecie care se va aplica nregistrrilor din formular.
Condiia de filtrare este o clauz SQL WHERE, ns fr s conin cuvntul WHERE.
3. Order By permite specificarea cmpurilor dup care vor fi sortate nregistrrii din
formular. Sintaxa este identic cu sintaxa clauzei SQL, OrderBy.
4. Data Entry dac este setat pe valoarea Yes, formularul nu va afia, la
deschidere, nregistrrile existente. Proprietatea este util pentru formularele ce vor
permite numai adugarea de nregistrri.
5. Record Locks specific dac i ce nregistrri vor fi blocate pentru ali utilizator
(blocarea se poate face fie pentru toate nregistrrile, fie numai pentru nregistrarea
curent).
Controale

42

Controalele sunt obiecte grafice (elemente vizuale) ce sunt incluse n formulare sau rapoarte, n
scopul editrii/afirii datelor sau executrii unor aciuni (ex.: etichete, casete text, butoane, etc.).
Adugarea controalelor se poate face numai n etapele de creare sau modificare a formularelor,
astfel:
din ribon fila Design zona Controls Toolbox se selecteaz butonul aferent controlului dorit;
se descrie, cu ajutorul mouse-lui, o zon dreptunghiular pe suprafaa formularului, definind
astfel poziia i dimensiunea noului control.
Tipuri de controale (obiecte)
a. Obiecte libere nu au legtur cu componentele de date;
b. Obiecte legate sunt conectate la date (tabele, interogri, cmpuri, variabile i tablouri).
Proprietile ControlSource (pentru cmpuri i variabile) sau RecordSource (pentru tabele)
trebuie s fie setate (rol important, specificnd tipul sursei de date)
Exemplu
Dac o caset de text va afia datele din cmpul Denumire din cadrul tabelei Parteneri.dbf
ntr-un formular, atunci proprietatea ControlSource se va seta la valoarea
Parteneri.Denumire;
n cazul n care caseta de text se leag de o variabil de memorie specific aceluiai cmp,
atunci aceeai proprietate va fi configurat pe valoarea m.Denumire.

43

44

Proprieti controale
1. Proprieti din categoria Format:
Format specific modelul (masca) de afiare a datelor (numai pentru casetele text);
vezi definire structura c\mpuri din tabel
Decimal Places indic numrul de zecimale cu care vor fi afiate datele (numai pentru
casete text);

2. Proprieti din categoria Data:


Control Source conine sursa de date a controlului i poate fi:
Numele unui cmp (pentru controale legate);
O expresie de calcul precedat de semnul "=" (pentru casete text nelegate).
Ex: =[Cantitate]*[Pre] unde [Cantitate] i [Pre] sunt denumirile a dou cmpuri (sau
controale) din formular;
- Input Mask indic formatul folosit la introducerea datelor (numai pentru casete text)

45

- Default value specific valoarea implicit (valoarea prin lips) a controlului


- Validation Rule conine regula dup care se face validarea datelor introduse n control.
La execuia formularului, mai nti se verific regula de validare a controlului i apoi cea a
cmpului ataat. Proprietatea validation rule poate fi folosit pentru definirea unor restricii
asupra cmpurilor din tabele diferite.
Validation Text specific mesajul ce va fi afiat, atunci cnd regula de validare este
nclcat;
Enabled activeaz sau dezactiveaz controlul. Un control dezactivat va fi inaccesibil la
execuia formularului;
Locked servete la protejarea datelor afiate de control (controlul va deveni read-only).
3. Proprieti din categoria Other:
Name conine numele controlului. La creare, fiecare control primete un nume unic,
format din tipul su plus un numr de ordine (ex: TextBox5). Utilizatorul poate modifica
acest nume, schimbndu-1 cu unul mai sugestiv. Controalele legate, generate automat de
Wizards, au numele identice cu denumirile cmpurilor ataate;
Status Bar Text specific mesajul afiat n bara de stare, n momentul selectrii
controlului;
Tab Stop dac este setat pe valoarea Yes, atunci controlul poate fi accesat cu ajutorul
tastei Tab.
Tab Index specific numrul de ordine al controlului, n funcie de care acesta va fi
accesat cu ajutorul tastei Tab. Toate controalele editabile vor primi un numr de ordine
unic, la creare. Acest numr poate fi modificat fie prin aceast proprietate, fie prin opiunea
View-TabOrder din meniul Access;
Control Tip Text conine mesajul afiat ntr-o fereastr ToolTip.
Pentru crearea unor controale complexe (casete combinate, casete de tip list etc.),
proiectantul poate fi asistat de programele control wizards.

46

REZUMAT

Formularul poate fi considerat ca o fereastr avnd toate atributele unei


ferestre sub Windows: bara de titlu, caseta meniului de control, butoane de
minimizare, maximizare, nchidere. In plus, acestea reprezint un obiect avnd
ca toate celelalte obiecte, proprieti, metode i evenimente asociate. Acestea
definesc aspectul exterior al formulare i determin n acelai timp
comportamentul acestuia n diverse situaii.
Modaliti de creare a unui formular
Crearea unui formular se poate realiza n unul din urmtoarele moduri:
- prin intermediul formularelor predefinite
- prin Design View
- prin intermediul utilitarului Form Wizard
La un formular se pot aduga diverse tipuri de controale text box, butoane
de comand, obiecte OLE etc.
Fereastra Properties este comun formularului i tuturor obiectelor din
formularul creat.
Fereastra Properties afieaz la deschidere proprietile i metodele obiectului
curent selectat. Pentru a edita proprietile sau metodele altui obiect, mai nti
se va selecta obiectul respectiv n caseta Object. In cadrul ferestrei Properties
se va selecta apoi proprietatea sau metoda ce urmeaz a fi modificat din lista
Property and Events i se tasteaz noua valoare n cutia de editare Property
Setting n cazul unei proprieti.
Fiecare obiect se caracterizeaz prin atributele stare i comportament. Starea
unui obiect se definete prin proprietile sale, iar comportamentul prin
metodele pe care pe poate executa i evenimentele la care poate rspunde.
Principalele evenimente i metode la nivel de formular
Principalele metode asociate comportamentului unui formular i obiectelor
Teste
de 1. nchiderea formularului activ se poate realiza prin:
autoevaluare
a) clic pe butonul de nchidere al formularului;
b) opiunea CLOSE din meniul de control al formularului;
c) nici una
Rspuns: a, b

Bibliografie

2.Care sunt seciunile unui formular


3.Enumerai cteva proprieti ale unui control de tip Text Box ce este legat la
un cmp al tabelului
[Sitar_2010], www.cigase.ro

47

MODULUL 5 RAPOARTE exemplificate cu Access


CONCEPTE
DE BAZ

Raport din punct de vedere conceptual


Componentele unui raport
Controalele raportului
Constructorul de rapoarte
Gestiunea rapoartelor (creare, modificare, exploatare i tergere)
Asisteni pentru gestiunea rapoartelor i utilizarea lor;

OBIECTIVE

Familiarizarea cu semantica general legat de rapoarte.


Familiarizarea cu structura rapoartelor .
Formarea deprinderilor de creare i utilizare a rapoartelor.

RECOMANDRI
PRIVIND
STUDIUL

Se vor proiecta din punct de vedere conceptual machete de rapoarte i


de meniuri.
Se vor studia cu atenie constructorii celor dou categorii.
Se vor crea diferite rapoarte pentru aplicaii economice.

REZULTATE
ATEPTATE

Dup parcurgerea acestui modul utilizatorul trebuie s fie n msur s


defineasc i foloseasc corect rapoartele i s neleg complexitatea
unor aplicaii complexe din informatica economic.

n literatura de specialitate exist definiii mai mult sau mai puin formalizate ale acestui obiect.
Raport prezentarea informaiilor referitoare la o anumit tem efectuat, de obicei, ntr-o
form tiprit. Programele de baze de date pot oferi funcii speciale de creare i generare de
rapoarte [Microsoft99].
Raportul este o extragere a datelor din baza de date. El poate fi tiprit pe ecranul calculatorului
sau pe orice alt dispozitiv de ieire [Kroenke92].
Pentru orice raport avem dou momente importante:
crearea machetei raportului (simplist crearea raportului);
exploatarea acestei machete (vizualizarea raportului).
Raportul reprezint un ansamblu de informaii obtinute pe baza datelor din anumite tabele,
informaii ce urmeaz s fie afiate pe ecran sau redate la imprimant.
Informaiile tiprite pot fi grupate, filtrate, sortate ; se pot obine rezultate sintetice cum ar fi
subtotalurile i totalurile.
Spre deosebire de form, raportul are specific faptul c informaia, culeas din tabele, este
prezentat utilizatorului, el nefiind conceput pentru actualizri de date i nefiind aplicaie.
Asemeni formularelor, rapoartele au drept surs de date un tabel sau o cerere.
Coninutul lor poate fi vizualizat pe ecran, sau se poate lista la imprimant. Cu Microsoft Access
se pot realiza obiecte de tip raport utiliznd opiunea CREATE din meniul principal i apoi
alegerea uneia din variantele afiate n fereastra REPORTS:

48

Vizualizarea obiectelor de tip raport


Moduri de vizualizare rapoarte :
1. Report View - elementele componente, fr a fi afiate i marginile acestuia .
2. Print Preview cum apare la imprimant
3. Layout View - afieaz coninutul raportului, marcndu-se cu ajutorul unor linii punctarea
marginilor lui, permite redimensionarea controalelor, putndu-se realiza ncadrarea lor n pagin.
4. Design View - permite editarea i formatarea coninutului raportului

Raport n modul de vizualizare LAYOUT VIEW


VIEW

49

Raport n modul de vizualizare DESIGN

Raport n modul de vizualizare PRINT PREVIEW


Structura unui raport difer n funcie de :
.Formatul de afiare al datelor n raport - datele se pot afia pe linii sau pe coloane, cel mai
frecvent fiind formatul pe linii, unde fiecare linie reprezint o nregistrare din tabel.
.Complexitatea raportului - un raport poate conine numai nregistrri sau nregistrri,
totaluri i subtotaluri. Orice raport reprezint, la rndul lui, un obiect i conine 2 pri:
1. structura de date: include tabela sau tabelele din care se preiau datele aferente
raportului

2. structura de afiare: conine benzile sau zonele ce compun raportul i obiectele


incluse n raport (controale)

Seciunile unui raport sunt:


Report Header (Antet raport) - este seciunea care se imprim o singur dat la nceputul
raportului. n aceast seciune se include de regul, o sigl, un titlu pentru raport, data
calendaristic. Antetul raportului este prima seciune din raport, poate s lipseasc, dar n cazul n
care exist, se imprim nainte de antetul paginii. Dac n antetul raportului se plaseaz un control
calculat, ce utilizeaz o funcie agregat, funcia respectiv se va aplica ntregului raport.
Page Header (Antet pagin) se va imprima pe fiecare pagin, n partea superioar. De obicei, n
aceast seciune se introduc etichetele coloanelor pentru a fi repetate la fiecare pagin.
Group Header (Antetul de grup) se imprim la nceputul fiecrui grup de nregistrri. Se utilizeaz
pentru numele grupului de nregistrri, dac s-au constituit grupuri n cadrul raportului.
Cnd se plaseaz un control calculat n antetul de grup, ce utilizeaz o funcie agregat,
funcia se aplic numai grupului respectiv.
Detail (Detaliu) formeaz corpul principal al raportului, va conine sursa de date pentru raport,
imprim fiecare rnd din sursa de date. Poate s conin controale calculate cu legtur, dar i
controale fr legtur.
Group Footer (Grupul de subsol) poate s apar la finalul fiecrui grup de nregistrri. n el se vor
regsi informaii rezumative pentru grup.
Page Footer (Pagin de subsol) se imprim la finalul fiecrei paginii, dac exist i dac s-au
inserat controale n cadrul ei.

50

Report Footer (Subsolul raportului). Coninutul acestei seciuni se va imprima o singur dat - la
finalul raportului. Va conine informaii de rezumat, pentru ntregul raport i totaluri - la nivel de
raport.

In imaginea de mai sus este prezentat un raport n modul de vizualizare Design View cu cele trei
seciuni importante.
Proprieti ale benzilor i raportului
1. Fiecare band va afia n raportul final un numr de instane ale sale n funcie de tipul de
band.
2. Fiecare zon sau band a raportului are n fereastra constructorului de rapoarte asociat o bar
prin care se delimiteaz de alte zone. Fiecare bar sau zon a raportului are anumite
proprieti, care pot fi modificate de utilizator. Pentru a se seta aceste proprieti se face un
dublu clic pe bara delimitatoare a benzii dorite, avnd ca efect afiarea pe ecran a unei ferestre
cu titlul benzii respective.
3. Toate ferestrele aferente unei benzi au aceeai structur, doar denumirea acestora difer n
funcie de tipul benzii la care se refer. In cadrul ferestrei aferent unei benzi se poate seta
nlimea benzii prin intermediul unui obiect de tip Spinner cu denumirea Hight sau se poate
seta aceeai dimensiune pentru toate instanele unei benzi tot prin intermediul unui Spinner cu
numele Constant band height.
4. De asemenea, la afiarea unei instane a unei benzi se pot specifica anumite prelucrri pentru
dou evenimente aferente unei instane, astfel:
a) nainte de afiarea fiecrei instane a benzii se poate evalua o expresie introdus n caseta
On Entry. Dac expresia este mai complex, poate fi construit i specific n fereastra
Expression Build care se deschide prin selectarea butonului cu trei puncte din dreapta
casetei On entry.
b) dup fiecare afiare a instanei unei benzi se poate evalua o expresie introdus n caseta On
exit sau n fereastra Expression Build.
n afar de proprietile aferente benzilor, un rol important l au proprietile aferente raportului n
ansamblul su, care se refer la:
- mrimea paginii pe care se va afia raportul
- orientarea paginii

51

- marginile exterioare ale paginii


- limea coloanelor i spaiile dintre ele n cazul unui raport multicoloan
- tipul de imprimant n cazul tipririi raportului la imprimant.
Pentru a seta aceste proprieti se afieaz pe ecran fereastra Page Setup, prin selectarea opiunii
cu acelai nume din fila File.
Prin selectarea butonului Print Setup se afieaz pe ecran o fereastr n care se poate seta tipul de
imprimant, dimensiunea hrtiei utilizate la imprimare i orientarea acesteia (Portrait sau
Landscape).
RAPOARTE cu WIZARD
In prima pagin a expertului Report Wizard se execut urmatoarele:
In caseta combinat Tables/Queries se selecteaza tabela sau interogarea care va sta la baza
raportului (sursa de date a raportului).
In lista Available Fields se execut dublu-clic pe cmpurile ce se vor adauga pe raport prin
>. Pentru a include toate cmpurile se poate executa clic pe butonul Select All >>
Se execut clic pe butonul Next pentru a continua crearea raportului

In a doua pagin a expertului, se precizeaz dac se adaug niveluri de grupare. Pentru a adauga
un nivel de grupare, se selecteaz lista de cmpuri i apoi se execut clic pe butonul <. Dup
adugarea grupurilor se execut clic pe butonul Next. Dac nu se dorete adugarea de grupuri, se
execut direct clic pe butonul Next. Se pot aduga mai multe niveluri de grupare.
Gruparea datelor este operaia cunoscut de la interogrile totalizatoare i presupune cutarea
tuturor nregistrrilor (rndurilor) din tabela surs care conin aceeai valoare pentru cmpul
stabilit drept criteriu de grupare i realizarea afirii nregistrrilor consecutiv.
A se vedea imaginea de mai jos:

52

In a treia pagina a expertului, dac se dorete, se stabilesc criteriile de sortare a nregistrrilor


raportului. Pentru a continua, se execut clic pe butonul Next .

In a patra pagina a expertului se stabilete macheta raportului (opiunile din zona Layout ) i
orientarea textului tiprit (opiunile din zona Orientation). Pentru a continua crearea raportului, se
executa clic pe butonul Next.
Not - Dac exist cmpuri numerice n aceast fereastr apare i un buton numit Summary Options care
permite realizarea unor operaii totalizatoare (agregare) din cadrul grupului, pentru care se vor
calcula totaluri ,subtotaluri , AVG, MAX, MIN.

In a cincea pagin a expertului se stabilete numele raportului i ce se va face dup ce raportul a


fost creat. Dac se las opiunea implicit, Preview the report , dup ce s-a creat raportul acesta
este afiat n modul Preview pentru a fi previzualizat. Dac se selecteaz opiunea Modify the
reports design, dup creare raportul va fi deschis n modul Design View pentru a-l modifica.

53

Se executa clic pe butonul Finish . In funcie de opiunea aleas n ultima pagina a expertului, raportul
va fi afiat n modul Preview sau n modul Design . In figura de mai jos se observ modul
Preview:

Gruparea datelor n rapoarte


n practic, foarte frecvent rapoartele trebuie s conin informaii privitoare la grupe de articole
din tabelele de date pentru care sunt ele elaborate, grupele respective formndu-se pe anumite
criterii. Fiecare criteriu de grupare este descris printr-o expresie pe care o numim expresie de
grupare sau cheie de grupare; ea conine unul sau mai multe cmpuri ale tabelei de date pentru
care se elaboreaz raportul. Acele instane, pentru care expresia de grupare are aceeai valoare,
alctuiesc un grup. Deci, ntr-un raport cu datele grupate dup o cheie de grupare, exist attea
grupuri cte valori distincte are cheia de grupare respectiv. n exemplul anterior, de cte ori se
schimb valoarea cheii care descrie anul, se schimb grupul.
Gruparea datelor se poate realiza pe un nivel sau pe mai multe nivele de grupare. In general,
numrul nivelelor de grupare nu este limitat. In cazul gruprii datelor, raportul va conine, pe lng
benzile care s-a vzut deja c le poate conine un raport, i benzile pentru gruparea datelor. Astfel,
pentru fiecare nivel de grupare se definete o band de antet de grup i o band de picior de grup.
Antetul, respectiv piciorul fiecrui grup va conine informaii introductive, respectiv informaii de
sintez referitoare la grupul respectiv.

54

Pentru gruparea datelor se selecteaz opiunea Data Grouping din meniul vertical Report sau
executnd un click cu butonul dreapta al mouse-ului apare meniul contextual din care se poate
selecta opiunea Data Grouping .Indiferent de modul de lansare, apare chenarul corespunztor.
Dup cum se poate constata, n chenarul Data Grouping apare o list simpl cu denumirea Group
expressions. n fiecare linie a listei se poate introduce cte o expresie de grupare. n cazul nostru
am introdus linia de studii, secia, anul i urma s introducem grupa. Pentru modificarea acestei
ordini se poate proceda cum se procedeaz n mod uzual cu schimbarea ordinii elementelor dintr-o
list i anume: sau se trage (operaie de drag) cu butonul stnga al mouse-ului apsat de butonul
din stnga al opiunii (cel cu sgeat dubl), n sus sau n jos mutnd opiunea, sau se execut un
click cu butonul din stnga al mouse-ului i se tasteaz Ctrl+PgUP pentru a muta opiunea cu o
poziie n sus, respectiv Ctrl+PgDn pentru a o aduce cu o poziie n jos.
Pentru introducerea expresiei de grupare se poate fie tasta direct valoarea expresiei, fie se poate
executa un click pe butonul din dreapta liniei respective, operaie care declaneaz apariia
ferestrei constructorului de expresii cu care se poate construi expresia de grupare.
Pentru tergerea unei expresii de grupare se execut un click pe linia de ters i se execut cu click
pe declanatorul Delete. Opiunea curent va fi tears, iar opiunile urmtoare vor avansa cu cte
o poziie.
Controale i Proprieti n rapoarte
Toate informaiile afiate n cadrul unui raport sunt specificate prin intermediul unor obiecte.
Aceste obiecte se pot include n cadrul unui raport, prin preluarea lor din bara Report Controls,
care se afieaz pe ecran odat cu lansarea constructorului de rapoarte.
Pentru includerea unui obiect n raport, se selecteaz obiectul dorit din bara Report Controls i se
execut un click pe suprafaa raportului, acolo unde dorim s apar obiectul respectiv.
Dup includerea n raport a unor controale, n funcie de compexitatea acestuia, utilizatorul poate
modifica proprietile oricrui control, prin efectuarea unui dublu clic pe controlul respectiv.
Un raport creat n modul Report Wizard poate fi modificat oricnd n modul de lucru Report
Design prin intermediul unor controale: asociate, neasociate sau calculate.
Controlul asociat ( bound control) se refer la cmpurile de date dintr-un tabel sau interogare.
Controlul neasociat (unbound control)se refer la etichetele sau casetele text introduse de
utilizator.
Controlul calculat (calculate control) cuprinde toate calculele din raport cum sunt: subtotaluri,
totaluri generale, procente, medii aritmetice, etc.
Controalele sunt aceleai cu cele de la formulare
Controlul Text Box - afieaz coninutul unui cmp specificat din
nregistrarea actual a unui tabel sau a unei interogri dintr-o baz de date, sub forma
unei cutii (caset) de text.
Controlul Label este utilizat de regul pentru afiarea anumitor texte
statice;

55

Butonul de comand (Button) creaz un control de tip buton prin care


utilizatorul poate lansa n execuie diferite aciuni.
Cutia (caseta) de validare (Check Box) creeaz un control care are dou
stri: selectat sau neselectat; acest control afieaz un marcaj de validare cnd este
selectat. O caset de validare arat dac o anumit condiie este ndeplinit sau nu.
Casetele de validare ofer utilizatorilor alternative de tipul Da/Nu sau Adevrat/Fals.
Controale al cror scop este crearea de efecte grafice n cadrul unei
aplicaii:
a.

Controlul linie (Line) permite desenarea diferitelor linii pe o form, ntro mare varietate de stiluri. Stilul, grosimea i culoarea unei linii pot fi
setate folosind proprietile Border Style, Border Width i Border Color.
b. Controlul dreptunghi (Rectangle) permite desenarea unui dreptunghi sau a
unui ptrat. Conturului acestor forme geometrice i pot fixa stilul,
grosimea i culoarea asemeni unei linii.
c. Controlul imagine (Image) permite afiarea pe forma utilizatorului a unei
imagini n mai multe formate
d. Controlul Chart permite realizarea graficelor, pe baza datelor provenite
din tabele sau interogri.
Sub-Rapoarte
Controlul Subform/Subreport
introduce un subraport n raportul principal numai n
raportele care se realizeaz pentru
tabele ce au ntre ele relaie de tip unu- la- mai muli.

REZUMAT

Seciunile unui raport


Modaliti de vizualizare ale unui raport
Adugarea controalelor ntr-un raport

Teste
de Ce reprezint un raport ?
autoevaluare
Ce obiecte poate include un raport ?

Sunt diferite aceste obiecte de cele incluse ntr-un formular ?


Raportul pentru a putea fi vizualiat:
a. Se ruleaz prin RUN
b. Se vizualizeaz n modul Print Preview
Rspuns: b
Bibliografie

[Sitar_2010], www.cigase.ro

56

S-ar putea să vă placă și