examen de stat-1 sgbd.docx

28
1. Caracteristicile modelului relaţional al datelor. Structura relaţională a datelor. Operatorii modelului relaţional. Restricţii de integritate. 1.Structura relationala a datelor consta in cateva elemente cheie ale structurii: Domeniul – reprezintă un aasamblu de valori caracterizate printr-un nume. Un domeniu se poate defini: explicit (prin enumerarea valorilor) sau implicit (prin prezentarea proprietăţilor elementelor acestuia). Ex: D1={„rosu”,”galben”} – definire explicita D2={x in intervalul [0,256]} – definire implicita D3={sir_de_caractere} – definire implicita Relatia (tabela) reprezinta un subansamblu al produsului cartezian, al mai multor domenii de valori asociate datelor. Ex: D1*D2*D3*….*Dn Relaţia poate avea semnificaţia uni fişier in care : - tuplul poate fi considerat drept o înregistrare; - valorile din cadrul tuplului pot fi valori ale câmpului de înregistrare. Linii = tupluri ; Coloane = domenii Tuplul (inregistrarea) reprezinta o combinatie unica a produsului cartezian al domeniilor de valori asociate relatiei (tabelei). Intr- o relatie nu se admit tupluri duplicat. Numarul tuplurilor dintr-o relatie reprezinta cardinalul relatiei. Atributul reprezinta coloana unei tabele caracterizata printr-un nume. Unui atribut i se asociaza un domeniu de valori. Schema unei relatii – Prin schema unei realţii se înţelege numele relaţiei, urmat de lista atributelor, pentru fiecare atribut precizându-se domeniul asociat.sub forma: R(A1:D1;A2:D2;…..) Ex: R(Nume:varchar(25); Salariu: float); In general schema unei relaţii se noteaza prin R si se scrie astfel, ca exemplu: R={DISCIPLINA, PROF,GRUPA,SEF_G}

Upload: librarycptc

Post on 06-Nov-2015

230 views

Category:

Documents


0 download

TRANSCRIPT

1. Caracteristicile modelului relaional al datelor. Structura relaional a datelor. Operatorii modelului relaional. Restricii de integritate.

1.Structura relationala a datelor consta in cateva elemente cheie ale structurii:Domeniul reprezint un aasamblu de valori caracterizate printr-un nume.Un domeniu se poate defini: explicit (prin enumerarea valorilor) sau implicit (prin prezentarea proprietilor elementelor acestuia).Ex: D1={rosu,galben} definire explicita D2={x in intervalul [0,256]} definire implicita D3={sir_de_caractere} definire implicitaRelatia (tabela) reprezinta un subansamblu al produsului cartezian, al mai multor domenii de valori asociate datelor. Ex: D1*D2*D3*.*DnRelaia poate avea semnificaia uni fiier in care : tuplul poate fi considerat drept o nregistrare; valorile din cadrul tuplului pot fi valori ale cmpului de nregistrare.Linii = tupluri ;Coloane = domeniiTuplul (inregistrarea) reprezinta o combinatie unica a produsului cartezian al domeniilor de valori asociate relatiei (tabelei). Intr-o relatie nu se admit tupluri duplicat. Numarul tuplurilor dintr-o relatie reprezinta cardinalul relatiei.Atributul reprezinta coloana unei tabele caracterizata printr-un nume. Unui atribut i se asociaza un domeniu de valori.Schema unei relatii Prin schema unei realii se nelege numele relaiei, urmat de lista atributelor, pentru fiecare atribut precizndu-se domeniul asociat.sub forma:R(A1:D1;A2:D2;..) Ex: R(Nume:varchar(25); Salariu: float);In general schema unei relaii se noteaza prin R si se scrie astfel, ca exemplu: R={DISCIPLINA, PROF,GRUPA,SEF_G}Iar mulimea funcional se noteaz prin F , prin care se are n vedere relaiile dintre atribute, ca exemplu:F={DISCIPLINA, GRUPAPROF, GRUPASEF_G}Prin expresia AB se spune ca atributul A determina pe B, sau ca B depinde de A, sau ca A este determinantul lui B.2. Operatorii modelului relaional - definesc operaiile care se pot efectua asupra relaiilor, n scopul realizrii funciilor de prelucrare asupra bazei de date, respectiv interogarea(SELECT), inserarea(INSERT), modificarea(UPDATE) i tergerea(DELETE) datelor. Operatia de interogare asupra tabelelor poate fi efectuata in scris, pe foaie, utilizand algebra relationala, si anume operatiile asupra tabelelor sau vederilor: reuniunea, diferena, produsul cartezian, proiecia, selecia, jonciunea, etc., 3. Restriciile de integritate reprezint principalul mod de integrare a semanticii datelor n cadrul modelului relaional, mecanismele de definire i verificare a acestor restricii reprezentnd principalele instrumente pentru controlul semanticii datelor.Exist dou categorii de restricii:1) Restricii de integritate minimal (sunt obligatorii de definit i respectat atunci cnd se lucreaz cu modelul relaional):- Restricia de unicitate a cheii primare (cheia treb sa fie unica pentru orice tuplu)- Restricia referenial (cheia secundara trebuie sa existe ca cheie primara in tabelul din care s-a propagat sau s fie nul)- Restricia entitii(impune ca ntr-o relaie cheii primare s fie nenule.)2) Alte restricii de integritate (nu sunt obligatorii de definit i respectat, dar exist cazuri cnd aplicarea lor e necesar pentru coerena modelului)- Dependenele ntre date (modul n care datele depind unele de altele. Poate fi de mai multe tipuri: funcional, multivaloare i jonciune.)- Restricii de comportament (restricii de domeniu sau temporale)- Anomalii de actualizare:la adugare, modificare sau stergere a datelor.2. Formele de normalizare a tabelelor. Forma normal 1, 2 i 3. Exemple.Normalizarea reprezint procesul de transformare succesiv a unei BDR n vederea aducerii sale ntr-o form standard optimizat, denumit form normal. Prin normalizare se are n vedere eliminarea anomaliilor, dependenelor nedorite ntre date, eliminarea redundanelor. Pentru aducerea relaiei n forma normal 1 (FN1) procesul ncepe prin analiza atributelor relaiei. Aceasta conduce la precizarea modului n care atributele de regsesc n cadrul tabelei: la nivel elementar sau la nivel compus. Dac atributele sunt compuse, formate din alte elemente, atunci se procedeaz la asigurarea nivelului elementar.O tabel este n FN1 dac sunt eliminate cmpurile/grupurile repetitive, iar toate cmpurile sunt cmpuri atomice. Grupul de cmpuri care se repet va forma o nou tabel care se leag de tabela principal prelund de la aceasta cheia sa primar.Cmpurile atomice sunt acele cmpuri care nu mai suport nici o descompunere, sunt cmpuri elementare.Pentru forma normal 2 (FN2) analiza se realizeaz la nivelul cheilor relaiei. Aceasta presupune verificarea existenei cheilor concatenate. n cazul n care acestea exist, are loc verificarea existenei dependenelor funcionale complete. Dac exist atribute care depind funcional numai de una din cheile concatenate, atunci are loc descompunerea relaiei n dou sau mai multe relaii. Descompunerea nu are loc dac toate atributele depind funcional de ntreaga cheie format prin concatenare (cheile concatenate sunt privite ca un tot unitar).O tabel este n FN2 dac fiecare cmp este dependent funcional de cheia primar a tabelei, indiferent c este format dintr-un singur cmp sau este cheie concatenat.Aducerea unei tabele la FN2 nseamn nlocuirea unei tabele aflate n FN1 cu dou sau mai multe tabele care respect regula de nor-malizare FN2. Din punct de vedere al coninutului informaional, bazele de date sunt echivalente.n situaia n care nu exist chei concatenate, atunci relaia se afl n FN2 i se trece la evaluarea criteriului urmtor.Pentru forma normal 3 (FN3) este necesar s se stabileasc existena dependenelor tranzitive n cadrul relaiei. Prezena dependenelor tranzitive n cadrul unei relaii impune descompunerea acesteia n mai multe relaii care cuprind numai atribute ce depind de cheie. Dup nlturarea dependenelor de tip tranzitiv, relaia se gsete n FN3 i se evalueaz criteriul pentru forma normal 4.n consecin o tabel este n FN3 dac fiecare cmp non-cheie nu este dependent tranzitiv de cheia primar. Prin normalizare n FN3 o tabel aflat n FN2 se sparge n mai multe tabele prin eliminarea dependenelor tranzitive.3. Arhitectura sistemelor de gestiune a bazelor de date. Funciile fiecrui modul din sistemul de gestiune a bazelor de date.n continuare se prezint pe scurt funciile fiecrui modul din structura SGBD.- Gestionarul bazei de date realizeaz interfaa dintreprogramele de aplicaii sau de consultare i datele fizice ale bazei de date .- Gestionarul de fiiere specific alocrile de memorie pe disc i structurile de memorare care servesc la reprezentarea informaiilor pe disc.- Procesorul de consultare traduce instruciunile limbajului de consultare n instruciuni nelese de gestionarul bazei de date. Transpune interogrile utilizatorului ntr-o forma echivalent optimizat, n vederea determinrii celor mai bune strategii de cutare.- Definirea schemelor bazei de date (schemei conceptuale) i a legturilor dintre ele se efectueaz de administratorul BD, cu ajutorul unui limbaj de definire a datelor (LDD) prevzut cu un compilator ce permite crearea dicionarului de date. LDD =din Englez DDL(Data Definition Language) - se refer la crearea, modificarea si stergerea unei baze de date, tabel sau index. Structura de date este o mulime de elemente de date, de legturi care exist ntre ele i de operaii efectuate cu ele.- Precompilatorul LMD (limbaj pentru manipularea datelor (sau DML - Data Manipulation Language)) genereaz coduri obiect ale programelor realizate cu ajutorul LMD. LMD permite ca programatorii de aplicaii i neinformaticienii s manipuleze date puse n eviden descheme de orice nivel. -Dicionarul de date este dat de o mulime de scheme i de legturi dintre schemele asociate ale bazei de date, de descrierile semnificaiilor datelor i a restriciilor pe care acestea trebuie s le satisfac. Dicionarul de date poate fi el nsui implementat ca o baz de date. El constituie atunci o metabaz, adic o baz care descrie o alt baz. Utilizatorul este o persoan, care de la un terminal are acces la baza de date folosindu-se de o mulime de programe de aplicaii sau de comenzile unui limbaj de consultare.

4. Formele de normalizare a unei baze de date.Normalizarea reprezint procesul de transformare succesiv a unei BDR n vederea aducerii sale ntr-o form standard optimizat, denumit form normal. Prin normalizare se are n vedere eliminarea anomaliilor, dependenelor nedorite ntre date, eliminarea redundanelor.Aducerea unei relaii universale la FN1FN1 este tratat n general cu superficialitate, deoarece principala cerin atomicitatea valorilor este uor de ndeplinit (cel puin la prima vedere).Dintre toate formele normale, doar FN1 are caracter de obligativitate. Se spune c o baz de date este normalizat daca toate relaiile se afl mcar n FN1.O relaie este n FN1 dac domeniile pe care sunt definite atributele relaieisunt constituite numai din valori atomice. Un tuplu nu trebuie s conin atributesau grupuri de atribute repetitive.Aducerea relaiilor n FN1 presupune eliminarea atributelor compuse i acelor repetitive.A doua form normal (FN2)FN2 este strns legat de noiunea de dependen funcional. Noiunea de dependen funcional O relaie se afl n a doua form normal FN2 dac:1. se afl n forma normal FN1 i2. fiecare atribut care nu este cheie este dependent de ntreaga cheie primar.A treia form normal (FN3)O relaie este n forma normal trei FN3 dac:1. se gsete n FN2 i2. fiecare atribut care nu este cheie (nu particip la o cheie) depinde direct decheia primar.A treia regul de normalizare cere ca toate cmpurile din tabele s fieindependente ntre ele.Forma normal Boyce Codd (BCNF) este o form intermediar. O relaie este n BCNF dac pentru orice dependen funcional ntre dou atribute din cadrul relaiei atunci atributul determinant este cheie candidat.n practic procesul de normalizare se ncheie la FN3 sau BCNF. Pentru aducerea bazei de date n forma normal 4 (FN4) se verific existena a mai mult de dou dependene de tip multivaloare n cadrul relaiei. Prezena acestui tip de dependen impune descompunerea relaiei n mai multe relaii, altfel, tabela se afl n FN4 i se evalueaz criteriul urmtor de normalizare. Forma normal 5 (FN5) are n vedere analiza existenei dependenelor de tip join. Prezena dependenelor de tip join impune descompunerea relaiei considerate n mai multe relaii, altfel, tabela se afl n FN5, iar structura bazei de date este normalizat.n concluzie, procesul de normalizare a tabelelor bazei de date este un proces de analiz, creativ, prin care, pornind de la o baz de date cu structur nenormalizat, o descompunem n tabele normale cu respec-tarea principiilor asigurrii integritii datelor.

5. Algebra relaional. Operatorii asambliti. Reuniunea, diferena, intersecia, produsul cartezian. Exemple.Algebra relationala este un limbaj abstract de formulare a interogarii asupra b.d. Din algebra relationala fac parte operatorii asamblisti care fac parte din: Reuniunea- se noteaza rUs(unde r si s sunt tabele)Ex:

Diferenta- se noteaza --- (toate din tabelul r care nu-s in tabelul s) Intersectia- se noteaza (toate rindurile care sunt in ambele tabele, toate rindurile commune) Produsul cartezian- se noteaza X (se combina toate rindurile din tabelul r cu toate rindurile din tabelul s)

6. Algebra relaional. Operatorii relaionali unari (proiecia i selecia) i auxiliari(jonciunea, diviziunea). Exemple.Algebra relationala- este un limbaj abstract de formulare a interogarii asupra b.d. Operatorii relationari unary sunt: Proiectia- (indica care coloane sa fie extrasa din table) (relatia R)- extrage coloaanele a1, a2,,an din relatia RSQL: Select salariu from angajati Selectia- (indica care rinduri sa fie extrase din table) - extrage toate rindurile din R pentru care conditia este adevarata.Ex: salariu