Curs baze de date

6
BAZE DE DATE CAPITOLUL I. PROIECTARE (DESIGN) DE DATE CURS 1. Preliminarii Bazele de date reprezintă un instrument indispensabil pentru sistemele informatice. Modelarea bazelor de date constitue un subiect tratat complet într-un singur curs. Baza de date reprezintă un suport extern a unei mulţimi de date care modelează un pr lumea reală, cu posibilitatea regăsirii acesteia. e memorată într-unul sau mai multe fi!iere. Baza de date însă! fel de cutie de umplere electronică - adică un container pen date digitale. Bazele de date sunt manipulate cu a"utorul si bazelor de date. #cestea, $%B-urile, suntresponsabile cu crearea, manipularea !i întreţinerea unei baze de date. &rincipala funcţie a utilizatorilor (prin intermediul programelor) să acceseze da 'el mai răsp ndit model de baze de date este cel relaţio sunt memorate în tabele. &e l ngă tabele, o bază de date rel conţine indec!i, proceduri stocate, trigger-e, utilizatori de date, mecanisme de securitate !i de gestiune a tranzacţii 'ursul propune trecerea în revistă a principalelo proiectarea !i implementarea bazelor de date relaţiona conceptelor se utilizează sistemul de gestiune Microsoft $*+ 1.1. Noţiuni folosite n teo!i" #"$elo! %e %"te . #"$& %e %"te - reprezintă un ansamblu structurat de fi!iere care grupează datele prelucrate în aplicaţii informatice ale unei persoan instituţii etc. - este definită ca o colecţie de date aflate în interd descrierea datelor !i a relaţiilor dintre ele. . O!'"ni$"!e" #"$ei %e %"te / se referă la structura bazei de date un ansamblu de instrumente pentru descrierea datelor, r care sunt supuse. 0. Siste ul %e 'estiune " #"$ei %e %"te (SGBD) - este un sistem complex de programe care asigură inte de date !i utilizatorii acesteia (exemple de program &#3# 4, 3#'+1, M5$*+, $*+ $erver) - este soft6are-ul bazei de date care asigură ) definirea structurii bazei de date7 1

description

Curs baze de date

Transcript of Curs baze de date

BAZE DE DATE

CAPITOLUL I. PROIECTARE (DESIGN) DE DATE CURS 1. PreliminariiBazele de date reprezint un instrument indispensabil pentru sistemele informatice. Modelarea bazelor de date constitue un subiect vast care nu poate fi tratat complet ntr-un singur curs. Baza de date reprezint o modalitate de stocare pe un suport extern a unei mulimi de date care modeleaz un proces (sistem) din lumea real, cu posibilitatea regsirii acesteia. De obicei o baz de date este memorat ntr-unul sau mai multe fiiere. Baza de date nsi poate fi privit ca un fel de cutie de umplere electronic - adic un container pentru o colecie de fiiere de date digitale. Bazele de date sunt manipulate cu ajutorul sistemelor de gestiune a bazelor de date.

Acestea, SGBD-urile, sunt responsabile cu crearea, manipularea i ntreinerea unei baze de date. Principala funcie a acestuia este de a permite utilizatorilor (prin intermediul programelor) s acceseze date dintr-o baz de date.Cel mai rspndit model de baze de date este cel relaional, n care datele sunt memorate n tabele. Pe lng tabele, o baz de date relaional mai poate conine: indeci, proceduri stocate, trigger-e, utilizatori i grupuri de utilizatori, tipuri de date, mecanisme de securitate i de gestiune a tranzaciilor etc.

Cursul propune trecerea n revist a principalelor probleme care apar n proiectarea i implementarea bazelor de date relaionale. Pentru exemplificarea conceptelor se utilizeaz sistemul de gestiune Microsoft SQL Server.

1.1. Noiuni folosite n teoria bazelor de date1. O baz de date :

reprezint un ansamblu structurat de fiiere care grupeaz datele prelucrate n aplicaii informatice ale unei persoane, grup de persoane, instituii etc.

este definit ca o colecie de date aflate n interdependen, mpreun cu descrierea datelor i a relaiilor dintre ele.

2. Organizarea bazei de date se refer la structura bazei de date i reprezint un ansamblu de instrumente pentru descrierea datelor, relaiilor, restriciilor la care sunt supuse.

3. Sistemul de gestiune a bazei de date (SGBD):

este un sistem complex de programe care asigur interfaa ntre o baz de date i utilizatorii acesteia (exemple de programe: ACCESS, Fox Pro, PARADOX, ORACLE, MySQL, SQL Server)

este software-ul bazei de date care asigur:

1) definirea structurii bazei de date;

2) ncrcarea datelor n baza de date;

3) accesul la baza de date (interogare, actualizare);

4) ntreinerea bazei de date (refolosirea spaiilor goale, refacerea bazei de date n cazul unor incidente);

5) reorganizarea bazei de date (restructurarea i modificarea strategiei de acces);

6) securitatea datelor.

4. Cele trei concepte de baz utilizate n organizarea bazei de date sunt:

entitatea

atributul

valoarea

Prin entitate se nelege un obiect concret sau abstract reprezentat prin proprietile sale. O proprietate a unui obiect poate fi exprimat prin perechea (ATRIBUT, VALOARE).

Exemplu: n exemplul Masa x are culoarea alba, atributul este culoare, iar valoarea este reprezentat de cuvntul alb. Alte exemple ar putea fi: (Sex, Feminin), (Nume, POP), (Profesie, Medic), (Salariu, 200$).Observaie: Atributele pot caracteriza o clas de entiti, nu doar o entitate.

5. Data este un model de reprezentare a informaiei, accesibil unui anumit procesor (om, program, calculator) i se definete prin: Identificator; Tip; Valoare.

1.2. Funcionarea unei baze de date Exploatarea unei baze de date aflate pe un suport specific (magnetic), de ctre un utilizator, prin intermediul unui sistem de calcul, avnd la dispoziie un SGBD, parcurge uzual urmtoarele etape:1.Utilizatorul, aflat la un terminal electronic, pune o "ntrebare" sau lanseaz o cerere de date, referitoare la informaiile din baza de date. ntrebarea se poate pune ntr-un limbaj de cereri specific SGBD-ului cu care se lucreaz (dac utilizatorul este familiarizat cu acest limbaj - de exemplu, SQL, FoxPro, dBase, Oracle) sau utilizatorul poate fi asistat n adresarea cererii de date de ctre SGBD (produsul soft pe care l folosete) printr-un sistem de meniuri, butoane sau ferestre de dialog (obiecte de control).

2.ntrebarea este analizat de ctre calculator, de fapt de SGBD, iar dac este corect, se ncearc (SGBD) s i se dea rspuns prin accesarea informaiilor din baza de date. Rspunsul va fi constituit din mulimea datelor cerute de utilizator, care verific criteriile specificate de acesta.Acest proces de lansare a unei cereri de date care va fi satisfcut prin furnizarea datelor care ndeplinesc proprietile cerute se numete interogarea bazei de date.3.Rspunsul la cererea de date se va afia pe ecran, se va tipri laimprimant sau se va memora ntr-un fiier.n realizarea unei baze de date se urmrete: micorarea timpului de rspuns la o interogare;

asigurarea costurilor minime de prelucrare i ntreinere ; adaptabilitatea la cerine noi (flexibilitate); sincronizarea n exploatarea simultan a datelor de ctre mai muli utilizatori(accesul concurent); asigurarea proteciei mpotriva accesului neautorizat (confidenialitate); posibilitatea recuperrii datelor n cazul deteriorrilor accidentale (integritate) etc.Exemplu: n figura 1.1 este prezentat o baz de date foarte mic, ce conine un singur fiier, numit VINOTECA; la rndul su, aceasta cuprinde date despre coninutul unei anumite vinoteci. n figura 1.2 este prezentat un exemplu de operaie de consultare din baza de date, mpreun cu datele returnate prin aceast operaie.

Fig. 1.1. Baza de date pentru VINOTECA (fiierul VINOTECA)

Fig. 1.2 Exemplu de consultare

Observaii: n limbajul SQL, fiierul VINOTECA din figura 1.1 este numit tabel, rndurile unei astfel de tabele pot fi considerate ca nregistrri din fiier, iar coloanele pot fi considerate drept cmpuri.1.3 Realizarea unei baze de date

Realizarea unei baze de date presupune parcurgerea etapelor:

1.analiza domeniului (sistemului) pentru care se realizeaz baza de date;

2.proiectarea structurii bazei de date;3.ncrcarea datelor n baza de date;

4.exploatarea i ntreinerea bazei de date. SHAPE \* MERGEFORMAT

Fig. 1 Realizarea unei baze de datea) Analiza sistemuluiAnaliza sistemului presupune stabilirea temei, analiza componentelor sistemului i analiza legturilor (asocierilor) dintre aceste componente. Rezultatul analizei formeaz modelul conceptual al bazei de date.Cele patru etape necesare realizrii unei baze de date vor fi tratate pe parcursul ntregului curs urmrind un exemplu concret i anume o baz de date pentru o agenie imobiliar din ar, denumit AGENIE IMOBILIAR, care faciliteaz tranzacii de vnzare/cumprare ntre vnztor i cumprtor, care gestioneaz documente legate de oferte imobiliare, de ntreinere a nomenclatoarelor specifice domeniului i care ofer o gam larg de rapoarte privind situaia vnzare-cumprare.Odat stabilit tema proiectului, se trece la etapa urmtoare, i anume la identificarea tuturor tipurilor de informaii, a legturilor dintre informaii i a operaiilor necesare pentru gestionarea lor. Aceast etap va fi detaliat n cursul urmtor.

b) Proiectarea structurii bazei de date

Dac etapa de analiz a modelului conceptual se realizeaz independent de un SGBD, prin etapa de proiectare a structurii bazei de date se trece la luarea n considerare a SGBD-ului cu ajutorul cruia va fi implementat i exploatat baza de date.

Proiectarea structurii bazei de date reprezint transpunerea rezultatelor obinute n urma analizei modelului conceptual n termenii unui model al datelor suportat de un anumit SGBD. Compilatorul limbajului de descriere a datelor permite aducerea schemei bazei de date la nivelul la care s poat fi memorat n baza de date.Astfel, proiectarea presupune o detaliere, de exemplu, de tip pseudocod a modulelor necesare realizrii bazei de date: module pentru crearea fiierelor, pentru introducerea datelor, pentru prelucrarea i extragerea rezultatelor, pentru tratarea erorilor etc.c) ncrcarea datelor n baza de date

Este etapa n care se realizeaz popularea masiv cu date a bazei de date, activitate care trebuie s se efectueze cu un minim de efort.d) Exploatarea i ntreinerea bazei de date

Exploatarea bazei de date de ctre diferii utilizatori finali este realizat n scopul satisfacerii cerinelor de informare ale acestora. SGBD sprijin utilizatorii finali n exploatarea bazei de date, oferind o serie de mecanisme i instrumente cum ar fi limbajele de manipulare a datelor (LMD).ntreinerea bazei de date reprezint o activitate complex, realizat, n principal, de ctre administratorul bazei de date i care se refer la actualizarea datelor din cadrul bazei de date.LMD

LMD

LDD

LMD, LDD

1. Analiza

3. ncrcarea datelor

2. Proiectarea

Baza de date

4. ntreinerea

4. Exploatarea

vinraftproducatorCab. Sauvignon2WindsorPinot Noir3FetzerMerlot50Clos du Bois

Consultare:

SELECT vin, raft, producator

FROM VINOTECA

WHERE lansat = 2004;

Rezultat ce apare pe monitorul unui PC:

raft#vinproducatoransticlelansat2Cab. SauvignonWindsor19951220043Pinot NoirFetzer19973200422Pinot NoirDehlinger19992200250MerlotClos du

Bois199892004

PAGE 1