Sunteți pe pagina 1din 5

Prezentarea leciei / capitolul 4:

4.1 Baze de date relaionale.


Termenul de baz de date relaional (BDR) a fost introdus de E.F.Codd de la
firma IBM n anul 1969. Modelul relaional este fundamentat pe reguli, structuri i
operaii. Regulile stabilesc modul de manipulare a datelor, structurile sunt obiecte
definite ce conin date i care sunt accesibile utilizatorului, iar operaiile reprezint
aciuni prin care sunt manipulate datele sau obiectele schemei bazei de date. E.F.Codd a
formulat n anul 1985 cele 13 reguli de baz care definesc o baz de date relaional i
care sunt prezentate n tabelul urmtor:

Nr. Coninutul regulii Comentarii


regulii
R0 SGBD gestioneaz datele la nivel de Conceptul de baz este relaia.
relaie (exclusiv pe baza
caracteristicilor relaionale).
R1 Toate datele din baza de date Catalogul conine denumiri de
relaional se reprezint explicit sub tabele, coloane, domenii, restricii
forma unor valori ntr-un tabel (regula de integritate etc.
reprezentrii logice a datelor).
R2 Datele individuale dintr-un tabel sunt Datele sunt accesibile prin numele
accesate prin specificarea numelui tabelului, a liniei i a coloanei.
tabelului, a valorii cheii primare i a
coloanei (regula garantrii accesului la
date)
R3 Valorile NULL (inexistena datelor) Valoarea NULL semnific nimic.
sunt tipuri de date acceptate (regula A nu se confunda cu zero (0).
referitoare la valorile NULL).
R4 Baza de date relaional reprezint Metadatele sunt date despre date.
descrierea bazei de date n format logic Regula nu face diferenieri ntre
simplificat sub form de tabele (regula tratarea datelor i a metadatelor.
metadatelor).
R5 Modelul relaional permite SQL este limbajul de baz pentru
implementarea mai multor limbaje realizarea interogrilor asupra bazei
(regula de permisiune a limbajelor de date.
multiple).
R6 Dac vederea curent reprezint un Toate tabelele virtuale ce teoretic
tabel, toate vederile (view-urile) sunt sunt posibil de actualizat, trebuie s
actualizabile (regula actualizrii fie n mod practic actualizate.
vederilor).
R7 n operaiile de schimbare a Modelul relaional abordeaz
coninutului bazelor de date, se relaiile de baz i pe cele derivate
lucreaz la un moment dat pe toat ca pe un singur operand destinat
relaia (regula referitoare la operaiilor de actualizare (update),
actualizri, inserri i tergeri n baza inserare (insert) i tergere (delete)
de date). efectuate asupra datelor.
R8 Structura logic a bazei de date se Programele de aplicaie nu trebuie

16
prezint complet separat de structura s fie influenate de schimbrile
fizic a bazei de date (regula survenite n modul de reprezentare a
referitoare la independena fizic a datelor sau n metodele de acces.
datelor).
R9 Atunci cnd bazei de date i se aduc Programele de aplicaie nu trebuie
modificri neconforme, datele se s fie influenate de schimbrile
conserv (regula referitoare la efectuate asupra relaiilor bazelor de
independena logic a datelor). date.
R10 Restriciile de integritate sunt definte nRestriciile de integritate sunt create
limbajul folosit de sistem (regula n limbajul SQL i se stocheaz n
referitoare la restriciile de integritate).
dicionarul bazei de date i nu n
aplicaiile individuale.
R11 Accesarea datelor pe server de ctre Este presupus producerea unui
client se produce n mod continuu proces de copiere a datelor dintr-o
(regula referitoare la distribuirea baz de date localizat la distan.
geografic a datelor).
R12 Regulile i restriciile de integritate nu Nu trebuie folosit un limbaj de nivel
pot fi evitate de nici un limbaj de acces sczut orientat pe prelucrarea pe
la date (regula referitoare la tupluri.
prelucrarea datelor la nivel de baz).

Trebuie precizat faptul c nici un SGBD actual nu respect n totalitate cele 13


reguli ale lui Codd.
Aa cum s-a artat, o baz de date relaional reprezint o colecie de relaii
(tabele n accepiunea uzual, memorate fizic n fiiere). Coloanele tabelului se numesc
atribute, iar liniile se numesc tupluri.
Baza de date relaional (RDB) este compus dintr-o mulime de domenii i o
mulime de relaii peste care se aplic o mulime de asocieri. Domeniul este definit ca
mulimea obiectelor de acelai tip. Relaia este o mulime rezultat ca urmare a agregrii
(corespondenei) a dou sau mai multe mulimi. O relaie n accepiunea bazelor de date
pe domeniile Di const dintr-un cap de tabel i un corp de tabel. Asocierea se realizeaz
pe baz de atribute (din capul de tabel).
Un astfel de exemplu este tabelul (relaia) referitor la MATERIALE:
Cod_material Denumire_material Cantitate Pret_unitar
01212 Tabl 1200 180000
03214 Cornier 400 420000
04301 Cherestea 850 210000

Fiecare linie descrie un anumit material. Coloanele conin etichete ce reprezint


nume ale atributelor (Cod_material, Denumire_material, Cantitate, Pret_unitar).
Domeniul ce reprezint codurile materialelor este:
D1: {01212,03214,04301}.
iar domeniul pentru tipurile de materiale (delimitate prin denumire_material) este:
D2: {TABLA,CORNIER,CHERESTEA}.
Domeniul pentru cantitate este:
D3: {1200,400,850}.

17
Domeniul preurilor unitare, n acest caz, este:
D4: {pret_unitar pret_unitar[180000,420000]}.
Mulimea tuplurilor este definit prin produsul cartezian al domeniilor
D1 X D2 X X Dn. Exemplu de tuplu: <01212,TABLA,1200,180000>.
Relaia L se definete prin tupluri corespunztoare din tabel:
L: {<01212,TABLA,1200,180000>, <03214,CORNIER,400,420000>}.
ntr-o relaie, este necesar ca tuplurile s fie distincte (nu se permit valori duplicate). Ca
urmare, se observ c relaia este reprezentat prin tabelul bidimensional n care
coloanele sunt domenii iar liniile sunt tupluri. Numrul tuplurilor unei relaii este
cardinalul relaiei. Numrul valorilor unui tuplu este gradul relaiei. Schema unei relaii
este format din numele relaiei i lista atributelor (pentru fiecare atribut este necesar
specificarea domeniului asociat).
Modelul relaional este format din dou mulimi de operatori pe relaii: algebra
relaional i calculul relaional.
E.F.Codd a definit algebra relaional ca o colecie de operaii pe relaii, astfel
nct o anumit operaie dispune de operanzi de tipul relaie i are ca rezultat tot o relaie.
Tipurile de operaii acceptate de algebra relaional sunt operaii de baz (reuniunea,
diferena, proiecia, produsul cartezian .a.), operaii derivate (intersecia i diviziunea) i
operaii suplimentare (selecia, splitarea unei relaii, complementarea unei relaii,
nchiderea tranzitiv, jonciunea etc.). Algebra relaional permite derivarea procedural
a relaiilor.
Se prezint ca exemplu reuniunea. Reuniunea (notat cu OR, , APPEND sau
UNION) este o operaie definit pe relaiile Rel1 i Rel2 (cu aceeai schem), ce
genereaz o nou relaie Rel3 (cu schema identic cu a relaiilor Rel1 i Rel2) care este
format din reuniunea tuplurilor relaiilor Rel1 i Rel2 din figura de mai jos.
Calculul relaional conine mulimea operatorilor din modelul relaional i este o
adaptare a calculului cu predicate (o relaie este identificat cu un predicat) pentru
domeniul BDR. Calculul relaional asigur definirea neprocedural, declarativ a
relaiilor. Relaiile sunt precizate prin proprietile tuplurilor. Iniial, n BDR, variabilele
definite asupra relaiilor aveau valori care reprezentau tupluri de relaie (variabile tuplu),
obinndu-se calculul relaional orientat pe tuplu. Cnd variabilele opereaz asupra
domeniilor aa cum se petrec lucrurile n prezent ele sunt variabile domeniu i
determin calculul relaional orientat pe domeniu. Regulile de integritate sunt aseriuni
pe care datele ce formeaz baza de date trebuie s le satisfac i sunt n numr de trei:
unicitatea cheii (cheia primar trebuie s fie unic i minimal), integritatea entitii
(atributele cheii primare trebuie s fie diferite de null) i integritatea referirii (o cheie
extern trebuie s fie null n ntregime sau s corespund unei valori a cheii primare
asociate). Constrngerile structurale sunt de trei tipuri: de cheie, de referin i de entitate.
Rel1

Rel3
R

Rel2
18
Diagrama operaiei reuniune

Cheia unei relaii reprezint o mulime minimal de atribute ale cror valori
identific n mod unic un tuplu ntr-o relaie. Diferitele chei posibile se numesc chei-
candidat. Cheia candidat aleas pentru a identifica efectiv tupluri se numete cheie
primar.
Conceptele folosite pentru descrierea formal, uzual i fizic a elementelor de
baz ale organizrii datelor n baze de date relaionale sunt prezentate n tabelul 4.2 [44].

Tabelul 4.2
Formal Uzual Fizic
Relaie tablou Fiier
Tuplu linie Inregistrare
Atribut coloan Cmp
Domeniu tip de dat tip de dat

Definirea proprietilor structurale ale relaiilor se realizeaz prin tehnica


normalizrii. Se afirm c o relaie se gsete ntr-o form normal particular dac
ndeplinete un numr specificat de restricii. Normalizarea se obine printr-un numr de
pai succesivi, n cadrul unui proces reversibil, pn la realizarea formei dorite. Forma
normal a unei relaii este necesar deoarece formele normale nu produc anomalii n
actualizarea datelor unei baze de date relaionale. Tipurile de restricii folosite la formele
normale ale relaiilor sunt restriciile asupra valorilor atributelor, restriciile referitoare la
dependena atributelor secundare de chei, restriciile cu privire la dependena atributelor
principale de toate atributele. Se folosesc urmtoarele forme normale:
1NF (forma normal 1). O relaie se gsete n 1NF dac domeniile pe care
sunt definite atributele relaiei sunt formate numai din valori elementare. Un tuplu
nu trebuie s conin atribute sau grupuri de atribute repetitive (nu se admit
duplicate).
2NF (forma normal 2). O relaie se afl n 2NF dac este n 1NF i oricare
dintre atributele non-cheie este dependent funcional complet de cheia primar a
relaiei.
3NF (forma normal 3). O relaie se gsete n 3NF dac este n 2NF i
atributele non-cheie nu sunt dependente tranzitiv de cheia primar a relaiei.
BCNF (forma normal Boyce-Codd). O relaie este n BCNF dac
dependenele funcionale netriviale ce pot apare n cadrul relaiei conin, n partea
stng, ca determinant, o cheie-candidat.

19
4NF (forma normal 4). O relaie se gsete n 4NF dac n cadrul acesteia nu
se manifest mai mult dect o dependen multivaloare.
5NF (forma normal 5). O relaie L se gsete n 5NF dac fiecare dependen
jonciune este implicat printr-o cheie-candidat a lui L.
Bazele de date relaionale conin structuri de date simple i intuitive. Ele prezint
avantaje legate de existena unui ansamblu integrat de utilitare bazat pe un limbaj evoluat
de programare (generatoare de meniuri, generatoare de forme, generatoare de aplicaii,
generatoare de etichete), de existena unor limbaje speciale de definire i de manipulare a
datelor, precum i de independena complet n descrierea logic a datelor (n termeni de
relaii) i n descrierea fizic a datelor (n termen de fiiere). Dintre dezavantajele bazelor
de date relaionale, se menioneaz imposibilitatea utilizrii obiectelor complexe i
dinamice, a administrrii datelor distribuite i a cunotinelor.
Lista subiectelor pentru pregtirea n vederea evalurii finale:
ntrebri:
1. Care sunt generaiile de baze de date si de SGBD-uri?
2. Din ce se compune baza de date relaional?
3. Cum se definete relaia?
4. Care sunt formele normale i prin ce se caracterizeaz?
Studiu de caz:
Stabilii tabelele necesare i structura registrrilor pentru proiectarea unei baze de
date relaionale care se refer la activiti din domeniul administraiei publice.

20

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