Documente Academic
Documente Profesional
Documente Cultură
CAPITOLUL 1
Pagina 1 din 54
Cele trei concepte de baz utilizate sunt: entitate, atribut, valoare. Ele au fost
introduse n literatura de specialitate odat cu apariia bazelor de date. Aceste concepte sunt
legate ntre ele: o entitate are mai multe atribute, iar atributelor li se asociaz o mulime de
valori.
Prin entitate se nelege un obiect concret sau abstract reprezentat prin proprietile
sale.
Orice proprietate a unui obiect poate fi exprimat printr-o pereche (ATRIBUT,
VALOARE). Exemplu: masa X are culoarea alb, unde culoare reprezint atributul, iar
alb valoarea.
Aadar, o entitate se poate exprima prin mai multe proprieti, deci mai multe perechi
de forma (ATRIBUT, VALOARE).
De exemplu o persoan X poate fi rerezentat prin mulimea de perechi: (NUME,
POPESCU);
(VRSTA,
25);
(SEX,
MASCULIN);
(PROFESIE,
ECONOMIST);
(SALARIU, 90000).
n realitate, mulimea atributelor NUME, VRST, SEX, PROFESIE, SALARIU
poate fi asociat mai multor PERSOANE. Rezult c atributul nu caracterizeaz doar o
entitate, ci poate caracteriza o clas de entiti numit entitate grup. n exemplul de mai sus,
entitatea grup se caracterizeaz prin aceeai mulime de atribute, se poate spune c entitile
din cadrul unei entiti grup sunt de acelai tip. n acest sens, se utilizeaz termenul de tip de
entitate pentru o clas de entiti.
Noiunea de atribut este cunoscut i sub denumirea de cmp, caracteristic.
Fiecare atribut e caracterizat de natura valorilor pe care le poate lua. Astfel, un atribut
este de tip numeric dac valorile sale sunt numerice, alfanumeric dac valorile sale sunt iruri
de caractere, etc. n general, un atribut are valori elementare, dar pot exista i situaii de
atribute compuse (formate prin concatenarea mai multor atribute). Pot exista atribute ce
identific n mod unic o entitate, ele numindu-se atribute cheie sau pot exista atribute ce nu
identific unic o entitate i se numesc atribute non-cheie.
Pagina 2 din 54
Un alt concept utilizat este cel de dat. Data este un model de reprezentare a
informaiei. Accesibil unui anumit procesor (om, program, calculator); cu acest model se
operez pentru a obine noi informaii despre fenomenele i procesele lumii reale.
O dat care este indivizibil n raport cu informaia pe care o reprezint, dar i n
raport cu modul de prelucrare se numete dat elementar sau scalar. Mai multe date
elementare formeaz o dat compus.
Din punct de vedere logic, o dat se definete prin: identificator, atribut i valoare.
ECONOMIST
-valoare
Din punct de vedere fizic, unei date i corespunde o zon de memorie de o
anumit mrime, situat la o adres absolut.
ntre date exist diverse legturi, relaii. ntre datele ce aparin unor tipuri de entiti
pot exista dou categorii de legturi:
prima se definete prin nsi apartenena detelor la entiate;
a doua categorie o constituie legturile dintre entitile de acelai tip sau de tipuri
diferite.
Exemple:
Fie A mulimea persoanelor ce lucreaz ntr-o societate comercial. ntre datele acestei
mulimi se pot stabili relaii de tipul:
x are aceeai profesie cu y;
x este soia lui y;
x are salariul mai mare sau egal cu al persoanei y;
x este mai n vrst dect y;
x a absolvit aceeai coal ca i y; etc.
Fie B mulimea judeelor rii. ntre datele acestei mulimi pot exista relaii de tipul:
x este vecin cu y i y este vecin cu x;
Pagina 3 din 54
Structuri de date
Asupra unei structuri de date se pot efectua o multitudine de operaii care se refer la
valori i/sau la structur. Dintre acestea, cele mai frecvente sunt:
crearea (memorarea datelor n forma iniial pe suport de memorie);
consultarea (accesul la componentele structurii n vederea prelucrrii valorilor);
actualizarea (schimbarea strii structurii prin adugarea, tergerea unor elemente,
modificarea valorii unor elemente, modificarea relaiilor dintre elemente);
sortarea (aranjarea elementelor unei structuri dup anumite criterii);
ventilarea (spargerea structurii n dou sau mai multe structuri);
fuzionarea (formarea unei noi structuri din dou sau mai multe structuri);
copierea;
interclasarea etc.
Operaiile la care poate fi supus o structur de date i eficiena cu care acestea pot fi
realizate, depind n mare msur de relaiile ntre datele materializate pe suport de memorie.
Toate structurile de date care au acceai organizare i sunt supuse acelorai operaii
formeaz un anumit tip de structur de date.
Definiie Un tip de structur de date este o mulime ordonat de date ntre care s-au
stabilit anumite releii i pentru realizarea operaiilor se folosete un grup de operatori de baz
cu o anumit semantic.
Pagina 6 din 54
a1
a2
a3
a4
a2
a3
a4)
a1
b) structura inelar
Pagina 7 din 54
Structura arborescent (ierarhic sau descendent). Dac ntre elementele unei colecii
de date exist o relaie de ordine, spunem c structura acestei colecii de date este o structur
arborescent.
Acest tip de structur are urmtoarele proprieti:
Exist un element unic, numit rdcina arborelui.
Orice nod diferit de rdcin are un predecesor imediat unic.
Orice nod neterminal are un numr finit de succesori imediai.
Relaiile stabilite ntre noduri sunt de tipul 1 la m.
O succesiune de noduri (ai1,ai2,,ain) n care pentru orice aik, kn, ai,k+1
Este un succesor imediat al lui aik, se numete drum de lungime n-1 de la nodul ai1 la
nodul ain.
Drumul de lungime maxim constituie nlimea arborelui. Un arbore ordonat de
gradul 2 se numete arbore binar (fig.1.2.a). Un arbore care are ordinul superior lui 2 se
numete multici (fig.1.2.b). Un arbore este echilibrat dac diferena dintre drumurile de la
rdcin la orice nod terminal este cel mult 1.
O structur arborescent care are elemente structurale arborescent formeaz o
structur arborescent cu elementele structurate arborescent. O structur arborescent care are
elementele structurate n reea formeaz o structur (list) arborescent cu elementele
structurate n reea. Exist i o structur arborescent cu elementele structurate liniar.
arbore binar
Structura reea. Dac ntre elementele unei colecii da date exist o relaie de
preordine, atunci spunem c structura acestei colecii de date este o structur reea. Aceasta
are urmtoarele proprieti:
O reea este un graf n care ntre dou noduri exist legturi bidirecionale;
Un nod are mai muli predecesori i el nsui poate fi predecesor pentru
propriul su predecesor. Apar astfel n reea cicluri. Un ciclu este un drum n care
nodul iniial este acelai cu nodul final.
Cardinalul mulimii elementelor (nodurilor) iniiale este mai mare sau egal cu 1.
Card(M(D)) 1;
Cardinalul mulimii elementelor (nodurilor) finale este mai mare sau egal cu 1.
Card(m(D)) 1;
ntre elementele reelei se stabilesc relaii de tipul m la n.
O reea este denumit simpl dac pentru orice cuplu (a,b) R (b,a) R (fig.
1.3.a.). n caz contrar, reeaua este complex (fig.1.3.b.). ntr-o reea simpl nu exist cicluri.
reea complex
Fig.1.3. Exemple de reele de date
Structura relaional
Pagina 9 din 54
Structura relaional este format din mai multe tabele (relaii, tablouri) de date
elementare, fr o legtur aparent ntre ele, componentele unei tabele fiind aduse ntr-una
din cele cinci forme normale (fig.1.4.). O form naomal este starea n care se afl structura
tabelului n funcie de diferite cerine impuse. Operaiile pe aceste structuri sunt realizate cu
operatori relaionali ai algebrei relaionale sau ai calculului relaional.
PERSOANE
MARC
NUME
PRENUME
SEX
VRST
PROFESIE
Modele de date
Pagina 10 din 54
Stabilirea relaiilor ntre obiecte. Relaia ntre nregistrri aparinnd unui singur
obiect independent sau la dou sau mai multe obiecte independente se materializeaz ntr-o
legtur ntre o realizare a nregistrrii printe i una sau mai multe relizri ale nregistrrii
fiu. Realizrile nregistrrilor de tip fiu formeaz o clas de echivalen
Domenii
Lucrri
Clasa de echivalen
D1
L1
D2
L2
L3
L4
D3
L5
L6
L7
Legtutra dintre obiecte (entiti) poart denumirea de asociere. Legturile dintre dou
entiti pot fi de trei tipuri:
Legturi unu la unu (1 1). De exemplu, relaia dintre apartamentele nchiriate din
fondul locativ de stat i chiriai poate beneficia de un singur apartament cu chirie (fig. 1.6.).
Apartament
Pagina 11 din 54
Chiriai
Legtura unu la mai muli (1 n). De exemplu, un elev poate face parte dintr-o
singur clas, o clas poate avea mai muli elevi. Aceast structur este de tip arborescent
Clasa
(fig. 1.7.).
Fig. 1.7. Exemplu de legturi de tipul unu la muli
Elev 1
Elev 2
Elev n
Produsul 2
Client 1
Client 2
Produsul m
Client n
Pagina 12 din 54
3. Regulile de integritate, cel de-al treilea element al unui model de date sunt restricii
menite s asigure meninerea corectitudinii datelor.
Exemple de astfel de restricii:
s nu se accepte memorarea valorilor asociate caracteristicilor unui produs dac nu se
cunoate valoarea cheii lui (CODP pentru entitatea PRODUS i CODC pentru entitatea
CLIENI);
s nu se permit tergerea valorilor atributelor unui client dac acesta nu a achitat
integral factura pentru cumprarea unui produs x, etc.
n funcie de modul n care de definesc elementele amintite, modelele de date se
mpart n: modele ierarhice sau arborescente; modele reea; medele relaionale; modele
orientate obiect.
Modelul ierarhic
Modelul ierarhic are ca structur de baz tipuri de nregistrri care grupeaz toate
atributele unei entiti. Pentru realizarea asocierilor (relaiilor, legturilor) dintre tipuri de
nregistrri, acest model introduce un nou tip de structur: ierarhia.
O ierarhie are un tip de nregistrare definit ca rdcin i mai multe tipuri de
nregistrri subordonate, legate sub form de arbore (fig. 1.9.).
Fiecare nod din arbore care nu e rdcin sau nod final are un singur nod superior i
unul sau mai multe noduri inferioare. Legtura de la un nod superior la unul inferior este de
tipul 1 m, iar legtura de la un nod inferior la unul superior este de tipul 1 1.
Furnizor
Fig. 1.9. Exemplu de ierarhie de date
Deci modelul ierarhic pune la dispoziie dou structuri: tipuri de nregistrri i
Unitatea
Unitatea
Unitatea
ierarhia.1Datorit existenei celor
operatori separai i anume:
2 dou structuri, modelul ofer
n
operatori de citiri pentru tipuri de nregistrare;
Secia
1
Secia
Secia
Secia
Secia
operatori
de memorare
pentru
tipuri
2
3
1
2 de nregistrare;
1
operatori de memorare pentru ierarhie.
Pagina 13 din 54
Secia
Secia
Secia
n ceea ce privete interogarea bazei de date, pot apare cereri de genul: atributele unui
singur tip de nregistrri logice, legturi dintre dou tipuri de nregistrri, legturi dintre mai
multe tipuri de nregistrri.
Modelul relaional
Acest model are la baz teoria matematic a relaiilor. Are o singur structur de date:
relaia (tabelul), o submulime a produsului cartezian al unor domenii (un domeniu este o
mulime de valori ale entitilor).
n concluzie, un astfel de model poate fi privit ca o mulime de tabele obinute prin
metoda normalizrii. Normalizarea pleac de la o mulime de atribute (cmpuri de date) i o
mulime de dependene funcionale dintre atribute i conduce la o schem conceptual a
modelului relaional ntr-o form normalizat n care se vor elimina anomalii de actualizri.
La aceste trei modele, se mai adaug modelul orientat obiect, modelul distribuit.
Modelul distribuit de bazeaz pe primele trei modele, dar cu particularitile legate de
Pagina 14 din 54
Fiier de date
Fiier de descriere
global a datelor
Colecie
de date
Aplicaia 1
Aplicaia 2
Pagina 16 din 54
existen, precum i programele de exploatare a ei, care au fost folosite o perioad de timp,
reprezint o investiie major la care nu trebuie s se renune prea uor.
De accea, se impune ca atunci cnd cnd apar noi cerine n cadrul sistemului
informaional, sistemele informatice s poat funciona cu programele i procedurile
existente, iar datele existente s poat fi convertite. Deci, modificrile care se fac la nivel de
structur de date nu trebuie s modifice programele de aplicaie.
Independena datelor trebuie privit din dou puncte de vedere: independena fizic;
independena logic a datelor.
Independena fizic a datelor face ca memoria datelor i tehnicile fizice de memorare
s poat fi modificate fr a determina rescrierea programelor de aplicaie.
Independena logic a datelor se refer la posibilitatea adugrii de noi articole de
date sau extinderea structurii conceptuale (globale), fr ca aceasta s impune rescrierea
programelor existente.
2. Asigurarea unei redundenei minime i controlate a datelor din baza de date. Spre
deosebire de sistemele clasice de prelucrare automat a datelor, stocarea datelor n cazul
bazelor de date se face astfel nct fiecare dat s apar o singur dat. Totui, nu sunt excluse
nici cazurile n care, pentru a realiza performane sporite, referitoare la timpul de acces la
date i rspuns la solicitrile utilizatorilor, s se accepte o anumit redunda a datelor, nc n
acest caz se va institui un control automat asupra ei n vederea asigurrii coerenei datelor din
baz.
Pagina 19 din 54
DESCRIERE
BAZA DE
DATE
DATE
U
TI
LI
Z
A
R
E
DESCRIEREA
Funcia de descriere a datelor permite definirea structurii bazei
de date cu ajutorul
STRUCTURII
SGBD
limbajului de definire. Definirea datelor poate fi realizat la nivel logic,
conceptual
BAZEI
DE DATEi fizic.
MANIPULARE
La nivelul acestei funcii se descriu multitudinea
atributelor (cmpurilor) din cadrul structurii
BIBLIOTECILE
bazei de date, legturile dintre entitile bazei de date sau dintre atributele
aceleai entiti, se
UTILIZATORILOR
definesc eventualele criterii de validare a datelor, metodele de acces la date, aspectele
referitoare la asigurarea integritii i confidenialitii datelor, etc. Rezultatul acestei funcii
se va concretiza n schema bazei de date, memorate n cod intern.
Funcia de manipulare a datelor este cea mai complex funcie i
realizeaz urmtoarele activiti:
crearea (ncrcarea) bazei de date;
adugarea de noi nregistrri (tupluri);
suprimarea unor nregistrri;
modificarea valorilor corespunztoare unor cmpuri;
cutarea, sortarea i editarea parial sau total a unei nregistrri virtuale etc.
Funcia de manipulare a datelor se realizeaz prin intermediul limbajului de
manipulare a datelor.
Funcia de utilizare asigur mulimea interfeelor necesare pentru
Pagina 21 din 54
Pagina 22 din 54
Baza de date
Fig.1.14. Calculatorul backen
Calculator
Calculator
general
backend
(master)
(slave)
Calculatorul backend poate fi
un calculator clasic, dar cu un soft specific (de SGBD),
caz n care poart numele de calculator de baz de date sau poate fi o main cu hard
specializat n gestiunea bazelor de date (n efectuarea operaiilor pe o baz de date), situaie n
care este denumit main baze de date.
Prin introducerea unui backend se obin urtoarele avantaje n lucrul cu baze de date:
se transfer n memoria calculatorului central numai datele utile, evitndu-se astfel
saturarea acesteia;
specializarea backend-ului n prelucrri pe baze de date determin performane sporite
n gestionarea bazelor de date, n raport cu ale unui calculator general (cental);
Pagina 23 din 54
Pagina 25 din 54
CAPITOLUL 2
Pagina 26 din 54
completitudinea
(existena
elementelor
informaionale
solocitate)
Pagina 27 din 54
Este etape n care se realizeaz popularea masiv cu date a BD. Dei coninutul
acestei etape este relativ simplu, activitatea putnd fi considerat drept o activitate de rutin,
fr dificultatea i creativitatea reclamate de activitile de analiz i proiectare, ncrcarea
datelor n BD reprezint totui o activitate dificil de realizat datorit volumului mare de date
care se transfer n BD de la diferite surse de date.
Popularea cu date a BD trebuie s garanteze ncrcarea numai a datelor corecte i
acesta cu un minim de effort, respestiv cu un minim de parcurgeri ale ciclului: validarecorectare.
Sursele de alimentare cu date a bazei pot fi (fig.2.41.):
Pagina 31 din 54
documente primare;
colecii de date, gestionate prin diverse instrumente informatice, de exemplu sisteme
de gestiune a fiierelor.
Indiferent de sursa datelor, se recomand ca n scopul ncrcrii BD s se constituie
colecii temporare de date (fiiere). n situaia n care datele se preiau din documente este
necesar utilizarea unor colecii temporare pentru a se deplasa activitatea de validare a datelor
ct mai devreme n procesul de ncrcare a datelor n BD. Programele de ncrcare a bazei de
date, scrise n limbajul de manipulare a datelor de care dispune SGBD-ul trebuie s conin
ct mai puine validri ntruct aceste validri ncetinesc mult execuia programelor i
determin apatiia unor puncte albe n BD, de exemplu, legturi neconstituite datorit
inexistenei datelor.
Pe la alt parte, n situaia n care datele se preiau din colecii gestionate prin alte
instrumente informatice este necesar utilizarea coleciilor temporare pentru a se putea adapta
ct mai bine structura acestora colecii la modul de organizare a datelor n BD. Programele de
ncrcare vor fi n acest caz mai simple i mai robuste, asigurnd un transfer mai rapid al
datelor n cadrul BD.
Fis1
Fis2
date
Validare
Corectare
Exploatarea BD de ctre diferii utilizatori finali este realizat n scopul satisfacerii
Conversi
cerinelor de informare ale acestora. SGBD sprijin utilizatorii finali i n exploatarea BD,
oferind o derie de mecanisme i instrumente cum ar fi de exemplu, limbajele de manipulare a
Colecie
datelor care servesc la descrierea
cerinelor de date.
Colecie
temporar
ntreinerea BD reprezint o activitate complex, care se refer la temporar
actualizarea datelor
din cadrul BD i la reproiectarea structurii BD. Activitatea este realizat n principal de ctre
administratorul BD. ntreinerea BD este facilitat, ca i exploatarea BD de ctre SGBD
Programe
de ncrcare
date n BDa (LMD)
utilizat, de exemplu prin intermediul
limbajelor
de manipulatre
datelor, utilitarelor pentru
generarea de ststistici privind activitatea BD etc.
Pagina 32 din 54
Baza de date
Baza de date
n momentul n care efortul de ntrinere a BD este foarte ridicat se poate lua decizia
abandonrii BD i realizrii unei noi BD, care s o nlocuiasc pe cea veche.
Pagina 33 din 54
CAPITOLUL 3
MODELELE BAZEI DE DATE
TIP_NREG_2
TIP_NREG_3
Fig.3.1. Diargam de structur ierarhic
Pagina 34 din 54
TIP_NREG_4
TIP_NREG_4
O baz de date ierarhic poate fi definit ca fiind o mulime ordonat de realizri ale
unui singur tip arbore.
Noiunea de tip de arbore
Un tip arbore const dintr-un singur tip de nregistrare rdcin, la care se adaug o
mulime ordonat alctuit din unul sau mai multe tipuri de subarbori dependeni. Un tip
subarbore const dintr-un tip de nregistrare rdcin i o mulime ordonat alctuit din unul
sau mai multe tipuri de subarbori dependeni. Deci, un tip arbore const dintr-o ierarhie a
tipurilor de nregistrri.
Modelul reea utilizeaz structura reea ca structura da date da baz. Reeaua este un
graf orientat alctuit din noduri conectate prin arce. Nodurile corespund tipurilor de
nregistrare i arcele pointerilor. Modelul reea folosete nregistrrile pentru a reprezanta
entitile i pointerii ntre nregistrri pentru a reprezenta relaii dintre entiti.
Structura de reea (fig.3.2.) seamn cu structura de date arborescent, cu diferena
c un nod dependent (copil) poate avea mai mult dect un singur printe.
A
D
C
Fig.3.2. Structur reea
E
O baz de date reea const dintr-un numr oarecare de tipuri de nregistrri. O
nregistrare e constituit dintr-un numr oarecare de cmpuri (elemente sau agregate). Un
G
Pagina 35 din 54
cmp este cea mai mic unitate de date care are nume. Fiecare cmp are un tip de dat
asociat. Cmpul corespunde unui atribut i nregistrarea unei entiti.
Pagina 36 din 54
Anii optzeci au marcat apariia i consolidarea unui nou concept n cadrul tehnologiei
bazelor de date: bazele de date inteligente (BDI). Dintre realizrile extrem de convingtoare
din domeniul bazelor de date inteligente pot fi menionate bazele de date deductive (BDDe).
Pagina 38 din 54
BDI trebuie s permit tratarea unei mari cantiti de date, provenind din diferite
surse, sub diferite forme de prezentare (text, imagine, sunet, etc). BDI reclam, deci utilizarea
tehnologiilor multimedia. Trebuie subliniat faptul c diferite medii, precum imaginile sau
sunetele, atunci cnd sunt aduse n form digitizat, consum o mare cantitate de suport de
memorie. De exemplu, o pagin obinuit de caractere memorat sub form de text ASCII
reclam n jur de 2KB de memorie, n timp ce reprezentarea pictural (de tip imagine) a
aceleiai pagini reclam 500KB memorie. n situaia n care o persoan vorbete timp de
dou minute, pentru a citi aceeai pagin, digitizarea vocii reclam, pentru memorare 1MB.
Pe lng suport de memorare, tehnologiile multimedia reclam dispozitive speciale pentru
introducerea-extragerea datelor (cititor optic de caractere, scanner, plotter, sintetizator de
voce etc).
O mare cantitate de date poate fi cu adevrat util numai n condiiile utilizrii unor
metode adecvate de organizare i regsire. Modelul datelor utilizat n cadrul unei BDI irebuie
s ofere datelor o structur flexibil care s permit ncorporarea n BD att a caracteristicilor
structurale, ct i a celor comportamentale ale realitii reflectate informaional. Totodat,
BDI trebuie s poat ncorpora ct mai mult din semantica datelor n scopul transformrii BD
dintr-un ansamblu de date amorf, greu de tratat, ntr-un ansamblu posibil de interpretat drept
rspunsuri la potenialele ntrebri ale utilizatorilor. Transferarea semanticii datelor din cadrul
programelor de aplicaie, evitndu-se duplicarea programelor cu funcionalitatea apropiat.
innd seama de aceste cerine, BDI recurg adesea la utilizarea modelelor orientate obiect
pentru organizarea datelor.
A ti unde se gsete o anumit dat i cum trebuie accesat, reprezint n cadrul BDI
de multe ori o sarcin extrem de dificil.Se tie c n cadrul BD tradiionale pentru regsire se
utilizeaz modelul datelor, un sistem de indexare i un limbaj de cereri, toate avnd un
caracter static, astfel nct actualizarea lor nu se poate realiza dect prin procese externe, la
anumite intervale de timp. n cadrul BDI se utilizeaz frecvent procese de cutare inteligente,
bazate pe inferene care permite determinarea nevoilor informaionale ale utilizatorilor i a
modului n care aceste nevoi pot fi satisfcute. Este posibil ca informaiile necesare unui
anumit utilizator nici s nu fie memorate explicit n BDI, fiind necesar inferenierea,
derivarea lor de ctre SGBDI prin procese de raionament.
Nu numai procesul de cutare a datelor n cadrul BDI poate fi prezentat drept un
proces inteligent, ci i procesele de asigurare a calitii datelor din BDI, de gestionarea
inteligent, ci i procesele de asigurare a calitii datelor din BDI, de gestionare a tranzaciilor
etc. BDI presupun, deci nglobarea n cadrul SGBDI a unor puternice faciliti de raionament
Pagina 39 din 54
automat. Aceste faciliti de infereniere fac ca BDI s dobndeasc un caracter dinamic. BDI
sunt n mod necesar BD active, cu un comportament relativ autonom, care iniiaz aciuni
fr intervenii externe asupra ei.
n sfrit, SGBDI trebuie s ncorporeze o serie de faciliti de asistare a procesului de
modeloare a datelor, precum i faciliti de interaciune cu utilizatorii, att n ceea ce privete
formularea cererilor de date, ct i n explicarea structurii BD i a comportamentului acesteia.
Aceste caracteristici ale BDI le fac extrem de utile n aplicaii de o mare complexitate
n care volumul, structura i dinamica datelor ridic probleme deosebite n utilizarea bazelor
de date convenionale. Caracterul activ al BDI, precum i facilitile de modelare i de
interaciune cu utilizatorii fac ca efortul de realizare i intreinere a BDI s se distribuie mai
echilibrat ntre om i main, dect la BD convenionale.
Pagina 40 din 54
CAPITOLUL 4
PROTECIA BAZELOR DE DATE
Protecia bazelor de date const ntr-un set de msuri umane i faciliti oferite de
SGBD prin care se urmrete asigurarea integritii datelor, definit simplu prin corctitudinea
datelor introduse i manipulate, i a securitii datelor, ce vizeaz interzicerea accesului la
date pentru persoanele ce nu au competene n folosirea lor. Aceasta capt o importan
deosebit n contextul extinderii folosirii configuraiilor cu numr mare de utilizatori i cu un
volum mare de date de prelucrat.
n cea ce privete sfera de aciune a metodelor utilizate pentru protecia datelor, pot fi
puse n eviden dou tendine: protecia mpotriva unor defecte sau erori accidentale i
protecia complet care realizeaz n plus fa de prima i protecia contra unor aciuni
violente. Teoretic, toate sistemele ar trbui s asigure protecia complet a datelor. n practic
ns, costul proteciei care crete pe msur ce sunt reduse posibilitile de apariie a unor
erori i de violare a confidenialitii datelor, este cel care dicteaz complexitatea metodelor
de protecie care vor fi utilizate.
Aspectele proteciei bazelor de date ce vor fi prezentate n continuare se bazeaz pe
presupunerea c protecia informaiei la nivelul sistemului de operare este asigurat.
Integritatea datelor
Corespunztor situaiilor care pot genera apariia unor date incorecte n baza de date,
se disting trei aspecte ale asigurrii integritii datelor:
Asigurarea integritii semantice a datelor presupune prevenirea
introducerii unor date incorecte i a efecturii unor prelucrri greite. Dac acest lucru
nu va fi mpiedicat sau semnalat imediat, datele vor fi utilizate n alte prelucrri, declannduse astfel un proces necontrolat de alterare a bazei de date.
Cu ct sesizarea unei erori are loc dup o perioad mai mare, cu att efectele ei vor fi
mai greu sau chiar imposibil de nlturat.
Controlul accesului concurent la date presupune prevenirea obinerii
Pagina 41 din 54
Pagina 44 din 54
Un astfel de sistem de cifrare, frecvent utilizat, este Data Encryption Standard (DES)
eliberat de Biroul Naional de Standarde. Acesta are la baz un algoritm de criptare public,
care ns utilizeaz o cheie de criptare privat. Cheia de decriptare este aceeai cu cea de
criptare i algoritmul este standard, este posibil implementarea sa hardware pe un singur
chip, ca o consecin, criptarea i decriptarea pot fi realizate foarte rapid i cu un cost sczut,
n comparaie cu soluia implementrii software a algoritmului.
Algoritmul DES folosete o cheie pe 64 bii pentru un bloc de 64 bii de text iniial,
furniznd ca rezultat un bloc de 64 bii text cifrat. n cadrul unui bloc, caracterele sunt
substituite i rearanjate corespunztor valorii cheii.
Problema securitii datelor se rezum la asigurarea securitii cheii de criptare.
Aceasta trebuie pstrat n condiii de siguran, iar n cazul transmiterii ei pentru a fi utilizat
la decriptarea trebuie utilizate linii speciale, punndu-se recurge chiar la utilizarea potei sau
mesagerilor.
Un alt sistem de cifrare larg rspndit este sistemul de criptare cu cheie public. Cheia
privat va fi reprezentat de o pereche de numere prime foarte mari, produsul acestora
formnd cheia public. Transformarea textului iniial n text cifrat va fi realizat pe baza cheii
publice. Astfel, oricine dorete s transmit un mesaj, va folosi cheia public a utilizatorului
cruia i este adresat mesajul. Decriptarea acestuia va fi posibil doar prin furnizarea cheii
private.
Cunoscnd cheia public a unui utilizator bineneles, c teoretic nu este imposibil
determinarea celor dou numere prime (cheia privat). Practic ns, durata foarte mare a
procesului de determinare a factorilor primi pentru un numr foarte mare, face ca aceast
metod s poat fi utilizat n asigurarea securitii datelor.
CAPITOLUL 5
DESCRIEREA APLICAIEI
5.1 Etapele de realizare a unei aplicaii
Pagina 45 din 54
Informaiile necesare acestei aplicaii sunt memorate n baza de date Licenta.mdb care
conine urtoarele tabele: tblActivitate, tblCategoria, tblChitante, tblClienti, tblData,
tblDetFact, tblRap, tblRec, tblFac, tblFurnizor, tblProduse, tblRaport, tblRec, tblSoldFinal,
tblStocInitial.
Nr
1
2
3
4
5
6
7
8
Nume cmp
Tip cmp
IDFurniz
Cheie primar
furniz
Text
adresa
Text
locfurn
Text
codpostal
Number
tara
text
telefon
text
fax
text
Tabelul tblFact conine urmtoarele cmpuri:
Semnificaie
Codul fiscal
Nume furnizor
Adresa furnizor
localitate
Codul potal
ara
Numr telefon
Numr fax
Nr
1
2
3
Nume cmp
IDFact
datafact
IDClient
Tip cmp
Cheie primar
data
Number
Semnificaie
Numrul facturii
Codul fiscal
Acelasi nume ca cel din tabelul
4
5
6
7
numdel
serbul
numbul
locelib
text
text
Number
text
tblFurnizor
Nume delegat
Serie buletin
Numr buletin
Localitatea
Pagina 47 din 54
8
9
mijloctrans
text
Mijloc transport
nrmij
text
Numr main
Tabelul tblProduse conine urmtoarele cmpuri:
Nr
1
2
3
Nume cmp
IDProduse
DenProd
IDCateg
4
5
6
7
8
um
tva
pretunitar
Stoc
cantitmin
Tip cmp
Cheie primar
Text
Number
Semnificaie
Cod produs
Denumire produs
Aceiasi intrare ca si in tabelul
Text
Number
Number
Number
Number
tblCAtegorie
Unitate de msur
tva
Pret unitar
Stoc
Cantitate minima ce trebuie sa
existe in stoc
Nr
1
2
3
4
Nume cmp
Tip cmp
Semnificaie
IDStocInit
Auto Number
luna
Number
luna
IDProdus
Number
Denumire din tabelul tblProdus
stocinit
Number
Stoc la nceput de lun
Tabelul tblSoldFinal conine urmtoarele cmpuri:
Nr
1
2
3
4
Nume cmp
Tip cmp
IDSoldFinal
Auto Number
luna
Number
IDProdus
Number
soldfinal
Number
Tabelul tblClienti conine urtoarele cmpuri:
Nr
1
2
3
4
Nume cmp
IDClient
client
adresa
locfurn
Semnificaie
luna
Denumire din tabelul tblProdus
Sold la sfrit de lun
Tip cmp
Cheie primar
Semnificaie
Cod fiscal beneficiar format din 7
Text
Text
Text
sau 8 cifre
Nume client
Adresa
localitate
Pagina 48 din 54
5
6
7
8
codpostal
Number
Codul potal
tara
text
ara
telefon
text
Numr telefon
fax
text
Numr fax
Tabelul tblChitante conine urmtoarele cmpuri:
Nr
1
2
Nume cmp
IDChit
IDClient
Tip cmp
Auto number
Number
Semnificaie
Numrul chitanei
Denumire client, aceiasi cu cele
3
4
dataachit
IDFact
Date
Number
Nr
1
2
3
Nume cmp
IDCategorie
Categ
desriere
Tip cmp
Number
Text
Memo
Semnificaie
Numar categorie
Denumirea categoriei de produse
Enumerarea produselor care fac
Nr
1
2
Nr
1
2
3
Nume cmp
Tip cmp
IDActiv
Number
DenActiv
Text
Tabelul tblRaport conine urmtoarele cmpuri:
Nume cmp
IDRaport
DenRaport
IDActiv
Tip cmp
Number
Data
Number
Semnificaie
Numar activitate de productie
Denumire activitate de productie
Semnificaie
Numar raport
Denumire raport
Numar activitate, luat din tabelul
tblActivitate
Pagina 49 din 54
Nr
1
2
3
4
5
6
7
Nr
1
2
3
Nr
1
2
3
4
Nr
1
2
3
4
Nume cmp
IDRec
DataRec
nrfact
IDFurniz
nrCVS
dataCVS
Tip cmp
Cheie primar
Data
Number
Semnificaie
Numr recepie
Data recepiei
Acelasi nume ca cel din tabelul
Number
tblFact
Acelasi nume ca cel din tabelul
Number
Data
tblFurnizor
Numar certificat sanitaro-vet
Data certificatului sanitaro-
sursa
text
Tabelul tblData conine urmtoarele cmpuri:
veterinar
Populatie sau alta firma
Nume cmp
Tip cmp
luna
Number
an
Number
data
Text
Tabelul tblDetFact conine urmtoarele cmpuri:
Nume cmp
IDDetFact
IDFact
IDProd
Tip cmp
Auto Number
Number
Semnificaie
Identidicator factur
Acelasi numar ca cel din tabelul
Number
tblFact
Acelasi numar ca cel din tabelul
catitiesita
Number
Tabelul tblDetRec conine urmtoarele cmpuri:
Nume cmp
IDDetRec
IDRec
IDProd
catitintrata
Formulare(Forms)
Semnificaie
Luna
An
Data
tblProdus
Cantitatea ieit
Tip cmp
Auto Number
Number
Semnificaie
Identificator recepie
Acelasi numar ca cel din tabelul
Number
tblRec
Acelasi numar ca cel din tabelul
Number
tblProdus
Cantitatea intrat
Pagina 50 din 54
O baz de date folosete multe procese, iar stocarea datelor este doar unul dintre ele.
O dat ce tabelele exist, este nevoie de o modalitate de a introduce i de le modifica. Cea
mai eficient modalitate de a lucra cu datele este prin formulare. Acestea ofer o interfa
atractiv pentru vizualizarea sau introducerea datelor din tabele. Prin faptul c urmresc
introducerea sau modificarea datelor din tabele dup anumite reguli stricte,impuse de
programator, formularele permit eliminarea erorilor provocate de utilizatori la manipularea
datelor. Un formular conceput n mod corespunztor ajut la introducerea datelor mai rapid i
mai exact.
Aplicaia folosete urmtoarele formulare:
Pagina 51 din 54
Din acest meniu se pot introduce date, modifica prin butoanele FORMULARE i
FORMULARE (CONTINUARE). Pot fi introduse activiti, categorii, produse, clieni,
furnizori, produse vndute, chitane, facturi. De exemplu introducerea sau modificarea
produselor se poate realiza folosind urmtorul formular:
Pagina 52 din 54
asemenea se pot obine diverse raporte pe baza unor criterii de dat (de exemplu, Afiarea
chitanelor dintr-o anumit zi sau pe o anumit perioad, Afiarea centralizatorului de facturi
i de recepii.
Pagina 53 din 54
O alt categorie de rapoarte ce se poate obine este pe baza codului fiscal o constituie
Situaia facturilor clienilor i Situaia recepiilor. Urmtorul raport exemplific aceast
funciune.
Pagina 54 din 54