Documente Academic
Documente Profesional
Documente Cultură
În exercițiul următor vom crea în MS Access 2013 tabele pentru următoarele relații:
După cum ați intuit deja, este vorba despre un lanț de magazine, pentru care vrem să înregistrăm
bonurile emise și mărfurile vândute pe fiecare bon.
Începem prin a deschide MS Acces și din opțiunile disponibile de creare alegem Blank Desktop
Database, pentru a crea o bază de date stocată într-un fișier pe discul local al calculatorului la care
lucrăm. Apăsăm simbolul de folder și navigăm pe desktop (pentru a regăsi mai ușor fișierul) apoi la
denumire trecem Bonuri.accdb. Ecranul trebuie să arate în felul următor:
Apăsăm apoi butonul Create. Puteți minimiza fereastra Access și veți regăsi pe Desktop fișierul
Bonuri.accdb. Să observăm că spre diferență de Excel sau Word, unde putem introduce date într-un
document nou fără să salvăm în prealabil, Access necesită salvarea bazei de date pentru a începe
lucrul. Extensia .accdb denotă un fișier Access Database. Acest fișier va stoca tabelele precum și
celelalte obiecte pe care le vom crea în baza noastră de date.
1. Bara de meniuri;
2. Lista de obiecte (All Access Objects). Deocamdată avem o singură tabelă, creată automat la
deschiderea programului, denumită implicit Table 1;
3. Zona de lucru. Aici se editează toate obiectele cu care lucrăm. Deocamdată avem deschisă
aici Table 1 în modul de introducere de date, care este foarte similar cu ecranul Excel. Table
1 are o singură coloană, denumită ID și creată implicit;
4. În această zonă avem două butoane pentru comutarea tabelei în modul de introducere date
(stânga) denumit Datasheet View și modul de editare (dreapta) – Design View. Mergeți cu
mausul deasupra celor două butoane și veți observa că apar denumirile.
Apăsați acum pe butonul Design View pentru a edita tabela, salvați-o sub numele „Magazin”;
ecranul va arăta astfel:
Acum suntem în modul Design și observăm următoarele zone:
1. Lista obiectelor, unde observăm că numele tabelei s-a modificat și acum este Magazin;
2. Zona de editare a câmpurilor (coloanelor) tabelei.
a. Selectați câmpul ID și schimbați-l în CodMagazin, conform cu numele cheii primare
din tabela noastră Magazin (vezi începutul documentului pentru numele tabelelor și
al coloanelor);
b. La Data Type lăsăm tipul AutoNumber, care va genera automat o secvență de
numere crescătoare, potrivită pentru cheia primară a tabelei;
c. La Description putem adăuga o descriere opțională a câmpului; scrieți „Aceasta este
cheia primară”. Descrierile sunt foarte folositoare când lucrăm în echipă și colegii
noștri pot înțelege mai bine cum am conceput tabelele;
3. Aceasta este zona Field Properties, în care putem modifica proprietățile câmpului selectat în
zona de mai sus, în lista de câmpuri (2). Deocamdată nu avem nevoie să modificăm nimic
pentru cheia primară;
4. În această zonă accesăm proprietățile tabelei; observați că sub titlul mare apare „Selection
type: Table Properties”.
Acum suntem gata să introducem în tabela noastră celelalte câmpuri: Judet, Oras, Adresa,
NumeMagazin. Selectăm cu mouse-ul celula de sub CodMagazin, și scriem Judet:
La Description introducem „Județul magazinului” și la coloana Data Type alegem din lista derulantă
Short Text. Apoi în zona Field Properties modificăm după cum urmează:
La Field Size trecem valoarea 15, pentru a limita numărul de caractere la cel mai lung județ
(Bistrița-Năsăud);
Input Mask este folosit pentru a restrânge tipul de text introdus, deoarece știm că județele
au minim 4 litere, și nu dorim să conțină cifre1. Așadar, introducem textul
„LLLLCCCCCCCCCCC” (4 L urmate de 11 C -- total 15 caractere). Caracterele „L” solicită
introducerea obligatorie a unei litere, iar „C” desemnează oricare caracter, cu introducere
opțională. Deoarece există județe care conțin cratimă, adică „-”, nu putem forța
introducerea de litere pentru toate caracterele.
La Required selectăm valoarea Yes, deoarece fiecare magazin trebuie să aibă obligatoriu un
județ;
La Allow Zero Length selectăm valoarea No – întrucât nu se permite introducerea de șiruri
de caractere cu lungimea zero;
La Indexed selectăm Yes (Duplicates OK). Crearea unui index permite căutarea rapidă după
Județ, și dorim să permitem valori duplicate deoarece mai multe magazine pot fi din același
județ.
Oras
1
(http://ro.wikipedia.org/wiki/Jude%C8%9Bele_Rom%C3%A2niei)
Apăsând butonul F1 puteți citi descrierea scenariilor de folosire a măștilor:
http://msdn.microsoft.com/en-us/library/office/ff821336.aspx
Required, Zero Length și Indexed rămân ca mai sus.
Adresa
Acest câmp va conține strada și numărul clădirii.
NumeMagazin
În acest moment tabela este completă și vom trece în modul DataSheet View (butoanele din
dreapta-jos). Confirmăm dialogul de salvare a tabelei, care apare deoarece am modificat structura
tabelei (când scriem date în tabelă, acestea se salvează automat și nu necesită confirmarea salvării).
Acum putem introduce date în tabela noastră:
Pentru a șterge o linie trebuie să o selectăm (1 ) apoi clic-dreapta și Delete. Pentru a închide
tabela apăsăm simbolul x (2).
Acum vom crea restul tabelelor. Din bara principală cu meniuri (în partea superioară a ecranului)
alegem Create Table Design, și vom crea tabela Bon:
CodBon: tip AutoNumber – atenție! Apăsați butonul Primary Key din bara de meniuri pentru
seta cheia primară! În stânga coloanei va apare simbolul de cheie, semnificând setarea
corectă a cheii primare;
DataBon: tip DateTime. La Default Value introduceți o funcție care să returneze data
curentă. Ca regulă de validare, data bonului trebuie să fie egală ca data curentă;
CodMagazin: Number. Acesta va face legătura cu CodMagazin din tabela Magazin.
Închideți apoi tabela Magazin și creați tabela Mărfuri. Avem următoarele regulI:
Ultima tabelă este ContinutBon. Pentru CodBon și CodProdus vom alege ca tip de dată Number, iar
Cantitate trebuie să fie strict pozitiv (și introducem regula de validare aferentă). În această tabelă
trebuie să setăm o cheie primară compusă, deci selectăm ambele câmpuri—CodBon și CodProdus
(1)—apoi apăsăm butonul Primary Key (2):
Acum închidem toate tabelele și trecem la crearea legăturilor între tabele. Din bara principală
alegem DATABASE TOOLS Relationships. Apare ecranul urmator, în care facem clic pe prima
tabelă apoi drag peste toate tabelele pentru a le selcta (1):
Apăsăm butonul Add pentru a adăuga toate tabelele în editorul de relații, și tabelele apar în ordine
alfabetică. Pentru claritate vom reordona tabelele, pe care le putem muta dând clic pe numele
tabelei și apoi drag-drop la locul dorit. Acum aranjați tabelele în ordinea următoare (Magazin, Bon,
ContinutBon, Produs):
Opțiunea bifată are următorul efect: când introducem un bon nou, baza de date va verifica dacă
pentru valoarea lui CodMagazin din tabela Bon există un magazin cu codul respectiv în tabela
Magazin. În alte cuvinte, nu se va permite introducerea de bonuri emise de magazine inexistente. Se
bifează şi opțiunile Cascade Update Related Fields şi Cascade Delete Related Fields.
Observați simbolurle 1 - ∞ care apar pe legături, semnificând tipul relațiilor. În dreptul tabelei
Magazin apare simbolul 1, iar în dreptul tabelei Bon apare simbolul ∞, semnificând faptul că un
magazin poate emite multe bonuri. Access a creat corect relația în virtutea legăturii dintre cheia
primară din tabela Magazin și cheia externă din tabela Bon.
Acum aveți o bază de date funcțională şi putem trece la introducerea datelor în tabele.