BD Cursul 4 NP 1 10 CCUURRSSUULL 44 ((IImmpplleemmeennttaarreeaa MMooddeelluulluuii RReellaattiioonnaall)) [614417]
BD Cursul 4 NP 1 / 10 CCUURRSSUULL 44 ((IImmpplleemmeennttaarreeaa MMooddeelluulluuii RReellaattiioonnaall))
SSGGBBDD AACCCCEESSSS – ccaarraacctteerriissttiiccii ggeenneerraallee
Principalele caracteristici ale SGBD-ului ACCESS sunt:
• este relațional și lucrează sub sistemul de operare Windows;
• este deschis comunic ării cu alte Sisteme de Gestiune a Bazelor de Date cum ar fi FoxPro sau
Paradox;
• este compatibil cu tehnologia ActiveX, care permite realizarea aplica țiilor client/server;
• permite realizarea unor aplica ții complexe prin utilizarea limbajului Visual Basic;
• permite comunicarea cu SQL Server, un alt produs Microsoft care gestioneaz ă baze de date;
• permite accesul la baze de date din re țeaua Internet, fiind un instrument util pentru
publicarea informa țiilor în paginile Web;
• este autodocumentat prin help, apelabil contextual sau la cerere;
• conține instrumente wizard care permit utilizatorului crearea într-o manier ă foarte simpl ă a
obiectelor bazei de date;
Arhitectura Microsoft ACCESS
O bază de date ACCESS poate fi definit ă ca o colec ție de obiecte: tabele ( table ), cereri de
interogare ( query ), formulare ( form ), rapoarte ( report ), pagini Web ( pages ), comenzi macro
(macro ) și module ( module ).
• Tabela (Table) este un obiect definit de util izator în care sunt stocate datele primare
(expresia modelului rela țional).
• Formularul (Form) este un obiect car e permite introducerea datelor, afi șarea acestora sau
controlul întregii aplica ții.
• Interogarea (Query) este un obiect care permite vizualizarea informa țiilor obținute prin
prelucrarea datelor din una sau mai multe tabele și/sau alte cereri de interogare.
BD Cursul 4 NP 2 / 10 • Raportul (Report) este un obiect care permite formatarea și tipărirea informa țiilor obținute în
urma consult ării bazei de date sub form ă de documente.
• Pagina Web de accesare a datelor (Pages) reprezint ă un obiect care include un fi șier HTML
și alte fișiere suport în vederea furniz ării accesului la date prin intermediul browser-elor
Internet.
• Comanda Macro (Macro) reprezint ă un obiect care con ține o defini ție structurat ă a uneia sau
mai multor ac țiuni pe care ACCESS le realizeaz ă ca răspuns la un anumit eveniment.
• Modulul (Module) reprezint ă un obiect care con ține proceduri definite de utilizator și scrise
în limbajul de programare Visual Basic.
Crearea unei BD și descrierea obiectelor de tip tabel
A. Design View
Utilizatorul stabile ște absolut to ți
parametrii necesari pentru descrierea
structurii unui tabel: numele
câmpurilor, tipurile de date ale acestora, reguli de validare, etc.
Fereastra Access de descriere a
tabelei este format ă din două zone:
zona a în care se definesc câmpurile
din structura tabelei
și zona b în care sunt precizate
proprietățile acestora.
Descrierea câmpurilor
Numele câmpului (Field Name );
Numele unui câmp trebuie s ă respecte urm ătoarele reguli:
• Poate să conțină litere (majuscule sau minuscu le, sau ambele tipuri), cifre și numeroase
caractere speciale;
• Poate să conțină maximum 64 de caractere;
• Este interzis ă utilizarea caracterelor: punct (.), semnul exclam ării (!), parantezele drepte ([]).
• Numele câmpului nu poate s ă înceapă cu un spa țiu.
BD Cursul 4 NP 3 / 10
Tipul de date (Data Type ); utilizatorul are la dispozi ție nouă tipuri de date de baz ă, pentru unele
dintre ele fiind disponibile subtipuri de date, în func ție de necesit ăți; subtipurile se configureaz ă
în zona de jos a ferestrei (sec țiunea General );
Proprietățile câmpului (Field Properties )
Tipurile și subtipurile de date Access sunt :
Tip de date Subtip de date Descriere
Text Este un tip de date alfanumeric, de lungime maxim ă 255.
Implicit, Access propune dimensiunea (proprietatea Field
Size) 50 pentru un câmp de tip Text. Un câmp de acest tip
poate să conțină practic orice caracter.
Memo Este un tip de date alfanumeric (poate con ține orice
caracter), în lungime maxima de 65535 caractere.
Utilizatorul nu poate configura o dimensiune mai mic ă
decât aceasta.
Byte Tip de date întreg a c ărui plajă de valori admis ă este între
0 și 255. Spa țiul ocupat de un asemenea câmp este de 1
byte.
Integer Tip de date întreg cu plaja de valori admis ă între
-32768 și +32768. Ocup ă 2 bytes.
Long Integer Tip de date întreg de dimensiuni foarte mari cu plaja de
valori admis ă între -2147483648 și +2147483647. Ocup ă
4 bytes.
Single Tip de date cu plaja de valori admis ă între
–3,402823×1038 până la –1,401298×10-45 pentru numere
negative, iar pentru numere pozitive între
1,401298×10–45 până la 3,402823×1038. Ocupă 4 bytes și
are precizie de 7 zecimale. Number
(tip de date
numeric)
Double Tip de date de dimensiuni foarte mari cu plaja de valori
admisă între –1,79769313486231×10308 până la –
4,94065645841247×10–324 pentru numere negative, iar
pentru numere pozitive între 4,94065645841247×10–324
până la 1,79769313486231×10308. Ocupă 8 bytes și are Zona a
Zona b
BD Cursul 4 NP 4 / 10 Tip de date Subtip de date Descriere
precizie de 15 zecimale.
Replication
ID Tip de date GUID (Global unique identifier). Ocup ă 16
bytes. Sunt utile pentru câmpurile care sunt (sau fac parte dintr-o) cheie extern ă ale căror chei primare sunt de tipul
AutoNumber, ReplicationID.
Decimal Tip de date cu plaja de valori admis ă între
-1028 -1și +1028-1. Ocupă 12 bytes și precizie (proprietatea
Precision ) maximă de 28.
Date/Time Memoreaz ă date calendaristice, inclusiv ora în formate
predefinite. Datele calendaristice admise sunt între anul
100 și 9999. Formatele de afi șare se stabilesc în
proprietatea Format. Ocup ă 8 bytes.
Currency Tip de date numeric, care opereaz ă cu maxim patru
zecimale și maxim 15 pozi ții în stânga punctului zecimal.
Ocupă 8 bytes.
LongInteger Tip de date care î și atribuie automat valori, la crearea unei
noi înregistr ări. Valorile atribuite pot fi secven țiale
(proprietatea New Values= Increment ) sau aleatoare
(proprietatea New Values =Random ). Câmpurile de tip
AutoNumber , nu pot fi actualizate. Ocup ă 4 bytes. AutoNumber
ReplicationID Tip de date care î și atribuie automat valori de tip GUID.
Exemplu de valoare GUID: {E0DC2C27-EDE8-412A-B1C4-AF69021A1365}. Ocup ă 16 bytes.
Yes/No Tip de date logic, care poate lua doar dou ă valori: adev ărat
(valoarea -1) sau fals (valoarea 0). Ocup ă 1 bit.
OLE Object Tip de date care poate s ă includă imagini, documente
WORD, foi de calcul EXCEL, etc. Dimensiunea maxim ă
este de 1 GB, cu condi ția să existe acest spa țiu pe disk. Nu
poate fi cheie și nici nu poate fi index.
Hyperlink Șir de caractere, care poate memora o adres ă WEB, ce va
fi utilizat ă sub form ă de hyperlink. Este format ă din trei
părți: textul de afi șat, adresa și subadresa. Dimensiunea
maximă a fiecărei părți este de 2048 caractere.
Lookup
Wizard Câmpuri ale c ăror valori vor fi completate automat prin
selecția dintr-o list ă simplă de valori (List Box) sau dintr-
o listă derulantă de valori (Combo Box).
Comentarii (Description ), este o proprietate op țională, unde utilizatorul poate introduce sub
formă de șiruri de caractere diverse informa ții cu privire la un câmp.
În zona b a ferestrei ( General și Lookup ) se pot stabili valori pentru dou ă categorii de propriet ăți:
> proprietăți pe care le au toate câmpurile;
> proprietăți specifice anumitor câmpuri, în func ție de tipul de date.
Proprietăți din categoria General:
Field Size – stabile ște dimensiunea maxim ă admisă pentru tipurile de date Number , AutoNumber ,
Text. Pentru primele dou ă, valorile maxime admise sunt cele precizate în tabelul anterior, iar pentru
tipul Text o valoare între 0 și 255.
BD Cursul 4 NP 5 / 10 Decimal Places – stabile ște numărul de zecimale utilizat pentru afi șarea unui num ăr. Valorile
posibile sunt Auto (numărul este afi șat cu atâtea zecimale cu câte a fost calculat; nu sunt afi șate mai
mult de 15 zecimale) sau un num ăr între 0 și 15. Numărul de zecimale afi șat poate fi influen țat și
din proprietatea Format .
Format – stabile ște formatul de afi șare al unui
câmp. Aceste formate se pot defini de utilizator cu
ajutorul unor secven țe speciale de caractere sau
pentru unele tipuri de date exist ă deja predefinite
formate uzuale asa cum rezulta din tabelul alaturat.
Pe lângă aceste formate predefinite se mai pot utiliza anumite combina ții speciale de caractere.
Pentru câmpurile numerice formatul de afi șare se împarte în patru zone separate prin caracterul „ ;” :
> prima zon ă se referă la modul de afi șare al numerelor pozitive;
> a doua zon ă se referă la modul de afi șare al numerelor negative;
> a treia zon ă se referă la modul de afi șare al num ărului zero;
> a patra zon ă se referă la modul de afi șare al valorii Null;
Caracterele ce se pot utiliza într-un format de afi șare al unui câmp numeric:
• .– separatorul zecimal este punctul;
• , – separatorul miilor este virgula;
• 0 – sunt afi șate cifre sau zero;
• # – sunt afi șate cifre sau spatiu;
• $ – este afi șat și caracterul $;
• % – numărul este înmul țit cu 100 și alături este afi șat caracterul procent (%);
• E+, E-, e+, e- stabile ște formate de afi șare în format științific.
Formatele predefinite de afi șare pentru
câmpurile de tip Date/Time sunt in
tabelul alaturat.
Exemple: "Data: "dd/mm/yy" saptamana: "ww afișează Data: 01/06/01 saptamana: 22
dddd/mmmm/yyyy afișează vineri/iunie/2001
"ORA:"hh:nn:ssAM/PM afișează ORA:12:00:00AM
Caption – stabilește un șir de caractere care va fi afi șat în titlul unei coloane, în momentul
introducerii datelor; dac ă această proprietate nu are nici o valoare, șirul afișat în titlul unei coloane
este chiar numele câmpului; valoarea acestei propriet ăți nu are nici o influen ță asupra numelui
câmpului în utilizarea sa în interog ări, VBA, etc.
Default Value – stabile ște o valoare implicit ă care este propus ă în momentul în care se introduc
date într-un tabel; se recomand ă în cazul în care exist ă o valoare preponderent ă a conținutului unui
câmp;
BD Cursul 4 NP 6 / 10 Input Mask – stabilește un format (masc ă, șablon) de introducere a datelor pentru un anumit câmp.
La fel ca în cazul propriet ății Format , există o serie de caractere prin care se stabile ște acest format
de introducere a datelor. În cazul în care se utilizeaz ă ambele propriet ăți, proprietatea Format are
prioritate fa ță de proprietatea Input Mask .
Validation Rule – definește o regul ă de validare pentru un câmp, practic o expresie ce se va testa
pentru con ținutul introdus într-un câmp. Regulile de validare se testeaz ă după introducerea unei
valori într-un câmp sau în momentul în care se încearc ă salvarea unei înregistr ări (în momentul în
care se încearc ă introducerea unei înregistr ări noi, la trecerea de la o înregistrare la alta, sau la
salvarea explicit ă a acesteia) pentru câmpurile nevizitate de utilizator. Dac ă o regulă de validare a
unui câmp nu se verific ă, înregistrarea nu se poate salva decât dac ă se corecteaz ă conținutul
câmpului. Expresia pentru aceast ă proprietate se poate scrie și în mod asistat cu ajutorul ferestrei
Expression Builder , ce poate fi invocat ă din butonul
.
Numele câmpurilor dintr-o expresie Validation Rule trebuie scris între caracterele []. O expresie
Validation Rule la nivel de câmp nu poate referi alte câ mpuri, decât cel curent. Se pot utiliza func ții
Access, constante, operatori, etc.
Exemple de reguli de validare pentru un câmp de tip Number, Integer :
• >100 and <=200 stabilește valorile posibile între 101 și 200
• <>Null sau Is Not Null – câmpul trebuie s ă conțină o valoare.
Exemple de reguli de validare pentru un câmp de tip Text:
• “Calarasi” Or “Bucuresti” Or “Brasov” sau In ("Calarasi"; "Bucuresti"; "Brasov") – valoarea
câmpului nu poate fi decât una din cele trei.
• Mid([nume];1;1)="A" – primul caracter introdus în câmpul nume nu poate fi decât A sau a.
Exemple de reguli de validare pentru un câmp de tip Date/Time :
• >=Date() – data introdus ă trebuie să fie mai mare sau egal ă cu data sistemului.
• Year([data factura])=Year(Date()) – anul din câmpul data factura trebuie s ă fie în
momentul introducerii, acela și cu cel din data sistemului.
Validation Text – definește un mesaj de aten ționare care va fi afi șat în momentul în care regula de
validare definit ă în proprietatea Validation Rule este încălcată.
Required – poate lua valoarea Yes sau No, corespunz ătoare valorilor logice adev ărat (True ) sau
fals ( False ) ș
i stabilește dacă valoarea unui câmp este obligatoriu ( Yes) de introdus sau nu ( No).
Pentru câmpurile de tip Text, Memo , Hyperlink este bine s ă se utilizeze aceast ă proprietate în
strânsă legătură cu proprietatea Allow Zero Length.
Allow Zero Length – stabilește dacă este permis ă introducerea unui șir de lungime zero ( Yes) sau
nu (No) într-un câmp de tip Text, Memo sau Hyperlink . Variantele de memorare în condi țiile
utilizării propriet ăților Required și Allow Zero Length sunt prezentate în tabelul urmator.
Valoarea din
proprietatea
Allow zero length Valoarea din
proprietatea
Required Acțiunea
utilizatorului Valoare memorat ă
Enter Null
Bara spațiu Null No No
Șir de lungime 0 Nu este permis
Enter Null
Bara de spa țiu Null No Yes
Șir de lungime 0 Nu este permis
BD Cursul 4 NP 7 / 10 Valoarea din
proprietatea
Allow zero length Valoarea din
proprietatea
Required Acțiunea
utilizatorului Valoare memorat ă
Enter Null
Bara de spa țiu Null Yes No
Șir de lungime 0 Șir de lungime 0
Enter Nu este permis
Bara de spa țiu Nu este permis No Yes
Șir de lungime 0 Nu este permis
Enter Nu este permis
Bara de spa țiu Șir de lungime 0 Yes No
Șir de lungime 0 Șir de lungime 0
Indexed – stabilește un câmp drept index. Valori posibile:
• No – neindexat
• Yes (Duplicates OK) – index; sunt permise valori duplicate pe câmpul index;
• Yes (No Duplicates) – index; nu sunt permise valori duplicate pe acest câmp.
Definirea cheii primare și a indecșilor
Orice tabel ă trebuie s ă posede o cheie primar ă (Primary Key ), adică un câmp sau un grup de
câmpuri care identific ă în mod unic fiecare înregistrare. Dac ă utilizatorul nu stabile ște o cheie
primară, Access stabile ște una în mod implicit creând un câmp de tip AutoNumber care va con ține
un număr unic pentru fiecare înregistrare. De și Access creeaz ă în mod implicit o cheie primar ă,
următoarele rațiuni recomand ă utilizatorului s ă defineasc ă o cheie primar ă:
• cheia primar ă este un index.
• indecșii realizeaz ă o clasificare a datelor dup ă unul sau mai multe câmpuri ceea ce are drept
consecință creșterea vitezei de realizare a interog ărilor.
• la fiecare ad ăugare a unei noi înregistr ări, Access nu autorizeaz ă înregistrări duble pentru
câmpul cheie primar ă.
• Microsoft Access afi șează datele în ordinea cheii primare.
În afară de indec și pe un singur câmp se pot defini și indecși multipli, care func ționează pe mai
multe câmpuri simultan. Ace știa se pot defini/modifica numai în fereastra Indexes . În aceea și
fereastră se pot gestiona și indecșii pe un singur câmp. Fereastra cu indec șii unei tabele ( Indexes ) se
activează din meniul View , opțiunea Indexes .
Pentru definirea unui index (sau pentru o cheie primar ă) format din mai multe câmpuri, se scrie
numele indexului in coloana Index Name , iar în coloana Field Name se aleg câmpurile care
formează indexul sau cheia primar ă. Coloana Sort Order indică modul de ordonare al datelor în
index. În cazul indec șilor ce includ mai multe câmpuri, valoarea propriet ății Indexed , pentru fiecare
câmp în parte este No.
Proprietățile din fereastra Indexes :
• Primary – valoarea Yes indică faptul că indexul este cheie primar ă;
• Unique – valoarea Yes
indică faptul c ă indexul va avea valori unice, nefiind permise
duplicatele; pentru o cheie primar ă, această proprietate are obligatoriu valoarea Yes.
BD Cursul 4 NP 8 / 10 • Ignore Nulls – valoarea Yes indică faptul că sunt permise valorile Null într-un index; pentru
o cheie primar ă, această proprietate are obligatoriu valoarea No.
Exemplu: într-un tabel care va
memora facturi, ce are drept cheie primar ă un câmp generic
ID de tip AutoNumber , se
stabilește un index numit
Factura , care este format din
câmpurile Serie Factura și
Număr Factura . Proprietatea
Unique va avea valoarea Yes
pentru acesta deoarece seria
împreună cu num ărul unei
facturi sunt unice la nivel național. Un alt index se
definește pe câmpul Data
Factura , care nu trebuie s ă aibă
valori unice.
Pe lângă modalitatea descris ă anterior, cheia primar ă a unui tabel se mai poate defini astfel:
• Dacă este vorba de o cheie format ă dintr-un singur câmp, se pozi ționează cursorul în câmpul
respectiv și se acționează butonul
din bara de instrumente Table Design;
• Pentru chei primare formate din mai multe câmpuri, se selecteaz ă câmpurile din bordura
ferestrei de proiectare și se acționează butonul men ționat anterior.
NOTĂ: O cheie extern ă nu se define ște explicit nic ăieri în Access sub no țiunea de cheie extern ă, ea
fiind stabilit ă prin definirea rela țiilor dintre tabele. Pentru cre șterea performan țelor se recomand ă
definirea de indec și pentru fiecare cheie extern ă.
B. Datasheet View este echivalent ă cu acționarea hyperlink-ului Create table by entering data . În
această variantă, Access propune o fereastr ă de introducere date sub forma unui tabel cu nume de
câmpuri generice Field1, Field2….Field10. Inserarea de noi câmpuri pe lâng ă cele zece propuse
implicit, se realizeaz ă din meniul Insert-Column .
Schimbarea numelor implicite ale coloanelor
se realizeaz ă din meniul Format-Rename
Column .În funcție de datele introduse în
celule, la salvarea tabelului, Access stabile ște
ce tip de date va aloca fiec ărui câmp.
C. Table Wizard este echivalent ă cu acționarea hyperlink-ului Create table by using wizard .
Alegerea acestei variante are ca efect activarea une i ferestre în care se propun diverse modele de
tabele cu o mare varietate de câmpuri, toate denumirile fiind în limba englez ă. Pentru un utilizator
care dore ște crearea unor tabele în limba român ă, deși acest instrument wizard prin defini ție se
dorește a fi de mare ajutor, alegerea sa este total neinspirat ă. Probabil dac ă variantele Microsoft
Office localizate vor con ține și Access în limba român ă, atunci acest instrument se va dovedi de un
real folos pentru utilizatorii români.
D. Import Table , permite importul tabelei dintr-o alt ă aplicație Access, Oracle, Excel, etc.
BD Cursul 4 NP 9 / 10
E. Link table , permite includere prin ata șare (legare) dintr-o alt ă bază de date
Proprietăți ale unui tabel
Pentru a vizualiza fereastra cu propriet ăți a unui tabel se activeaz ă opțiunea.
Properties din meniul View , sau se ac ționează butonul
din bara de instrumente Table Design .
Validation Rule – are aceea și semnifica ție ca proprietatea cu acela și nume ata șată câmpurilor,
numai că operează la nivel de tabel. În momentul în care se încearc ă salvarea unei înregistr ări (în
momentul în care se încearc ă introducerea unei înregistr ări noi, la trecerea de la o înregistrare la
alta, sau la salvarea explicit ă a acesteia), dac ă nu se verific ă această regulă de validare, nu se va
putea salva înregistrarea. Fa ță de aceeași proprietate la nivel de câmp, la nivel de tabel, se pot referi
mai multe câmpuri ale tabelului în expresia care define ște proprietatea.
Exemplu de regul ă de validare pentru un tabel care are în componen ță între altele urm ătoarele
câmpuri: SimbolCont, soldinitialdebitor, soldinitialcreditor. Regula impune ca un cont s ă nu aibă
simultan soldul ini țial debitor sau creditor în acela și timp.
(Not IsNull([soldinitialdebitor]) Imp [sol dinitialcreditor]=0) Or (Not IsNull([sold initialcreditor]) Imp [soldinitialdebitor]=0 )
Validation Text – afișează un mesaj în momentul în care regula de validare definit ă la nivel de
tabel, este testat ă și nu se verific ă.
Filter – stabile ște un criteriu în func ție de care vor fi selectate înregistr ările în fereastra de
introducere date. Pentru a activ a/dezactiva filtr ul trebuie ac ționat butonul Apply Filter
sau din
meniul Records , opțiunea Apply Filter/Sort respectiv Remove Filter/Sort .
Exemplu: [Data factura]>#1/1/2001# va afi șa toate facturile de dup ă data 1/1/2001.
Order By – stabilește ordinea de afi șare a înregistr ărilor, în momentul introducerii datelor. Numele
câmpurilor trebuie precizate între [].
Exemplu: [Serie factura],[Numar factura].
DDeeffiinniirreeaa rreellaațțiiiilloorr ddiinnttrree ttaabbeellee
În S.G.B.D. Access exist ă următoarele posibilit ăți de realizare a rela țiilor dintre tabele:
• Relația 1-1 (one-to-one sau unu la unu) este cea mai simpl ă relație între dou ă tabele. În
această relație, unei valori a câmpului cheie principal ă dintr-o tabel ă îi corespunde o singur ă
valoare din câmpul folosit drept cheie extern ă din cealalt ă tabelă. Tabelele aflate într-o
relație one-to-one se pot combina într-o singur ă tabelă, în care apar toate câmpurile celor
două tabele. Rela țiile de acest tip nu sunt uzuale.
• Relația 1-n (one-to-many sau unul la mai mul ți) constituie tipul cel mai r ăspândit de
relații. Conform acestei rela ții unei înregistr ări din tabela aflat ă în partea stâng ă a relației îi
corespund dou ă sau mai multe înregistr ări din tabela aflat ă în partea dreapt ă a relației.
Asocierea se bazeaz ă pe un câmp cheie principal ă unic într-o tabel ă și un câmp cheie
externă din cealalt ă tabelă care admite valori duplicate.
• Relația n-1 (many-to-one sau mai mul ți la unul) este opus ă relației 1-n. Pentru a crea
relația many-to-one este suficient s ă se inverseze rela ția one-to-many . De aceea, se spune
că relația many-to-one este reflexivă, adică relația many-to- one este reflexia rela ției
corespondente one-to-many . Dacă se selecteaz ă o înregistrare din tabela din partea many a
relației se poate afla înregistrarea care corespunde cheii sale externe din tabela din partea
BD Cursul 4 NP 10 / 10 one a relației. Relațiile n-1 nu sunt bazate pe câmpuri cheie primar ă din nici una dintre cele
două tabele.
• Relația m-n (many-to-many sau mulți la mai mul ți) nu poate fi exprimat ă ca o simpl ă
relație între dou ă tabele. Rela ția many-to-many se poate exprima prin intermediul unei a
treia tabele care are rela ții one-to-many și many-to-one cu cele dou ă tabele.
Pe lângă stabilirea rela țiilor între tabelele unei baze de date, Access permite și specificarea unor
reguli care for țează integritatea datelor. Aceste reguli se numesc restric ții de integritate
referențială; ele permit s ă se conserve intacte rela țiile între tabele într-un sistem de gestiune a unei
baze de date rela ționale. Capacitatea de a asigura în mod automat integritatea referen țială este o
caracteristic ă important ă a SGBD Access.
După plasarea tuturor tabelelor în panou l de editare, definirea propriu-zis ă a unei rela ții se
realizează prin drag-and-drop (selectare și glisare) dinspre cheia primar ă a unei tabele spre o cheia
externă corespunz ătoare sau invers.
Opțiunile din fereastra Edit Relationships au următoarea semnifica ție:
• Enforce Referential Integrity – define ște o restric ție de integritate referen țială. Nu se
permite specificarea valorii unei chei externe, dac ă această valoare nu exist ă deja în tabelul
unde aceasta este cheie primar ă.
• Cascade Update Related Fields – actualizarea valorilor din rândul corespunz ător unei cheii
primare dintr-un tabel se propag ă în cascad ă în toate obiectele în care acesta este referit prin
cheie extern ă corespondent ă.
• Cascade Delete Related Fields – ștergerea valorii unei chei primare, are ca efect și
ștergerea înregistr ărilor din tabelele unde aceasta este cheie extern ă.
În caseta Relationship Type sunt prezentate tipurile de leg ături care pot exista între dou ă tabele:
One to One – 1-1;
One to Many – 1-n
Dacă în aceast ă casetă este afișat mesajul Indeterminate , înseamn ă că tipul de rela ție nu poate fi
definit, cea mai probabil ă eroare fiind incompatibilitatea între tipul de date al cheii primare și cel al
cheii externe, sau inexisten ța unei chei primare în rela ția respectiv ă.
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: BD Cursul 4 NP 1 10 CCUURRSSUULL 44 ((IImmpplleemmeennttaarreeaa MMooddeelluulluuii RReellaattiioonnaall)) [614417] (ID: 614417)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
