Suport Curs BD

  • View
    280

  • Download
    2

Embed Size (px)

Transcript

UNIVERSITATEA DIN BACAU FACULTATEA DE TIINE

BAZE DE DATEConf. univ.dr. ELENA NECHITA

2010

Prezentarea cursuluiInformaiile din lumea ce ne nconjoar sunt structurate n diverse moduri. Adesea structura o impunem sau o chiar inventm noi n procesul de memorare, n ncercarea de a transforma informaiile cu care suntem bombardai n cunotine. Sistemul de structurare a datelor care intervine cel mai frecvent este tabelul, iar n cazul volumelor mari vorbim despre baze de date. Procesul de instruire n societatea noastr tot mai informatizat, n aa numita Societate Informaional, impune tot mai mult structurarea cunotinelor acumulate, capacitatea de a le organiza, clasifica, regsi i mai ales completa. Vorbim despre managementul cunotinelor, un capitol important att al ontologiei, ct i al informaticii. Putem spune c disciplina "Baze de Date" se ocup cu cteva din mecanismele de gestiune a informaiilor i a cunotinelor. Cutrile pe World Wide Web, modul n care apelm la motoarele de cutare i modul n care acestea lucreaz i au fost concepute, toate au de a face cu conceptele i procedeele de lucru cu Baze de Date. Motoarele de cutare sunt, n fond, nite instrumente de cutare a informaiilor ntr-o imens baz de date, care este actualizat continuu, pe msur ce apar noi pagini Web. Marile motoare de cutare, Google sau Yahoo, folosesc adevrate "ferme" de servere pe care menin aceste imense baze de date, astfel nct noi s obinem rspunsul n cteva clipe. Acest curs are drept scop prezentarea elementelor fundamentale despre baze de date, a conceptelor cu care se lucreaz n acest domeniu i a modalitilor de prelucrare a datelor organizate n baze de date.

4

Obiectivele cursului

Principalele obiective ale cursului sunt:

1. 2. 3. 4. 5.

nsuirea cunotinelor de baz referitoare la modul de proiectare i de programare a bazelor de date. Familiarizarea cu modelul Entitate/Asociere i cu modelul relaional. Studiul algebrei relaionale, ca suport pentru prelucrile realizate n baze de date relaionale. Studiul dependenelor funcionale i al formelor normale, n scopul optimizrii stocrii datelor n bazele de date. Prezentarea unor noiuni referitoare la limbajele utilizate n domeniul bazelor de date. Sunt necesare cunotine anterioare de matematic, programarea

calculatoarelor, structuri de date i algoritmi, limbaje de programare (C, C++).

Cerine de examinarePentru evaluare se vor realiza urmtoarele activiti: nsuirea cunotinelor teoretice din suportul de curs. Participarea la orele de laborator. Se vor da dou teste, n sptmnile a 7-a i a 13a. Este necesar ca la fiecare s se obin cel puin nota 5. Se va realiza un proiect, individual sau n echip. Examenul va consta ntr-un test de verificare a cunotinelor teoretice. Nota acordat va fi media notelor obinute la teste, la proiect i la test.

5

CUPRINSPrezentarea cursului Obiectivele cursului. Cerine de examinare 1. Introducere n domeniul bazelor de date 1.1 Informaii. Date. Colecii de date 1.2 Organizri ale datelor 1.2.1 Organizarea datelor n fiiere 1.2.2 Organizarea datelor n baze de date 1.3 Conceptul de baz de date 1.4 Sisteme de gestiune a bazelor de date 2. Niveluri de reprezentare a unei baze de date 2.1 Modelarea conceptual 2.1.1 Modelul Entitate - Asociere 2.1.2 Diagrama Entitate - Asociere 2.2. Modele de date 2.2.1 Modelul ierarhic 2.2.2 Modelul reea 3. Modelul relaional 3.1 Conceptele modelului relaional 3.2 Sisteme de gestiune a bazelor de date relaionale 4. Noi funcionaliti ale bazelor de date 4.1 Partajarea bazelor de date 4.2 Baze de date distribuite 4.3 Baze de date deductive 4.4 Baze de date multidimensionale 4.5 Baze de date orientate obiecte 4.6 Alte tipuri de baze de date 4.7 Sisteme Client / Server 4.8 Bazele de date i sistemele informaionale din organizaii 5. Forme normale. Normalizare 5.1 Dependene funcionale 5.1.1 Descompunerea 5.1.2 Asocierile i proiectarea schemelor 5.2 Dependene multivaloare 5.3 Forme normale ale bazelor de date 5.3.1. Date ne-normalizate 5.3.2 Prima form normal (FN1) 5.3.3 A doua form normal (FN2) 5.3.4 A treia form normal (FN3) 5.3.5 Forma normal Boyce-Codd (FNBC) 5.3.6 A patra form normal (FN4) 5.3.7 A cincea form normal (FN5) 5.3.8. Procesul normalizrii relaiilor

3 4 7 7 9 9 11 11 12 14 14 14 16 16 16 17 19 20 21 22 22 22 24 24 24 26 26 27 29 29 29 30 30 31 31 32 32 33 34 34 35 36

6

6. Limbaje utilizate n lucrul cu baze de date 6.1 Limbajul de definire a datelor pentru modelul relaional 6.2 Limbajul de manipulare a datelor pentru modelul relaional 6.2.1 Algebra Relaional 6.2.2 SQL 6.2.3 Calculul Relaional orientat pe tupluri 6.2.4 Calculul Relaional orientat pe domenii 7. Restriciile de integritate ale modelului relaional 7.1 Restricii de integritate minimale 7.2 Alte restricii de integritate 7.3 Aspecte privind integritatea 8. Depozite de date (Data warehouse) 8.1. Concepte de baz n data warehouse 8.2. Diferene nte bazele de date i depozitele de date 8.3. Arhitectura depozitelor de date 9. Baze de cunotine 10. Aplicaii Access 10.1. Baz de date pentru activiti colare 10.2. Baz de date pentru o activitate comercial 10.3. Baz de date pentru gestiunea unui parc auto 10.4. Baz de date pentru contabilitatea TVA 11. Teste 11.1 Testul 1 11.2 Testul 2 11.3 Testul 3 11.4 Testul 4 11.5 Testul 5 11.6 Testul 6 11.7 Testul 7 Bibliografie

37 37 38 38 42 42 43 44 44 45 46 47 47 48 49 54 56 56 74 85 99 111 111 113 115 117 120 122 124 125

7

Order is not sufficient. What is required, is something much more complex. It is order entering upon novelty; so that the massiveness of order does not degenerate into mere repetition; and so that the novelty is always reflected upon a background of system.'' (Alfred North Whitehead)

1. Introducere n domeniul bazelor de date 1.1 Informaii. Date. Colecii de dateInformaiile i cunotinele au o mare importan, att pentru dezvoltarea personalitii umane, ct i pentru evoluia vieii i societii. Nici societatea i nici indivizii ei nu pot progresa satisfctor n lips de informaii. Prin intermediul informaiilor se asigur transferul cunotinelor de la o generaie la alta, se asigur accesul la cele mai avansate realizri ale omenirii. Conceptul de informaie reprezint o noiune de maxim generalitate care semnific o comunicare, o veste, o tire, un mesaj, un semnal etc. despre evenimente, fapte, stri, obiecte, despre forme de manifestare a realitii care ne inconjoar. Informaia reprezint cantitatea de noutate adus de un mesaj din lumea real. Informaia, energia i materia sunt cei mai importani factori ai economiei moderne pe lng pmnt, capital i fora de munc. Fa de materie, informaia prezint caracteristici distincte: Se poate combina aproape nelimitat. Este puternic condensabil. Se percepe ca o anumit msur a ordinii, ntruct ea anihileaz incertitudinea i nedeterminarea. O msur a ordonrii este entropia negativ, tremen care a luat natere prin analogie cu entropia, care este, n termodinamic, o msur (exprimabil matematic) a neordonrii. Calitatea unei informaii const n gradul de probabilitate cu care creeaz utilizatorului certitudinea unei afirmaii. Oamenii ajung la informaii direct, prin intermediul altor oameni sau prin purttori de informaie, precum ziare, cri, imagini, videocasete, CD-uri, discuri sau echipamente de comunicaie (radio, televizor, fax, telefon sau calculator). Deci informaia reprezint o component esenial a lumii reale, ce face posibil caracterizarea diferitelor elemente ale naturii (fiine, obiecte, stri, fenomene) i permite comunicarea. Din punct de vedere conceptual, informaia reprezint o reflectare n planul gndirii umane a legturilor de cauzalitate, privind aspecte din realitatea ce ne nconjoar. Informaia are deci sens de noutate pentru cel cruia i se adreseaz, indiferent de forma pe care o ia (tire, semnal, comunicare). Putem spune deci c informaia este un mesaj, dar cu precizarea c nu orice mesaj este o informaie. Dac mesajul nu transmite o noutate i nu are suport real, atunci nu prezint interes pentru receptor i deci nu are caracter de informaie. Informaia primete totdeauna atributul domeniului pe care l reprezint. De exemplu, realitile din domeniul economic se reflect n informaii economice. Procesul de sesizare, nelegere i nsuire a informaiilor dintr-un anumit domeniu reprezint un proces de informare. Informaiile dobndite n urma unui proces de informare ntr-un anumit domeniu formeaz cunotinele despre acel domeniu, iar mulimea acestora reprezint baza de cunotine. Cunotinele reprezint deci o nsumare a tuturor informaiilor dobndite ntr-un anumit domeniu, sau care se refer la un anumit obiect. n sintez, putem aprecia 8

cunotinele c sunt elemente abstracte i individuale despre obiectele i domeniile lumii reale, nsuite i/sau dobndite. Aproape orice activitate are i o latur informaional. De exemplu, n paralel cu procesul de producere de bunuri i servicii se desfoar i un proces informaional, constnd din fluxuri de documente prin care se ine evidena activitii desfurate. Atunci cnd informaia este gestionat cu ajutorul tehnicii de calcul, ea devine dat. Data este forma de reprezentare accesibil a informaiei prelucrate. Ea reprezint suportul formal al informaiei, care se concretizeaz n: cifre, litere, simboluri, coduri i alte nsemne. Exist o coresponden determinat ntre informaie, simbol i dat astfel c, foarte adesea, n practic, termenul de informaie este utilizat pentru a desemna date, iar expresia prelucrarea informaiilor nlocuiete expresia prelucrarea datelor. Putem considera c datele prelucrate, n msura n care afecteaz n sens pozitiv comportamentul receptorilor (oameni sau maini), au calitatea de informaii. n procesul prelucrrii i utilizrii informaiilor, acestea sunt privite din patru puncte de vedere: Din punct de vedere sintactic, atunci cnd se urmrete aspectul admisibil al acestora, n sensul c informaiile trebuie s capete anumite forme de reprezentare, ce respect riguros anumite reguli. Din punct de vedere semantic,