Extras din curs
Un sistem de gestiune a bazelor de date este caracterizat prin modelul de date pe care il utilizeaza pentru a reprezenta, stoca, organiza si manipula datele. SGBD utilizeaza urmatoarele modele de date: - modelul ierarhic
- modelul retea
- modelul relational
- modelul obiect
Un model de date este un ansamblu de concepte, respectiv o conventie de reprezentare ce permite descrierea datelor pe care dorim sa le gestionam.
Modelul relational
Conceptele sale structurale de baza au fost definite de E.F.Codd si sunt: relatia, domeniul si atributul.
atribute relatie cheie externa
Cheie primara PERSONAL cheie primara DEPART
MARCA NUME
FUNCTIE DATA ANGAJ COD DEP
1000 Albu I 1.01.2005 10
1001 Albescu M 9.05.2004 20
1002 Buga F 10.10.2007 20
1003
Badea C
11.06.2008 30
1004 Popescu L 06.11.2005 20
COD DEP DENUMIRE DEP
10 Financiar
20 Audit
30 Contabilitate
Domeniu Tuplu
PERSONAL, DEPARTAMENTE – relatie
MARCA, NUME,..., COD DEPARTAMENTE – atribute
O relatie sau tabela prezinta realitatea sub forma unui tabel bidimensional de valori. Fiecare coloana a unei tabele relationale isi ia valoarea intr-o multime de valori permise numita domeniu. Fiecare linie a unui tabel se numeste tuplu sau inregistrare. Numarul total al tuplurilor dintr-o relatie formeaza cardinalitatea relatiei. Fiecare coloana a unui tabel relational corespunde unui domeniu si se numeste atribut, iar fiecare atribut poseda un numar diferit in raport cu un domeniu. Un atribut sau un grup de atribute numit cheie primara va identifica in mod unic fiecare tuplu a unei relatii. O cheie primara este definita ca un grup de n atribute, verificand o dubla proprietate: - unicitatea- valorile cheii primare sunt unice si nenule
- minimalitatea- nici un atribut care face parte din structura unei chei primare nu poate fi luat fara a se pierde unicitatea
cheie primara Bonuri de consum
NR BON DATA BON COD GEST COD SECTIE
1 1.03.2008 10 100
2 4.04.2008 11 100
cheie primara Detalii bon de consum
NR BON COD MATERIAL CANTITATE PRET
1 10000 500 1500
1 10001 600 1000
2 10000 30 1500
2 10002 40 2000
Orice alt atribut care ia valori in acelasi domeniu de definitie cu al cheii primare este numit cheie externa(straina).
Modelul relational permite descrierea datelor ale caror valori variaza in timp, in sensul ca pot fi adaugate, sterse sau modificate in si dintr-o relatie.
Schema unei relatii reprezinta proprietatile comune si invariabile ale tuplurilor pe care le va contine in decursul timpurilor. O schema a unei baze de date relationale(model relational) este definita ca un ansamblu de scheme de relatii.
Exemple de schema relationala a unei baze de date:
CLIENT (cod client, nume, telefon, fax, strada, nr, cod postal)
RI1: cod client – cheie primara
RI2: val(nume)<>null
RI3: val(cod postal)<>null
FACTURA (nr factura, data facturii, cod client)
RI1: nr factura – cheie primara
RI2: val(data facturii)<>date()
PRODUSE(cod produs, denumire, u.m.)
RI1: cod produs – cheie primara
RI2: dom(u.m.)={buc,t,kg}
DETALII FACTURII(nr facturii, cod produs, cantitate facturata, pret facturare)
RI1: nr facturii+cod produs – cheie primara
RI2: val(cantitate facturata)>0
RI3: val(pret facturare)>0
LOCALIZARE(cod postal, localitate)
RI1: cod postal – cheie primara
Restrictii de integritate intertabelare
RIreferentiale–RIR1:cod client din relatia FACTURA refera la cod client din tabela CLIENT
RIR2: nr factura DETALII FACTURII refera nr factura FACTURA
RIR3: cod postal CLIENT refera cod postal LOCALIZARE
RIR4: cod produs DETALII FACTURII refera cod produs PRODUSE
Normalizarea relatiei
Are drept scop obtinerea unei scheme relationale optime si se bazeaza pe conceptul forme normale. Normalizarea este bazata pe un proces de descompunere intr-o maniera reversibila a unei relatii de plecare, in mai multe relatii continand fiecare o singura informatie semantica. E.F.Codd a aratat ca intr-o anumita forma relatiile poseda anumite proprietati nedorite pe care le-a numit anomalii de actualizare:
1. anomalia de stergere- consta in faptul ca anumite date care urmeaza sa fie sterse fac parte din tupluri in care se gasesc si alte date, care mai sunt necesare in continuare, ori stergerea facandu-se la nivelul tuplului, acestea se pierd.
2. anomalia de adaugare- consta in faptul ca anumite date care urmeaza sa fie adaugate fac parte din tupluri incomplete, ceea ce face ca acestea sa nu poata fi adaugate.
3. anomalia de modificare- rezulta din dificultatea modificarii unei valori a unui atribut atunci cand ea apare in mai multe tupluri ale relatiei.
Pentru a inlatura aceste anomalii, Codd a stabilit trei forme normale bazate pe conceptul de dependenta functionala.
Fie atributele D si E si domeniile lor, dom(D) si dom(E) si fie o functie f:dom(D) dom(E)
Spunem ca f este o dependenta functionala daca oricare ar fi d care apartine dom(D) ii corespunde o singura val apartinand dom(E).
Preview document
Conținut arhivă zip
- Baze de Date - Access
- c1.doc
- c2.doc
- c3.doc
- c4.doc
- c5.doc