Sunteți pe pagina 1din 12

Baze de date ACCESS 2007 Fie de lucru prof. ing.

Ioan Marius PAVEL

F I A Nr. 1

A. Crearea unei baze de date pornind de la zero


1. O s ncepem s crem o baz de date nou. Deschidem aplicaia Microsoft
Access 2007:
Dm dublu clic pe pictograma sau START programs.

O s alegem BlankDatabase. Putem de asemenea s ncepem de la


un anumit ablon (template) de baz de date, deja disponibil. Dm un nume acestei baze
de date, de exemplu FIRMA.accdb.
Observai c i extensia acestei baze de date s-a schimbat. Apsm Create, i n
acest moment putem s crem componentele unei baze de date.
Observai c interfaa Access pornete deja cu un tabel nou.
O s stabilim cteva repere pentru a fi mai uor de neles urmtoarele lecii:
Orice coloan dintr-un tabel se numete field(cmp);
Orice linie dintr-un tabel se numete record (nregistrare);
Intersecia dintre o linie i o coloan se numete value(valoare).

Cea mai important linie dintr-un tabel este acea linie care definete tabelul.
Ea se numete cap de tabel (sau structura de baz). Acesta este primul
lucru pe care l crem atunci cnd vrem s facem un tabel.
Capul de tabel conine definiia coloanelor din tabelul respectiv.

B. Crearea unui tabel


2. Vom crea un prim tabel numit Clienti. Observai c imediat dup ce am
nceput s crem baza de date, Access se ateapt s crem capul de tabel.
Exist dou moduri de vizualizare ale unui tabel (din ribbon-ul contextual

Datasheet> Views): DatasheetViews, ce ne permite s crem


structura tabelului i s introducem datele n acelai timp, i

Design Views. .
n momentul n care alegem s crem un tabel n

Design Views, . Access va cere imediat s


introducem numele acestuia. Completm numele Clienti i dm OK.
Completm coloanele tabelului, specificnd tipul de date pentru fiecare coloan n
parte, astfel:
ID_CLIENT coloan de tip AutoNumber (Numerotare automat 1,2,3,..)
Nume, coloan de tip Text ;
Oras, coloan de tip Text ;
Salariu, coloan de tip Number (Numr)
(observm c la tipul Number nite subtipuri de date: alegem Longinteger-
ntreg lung).

Colegiul Tehnic Gh. Asachi Iai 1


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

n acest moment putem vizualiza tabelul n modul Datasheet View

(ribon-ul contextual Datasheet>Views) pentru a putea introduce


nregistrrile.

Apsai YES dac Access v cere s salvai datele.


Navigarea de la o valoare la alta se poate face apsnd tasta Tab

Colegiul Tehnic Gh. Asachi Iai 2


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

F I A Nr. 2
Crearea constrngerilor
Constrngerile sunt nite reguli, nite condiii logice pe care le putem impune
coloanelor, n interiorul unor tabele. De exemplu coloana Salariu nu are voie s accepte
valori mai mici dect salariul minim pe economie (Salariu > 700). Mergem n modul de

vizualizare Design View.


Ne poziionm pe coloana Salariu. Observai c fiecare coloan are o serie de
proprieti n partea de jos a ecranului Fieldsize, Format, etc.

Dac vrem s stabilim


pentru coloana salariu o condiie
logic, mergem n cmpul
ValidationRule i facem click
pe butonul din dreapta
cmpului.
Se deschide o fereastr
n care putem s introducem
condiia logic. n primul cmp
scriem: Salariu>=700, i
apsm OK.
nValidation Text vom introduce un mesaj text ce va aprea pe ecran n mod
automat atunci cnd condiia nu este ndeplinit. Ex: Salariul trebuie s fie mai
mare dect 700.

Salvm modificrile i mergem n modul DatasheetView.

Colegiul Tehnic Gh. Asachi Iai 3


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

Pentru una dintre


nregistrri modificm salariul la
699. n momentul n care vrem s
plecm de pe linia respectiv,
apareValdation Text-ul i nu
putem prsi cmpul atta timp ct
condiia menionat nu este
ndeplinit.
Putem apsa tasta Esc
pentru a prsi cmpul, care va
reveni la valoarea anterioar.
Atunci cnd modificm valoarea
la una mai mare sau egal cu 700,
mesajul nu va mai fi afiat.
Este recomandat s
folosim constrngeri pentru a fi
siguri c n baza de date nu ajung dect valori conforme cu realitatea.

Colegiul Tehnic Gh. Asachi Iai 4


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

F I A Nr. 3
Crearea relaiilor
S presupunem c avem o tabel unde inem datele despre copii angajailor. Din
ribbon-ul Create crem un nou tabel (Table).

Mergem n modul de vizualizare Design View, pentru a realiza


structura tabelului. n acest moment introducem numele noului tabel: COPII. Apsm OK.
Structura tabelului va
fi urmtoarea:
ID_COPIL, de tip
Autonumber;
Prenume, de tip Text;
DataN, de tip
Date/Time.

Salvm modificrile i mergem n modul DatasheetView.


Introducei o serie de date ca n imaginea de mai jos.
Acum avem dou tabele:
ANGAJAI i COPII. Aa
cum n viaa real exist o
legtur ntre angajai i
copii lor, aa i n Access
trebuie s avem acea
relaionare ntre cele dou
tabele, intre cele dou entiti separate.
Observm ca deocamdat cele dou tabele sunt complet independente i nu exist
nimic comun acestora.

n tabela COPII mergei in modul Design View.


Adugm o nou coloan imediat dup coloana ID_COPIL: facem click dreapta
pe linia Prenume i alegem Insert rows.
Introducem numele ID_Parinte i ca tip alegem acelai ca i PrimaryKey-ul din
ANGAJATI ID_CLIENT (Number).

Salvm i revenim n modul DatasheetView.

Colegiul Tehnic Gh. Asachi Iai 5


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

Pentru a stabili exact relaia, adic pentru a specifica faptul c


datele din coloana ID_CLIENT din ANGAJATI este replicat n
ID_Parinte din COPII, mergem n DatabaseTools>Relationships.
Selectm ambele tabele i apsm Add, apoi Close.

Cele dou tabele nu sunt nc relaionate. Tragem (Drag&Drop) coloana


ID_CLIENT din ANGAJATI peste coloana ID_Parinte din COPII. n fereastra deschis
bifm checkbox-ulEnforceReferentialIntegrity. Apsm Create.

Atenie ! Este obligatoriu s nchidem tabelele nainte de a face aceast operaie de


relaionare.
Observm c apare relaia 1 la n (1 la ).

Deschidem tabela COPII. Coloana ID_Parinte stocheaz ID-ul corespunztor


printelui. De exemplu, dac n prima linie scriem 1, stabilim c printele lui Gigel este
Ionescu, care are ID_CLIENT 1 n tabela ANGAJATI.
Tot n coloana ID_Parinte introducem 1 i pentru linia 3 (Mirela). Asta nseamn
c printele Ionescu are doi copii: Mirela i Gigel. Introducem 3 n coloana ID_Parinte din
rndul 2 (Vasilescu are un singur copil, Anuta)

Colegiul Tehnic Gh. Asachi Iai 6


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

F I A Nr. 4
Crearea unei interogri
Avem dou tabele: ANGAJATI i COPII. Cele dou tabele sunt relaionate: unei
linii din tabela ANGAJATI i corespunde mai multe linii din tabela COPII. Se poate observa
n tabelul ANGAJATI c pentru Ionescu avem dou nregistrri n tabela COPII.
Una dintre cele mai puternice operaii n
Access este aceea prin care reuim s
interogm diferite obiecte. De exemplu, putem
s interogm ambele tabel n acelai timp i s
aflm care este fiecare angajat, i care este
copilul fiecrui angajat.
Din ribbon-ulCreate alegei Query
Design.
Alegem ambele tabele, apsm Add, apoi
Close

Observm c este evideniat i relaia dintre cele dou tabele. n acest moment
putem s vedem orice fel de informaie stocat n aceste tabele.
Facem dublu-click pe
coloana Nume din tabela
ANGAJATI, i ea este introdus
automat n aceast interogare.
Mai adugm Salariu din
tabela ANGAJATI i Prenume
din tabela COPII:
Apsm Run, din ribbon-ul contextual Design > Result.
Se vor afia nregistrrile gsite:
Observm c informaiile despre
Ionescu se repet, pentru c el are doi copii.
Ne ntoarcem n Design View.

Ce este interesant, i aici


vedem cu adevrat puterea
interogrilor, este c vom putea
s stabilim orice condiii logice
dorim, vom putea s filtrm
tabelele din Access stabilind
nite condiii logice.
De exemplu, la angajai nu vrem dect acei angajai care au un salariu mai mare de
Colegiul Tehnic Gh. Asachi Iai 7
Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

2000. n linia Criteria, corespunztoare coloanei Salariu din interogare, introducem


condiia: >=2000 .

Apsm din nou Run i observm c


singurul angajat care are salariul mai mare de
2000, i are i copii, este Vasilescu.
Ne ntoarcem n modul Design

View n acest moment putem s salvm


aceast interogare pentru a o refolosi mai trziu. Din
Quick Access Toolbar apsm Save i introducem
numele interogrii: 1 Angajatiiplatiti bine cu
copii. ApsmOK.
nchidem designerul de interogare, i putem observa c n acest moment, n meniul din
partea stng a ecranului avem dou tabele i o interogare cu numele menionat mai sus.
Oricnd interogarea poate fi modificat fcnd click dreapta pe ea i alegnd Design
View.

n baza noastr de date mai facem o interogare: toi copii nscui dup o anumit
dat (anul 2001).

Colegiul Tehnic Gh. Asachi Iai 8


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

F I A Nr. 5

Crearea unui raport


Un raport nu este altceva dect o interogare dintr-o baz de date ce urmeaz a fi
interpretat de o anumit persoan. Acea persoan dorete s vizualizeze respectivele date
ntr-un mod ct mai plcut astfel nct s poat ct mai uor s extrag o informaie
relevant.
La rapoarte conteaz foarte mult dou aspecte:
Partea estetic (layout): culori, border-uri, tabele;
Forma n care sunt prezentate datele: antet, subsol, conditional
formatting.
Avem deja dou interogri salvate.
Pentru a face un raport mergem n ribbon-ul Create i alegem Report Wizard.

Vrjitorul (Wizard) ne ntreab ce st la


baza raportului nostru. Putem alege dintre
tabelele i interogrile deja create. Alegem Putem s grupm datele ntr-un anumit fel,
tabela ANGAJATI. Acum putem s selectm dar nu avem nevoie aa c apsm butonul Next.
coloanele de care avem nevoie n raport. Alegem
: Nume, Oras, Salariu. Apsm butonul Next.

Colegiul Tehnic Gh. Asachi Iai 9


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

Putem de asemenea s menionm Putem s alegem layout-ul raportului.


modul de sortare. Vom alege s sortm dup Vom bifa Tabular (unul dintre cele mai
Nume, cresctor. Apsm butonul Next. comune) mpreun cu orientarea paginii
Portrait. Apsm butonul Next.

Alegem un template (ablon) pentru


raportul nostru. Avem n list o serie de stiluri
predefinite care conin anumite atribute de n final dm un nume raportului:
formatare. Alegem Northwind i apsm Next. Raport Angajati simplu. Apsm Finish.

Observai c raportul este tabela ANGAJATI, dar aspectul fizic, estetic, este diferit de cel
din baza de date.

Colegiul Tehnic Gh. Asachi Iai 10


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

F I A Nr. 6
Crearea unui formular
Formularele reprezint ferestre ce permit adugare, modificarea,
tergerea datelor dintr-o baz de date. Formularele sunt special create astfel
nct s permit ct mai facil i rapid operaiile de mai sus.
Din ribbon-ul Create alegei More Forms>FormWizard pentru
crearea unui formular.
n fereastra de wizard deschis alegem Access i-a dat seama c am ales date din
cmpurile Salariu, Oras i Nume din tabela dou tabele i acum trebuie s alegem care dintre
ANGAJATI, iar din tabela COPII, alegem ID_Parinte, ele este Parent. Alegem tabela ANGAJATI i apsm
Prenume i DataN. Vom putea s modificm datele Next.
din dou tabel n acelai timp. Apsm Next.

Ca layout alegem modul Tabular. Dm Next. Alegem un stil de formatare i apsm Next.

n final, completm numele pentru formular i


subformular:
Formde input Angajati-COPII
COPII Subform
Apsm Finish.
Observai c avem o singur fereastr de unde
am putea modifica i angajai (partea de sus) i copiii
angajailor (partea de jos, n funcie de printele
selectat).

Colegiul Tehnic Gh. Asachi Iai 11


Baze de date ACCESS 2007 Fie de lucru prof. ing. Ioan Marius PAVEL

Exist dou modaliti


de navigare :
Navigarea de
jos, care ne permite s
navigm ntre liniile
din parent
ANGAJATI;
Navigarea din
tabela child COPII
care ne permite s
navigm ntre copii
angajatului respectiv.

Dac vrem s trecem la urmtorul angajat, apsm butonaul


Next Record,. din partea de jos.

Observm c acum este afiat angajatul Popescu care nu are nici un copil.
Cu acest instrument putem s facem orice operaie de modificare fr a mai fi nevoie s
deschidem ambele tabele. De exemplu, revenind la primul angajat, Ionescu, apsm New

Record n tabela child (COPII).Introducem prenumele


Ionica i data naterii.

n acest moment nu numai c a fost introdus n tabel copilul Ionica, dar el a fost asignat
angajatului Ionescu. Dac deschidei tabela COPII observai noua nregistrare pentru Ionica, care
are deja la Parinte_ID valoarea 1 (care l reprezint pe angajatul Ionescu).

n acest Formular nu se pot face numai adugri de linii noi, dar i modificri, sortri,
filtrri, s.a.m.d.

Colegiul Tehnic Gh. Asachi Iai 12

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