SARCINA DE LUCRU:
- Deschideti baza de date FIRMA creata in orele anterioare. Aceasta contine tabelele:
- ANGAJATI,
- PRODUSE,
- CLIENTI
2. Creati tabela TRANZACTII dupa modelul oferit si introduceti inregistrari.
3. Definiti relatiile intre tabelele create:
4. Urmareste demonstratia profesorului. Noteaza in caiete observatiile.
5. Realizeaza si tu, apoi, aplicatia propusa.
Relaţii între tabele
O relaţie este o asociere
între două câmpuri a două tabele diferite.
În cazul relaţiilor există două tipuri de tabele:
- tabelul principal (părinte) şi
- tabelul secundar (copil).
Într-o bază de date putem avea
trei tipuri de relaţii:
- relaţie unu la unu - când o
înregistrare dintr-un tabel poate avea ca referinţă o înregistrare din tabelul
secundar (şi viceversa).
De exemplu avem un tabel cu elevi, unde putem avea
informaţii despre adresa, nume, etc. şi un alt tabel unde vom stoca numărul
total de ore de practică. Acest tip de relaţie nu este
folosit prea des.
- relaţie unu la N - când o
înregistrare dintr-un tabel primar poate avea mai mulţi corespondenţi în
tabelul în tabelul secundar.
De
exemplu un tabel cu judeţele, iar altul
cu clienţi. Astfel, într-un judeţ pot fi mai mulţi clienţi, dar clienţii
aparţin unui singur judeţ. Acest tip de relaţii sunt folosite mult mai des. Acest tip de relaţii
sunt folosite mult mai des.
- relaţie N la M - când unei
înregistrări din tabelul primar îi corespund mai multe înregistrări din tabelul
secundar, iar unei înregistrări din tabelul secundar îi corespund mai multe
înregistrări în tabelul primar. Acest tip de relaţie este posibil doar atunci
când apare un al treilea tabel, care face legătura între alte două tabele.
Pentru exemplificare vom utiliza tabelele din lectiile anterioare.
Stabilirea cheii principale
Fiecare tabel ar trebui să aibă
cel puțin un câmp a cărui valoare este unică pentru fiecare înregistrare
(câmp cheie principală). Acest câmp este util pentru a identifica în
mod unic fiecare înregistrare.
Pentru a stabili o cheie principală
trebuie să parcurgi următorii pași:
- Deschide tabelul afișând structura acestuia.
- Selectează câmpul care vrei să fie cheie principală.
- Alege din meniul DESIGN opțiunea PRIMARY KEY.
Relația între două tabele nu este
obligatorie, dar este necesară, în general, pentru construirea
interogărilor care acționează asupra acestor table (deși relația s-ar
putea construi și când se construiește interogarea).
Alege din meniul DATABASES TOOLS opțiunea RELATIONSHIPS.
Integritatea referenţială
Integritatea referenţială este un sistem de reguli pe care bazele de
date relaţionale folosesc pentru a asigura coerenţa datelor.
Putem
activa aceste reguli printr-un click pe opţiunea Enforce Referential
integrity din fereastra apărută în cazul creării legăturilor
Dacă
aceste reguli sunt activate, Access nu ne va permite să introducem o
înregistrare în tabelul secundar dacă valoarea din câmpul de referinţă
nu există în câmpul referit din tabelul principal.
Integritatea referenţială are asociate două acţiuni:
- Cascade update the related fields:
selectarea acesteia determină ca la o modificare a valorii referite din
tabelul de bază să se modifice toate înregistrările aferente din
tabelul secundar;
- Cascade delete related records:
selectarea acesteia determină ca la o ştergere a valorii referite din
tabelul de bază să se şteargă toate înregistrările aferente din tabelul
secundar