Sunteți pe pagina 1din 46

Universitatea Constantin Brncui din Trgu-Jiu

Facultatea de Inginerie
Departamentul de Automatic, Energie i Mediu

BAZE DE DATE
LECTOR DR. ADRIAN RUNCEANU

03.03.2013

Curs 1 - BAZE DE DATE

Curs 1
Noiuni introductive
despre
teoria general a bazelor de date

03.03.2013

Curs 1 - BAZE DE DATE

Cteva precizri
Structura cursului

2 ore curs titular curs


Lector dr. Adrian Runceanu

2 ore laborator titular aplicaii practice


Prep.ing. Alina Dinc

03.03.2013

Curs 1 - BAZE DE DATE

Cteva precizri
Forme de examinare:
Examen final (verificare) 60%
Evaluare pe parcursul semestrului a

activitii de laborator 30%


Prezena pe parcusul semestrului 10%

03.03.2013

Curs 1 - BAZE DE DATE

Cteva precizri
Bibliografia necesar cursului:
1. Dezvoltarea bazelor de date n Oracle 9i prin exemple,
Dan Hotka, Editura All, 2002.
2. An Introduction to Database Systems, C. J. Date,
Addison-Wesley Publishing Company, New York, 1995.
3. Database Management Systems, Ramakrishnan, R., New
York: McGraw-Hill, 1998.
4. SQL. Dialecte DB2, Oracle, Visual FoxPro, M. Fotache,
ed. Polirom, 2001.
5. Baze de date Visual Foxpro 6.0 ndrumar de
laborator, autori Marian Popescu, Adrian Runceanu,
Editura Academica Brncui, Trgu-Jiu, 2007.

03.03.2013

Curs 1 - BAZE DE DATE

Cteva precizri
Referina bibliografic nr. 5 se poate mprumuta de
la Biblioteca Facultii de Inginerie, Str. Geneva nr.3, Etaj I
lng Decanat.
1. Suport curs - varianta electronic disponibil pe site-ul:
www.runceanu.ro/adrian
2. ndrumar de laborator - varianta electronic disponibil
pe site pentru fiecare lucrare de laborator.
Not: Actualizarea site-ului se face sptmnal.

03.03.2013

Curs 1 - BAZE DE DATE

Coninutul cursului
n cadrul acestui curs se vor studia
bazele de date prelucrate cu ajutorul
sistemului de gestiune a bazelor de date

ORACLE Database 11g Express Edition


Limbajul de programare a bazelor de
date n care se vor face exemplificrile
noiunilor teoretice va fi SQL (Structured
Query Language).

03.03.2013

Curs 1 - BAZE DE DATE

Noiuni introductive
despre
teoria general a bazelor de date

1.1. Sisteme de baze de date


1.2. Modelul de date relaional
1.3. Modelul de date orientate obiect

03.03.2013

Curs 1 - BAZE DE DATE

1.1.Sisteme de baze de date


Un sistem de baze de date este un
sistem computerizat de eviden a
informaiilor.
Informaia ntr-un sistem de baze de
date consta att din date ct i din
informaii despre date (metadate) cum ar fi
relaiile dintre date.

03.03.2013

Curs 1 - BAZE DE DATE

10

1.1.Sisteme de baze de date


Un sistem de baze de date poate fi
considerat ca avnd patru pri:
1. date
2. utilizatori

3. hardware
4. software

03.03.2013

Curs 1 - BAZE DE DATE

11

1.1.Sisteme de baze de date


Datele:
Sunt informaii pe care diferii utilizatori (firme,
agenii, sau simpli utilizatori) le colecteaz pentru
a-i ndeplini scopurile sau misiunile.
Datele individuale sunt stocate n mulimi de
date relaionate (legate) numite nregistrri.
O colecie de nregistrri dependente se
numete baz de date.

03.03.2013

Curs 1 - BAZE DE DATE

12

1.1.Sisteme de baze de date


Utilizatorii:
Diferite persoane sau grupuri de
persoane care folosesc informaiile
sunt definite ca utilizatori.
Hardware: De obicei noiunea de
hardware const din device-uri fizice,
cum ar fi harddisk-uri, imprimante,
interfee de intrare/ieire i procesorul
de date cu memoria sa asociat.

03.03.2013

Curs 1 - BAZE DE DATE

13

1.1.Sisteme de baze de date


Software: Interfaa dintre datele fizice i
utilizatorul se numete Sistemul de Gestiune a
Bazelor de Date (SGBD).
SGBD-ul este un sistem software, dar poate
conine i hardware specializat pentru a gestiona
mai eficient datele.
Aceste componente hardware pot fi harddisk-uri
speciale care permit un acces mai rapid la date, sau
multiprocesoare care permit procesarea paralel de
date.

03.03.2013

Curs 1 - BAZE DE DATE

14

1.1.Sisteme de baze de date


SGBD-ul furnizeaz diferiilor utilizatori ai
bazei de date, diferite modaliti de lucru cu date
n funcie de necesitile fiecruia.
Aceste diferite modaliti de lucru cu datele
reprezint diferite nivele de abstractizare al
datelor:
Nivelul fizic
Nivelul conceptual
Nivelul de vizualizare

03.03.2013

Curs 1 - BAZE DE DATE

15

1.1.Sisteme de baze de date


Nivelul fizic este
cel mai de jos nivel de
abstractizare.
De obicei, acest
nivel este utilizat de
programatorii SGBDului, care sunt interesai
de cum anume se
memoreaz datele pe
suportul fizic.

03.03.2013

Curs 1 - BAZE DE DATE

16

1.1.Sisteme de baze de date


Nivelul conceptual este nivelul de mijloc al
abstrctizrii, i care se concentreaz pe
descrierea datelor care sunt n baza de date i pe
relaiile dintre aceste date.
De acest nivel de abstractizare sunt
interesai:
Administratorii bazei de date
Administratorii securitii bazelor de date.

03.03.2013

Curs 1 - BAZE DE DATE

17

1.1.Sisteme de baze de date


Nivelul de vizualizare este cel mai nalt nivel
de abstractizare.
De obicei, acest nivel este modalitatea prin
care utilizatorii finali folosesc datele.
Fiecare utilizator final are o vizualizare
specific asupra datelor pe care l interezeaz.
Aceast vizualizare a datelor nu presupune ca
utilizatorul s stie sau s neleag caracteristicile
interne ale datelor (cum ar modalitatea lor de
reprezentare sau de stocare).

03.03.2013

Curs 1 - BAZE DE DATE

18

1.1.Sisteme de baze de date


Modelele bazelor de date permit
diferenierea dintre descrierea bazei de date,
care este specificat n schem, i colecia
de coninuturi sau de valori ale datelor din
baza de date la un moment dat, care se
numete instan.

03.03.2013

Curs 1 - BAZE DE DATE

19

1.1.Sisteme de baze de date


Schema bazei de date utilizeaz un limbaj de
definire a datelor (DDL Data Definition
Language).
Manipularea datelor n baza de date (inserare,
tergere, actualizare, sau recuperare de valori de
date) se poate face cu ajutorul limbajului de
manipulare datelor (DML Data Manipulation
Language).

03.03.2013

Curs 1 - BAZE DE DATE

20

1.1.Sisteme de baze de date


SGBD-ul utilizeaz o mulime
complex de componente software
pentru a-i ndeplini funciile sale.
Aceste componente includ:
- managerul de date care
furnizeaz o interfa ctre datele
stocate fizic n baza de date;
- procesorul de interogri care
traduce limbajul de interogare n
instruciuni pentru managerul de
date;

03.03.2013

Curs 1 - BAZE DE DATE

21

1.1.Sisteme de baze de date


- precompilatorul

limbajului de
manipulare a datelor care transform
instruciunile DML de la programele de
aplicaii la limbajul gazd, i lucreaz cu
procesorul de interogri;
- compilatorul limbajului de definiie a
datelor care transform instruciunile
DDL n tabele de metadate.

03.03.2013

Curs 1 - BAZE DE DATE

22

1.1.Sisteme de baze de date


Metadatele
sunt memorate
n dicionarul
de date, care
include:

structura bazei

de date sau
schema
constrngerile
de integritate
constrngerile
de securitate

03.03.2013

Curs 1 - BAZE DE DATE

23

Modele de baze de date


Vom prezenta acum dou din modele
de baze de date care sunt cele mai utilizate:
1. Modelul de date relaional

2. Modelul de date orientate obiect

03.03.2013

Curs 1 - BAZE DE DATE

24

Noiuni introductive
despre
teoria general a bazelor de date

1.1. Sisteme de baze de date


1.2. Modelul de date relaional
1.3. Modelul de date orientate obiect

03.03.2013

Curs 1 - BAZE DE DATE

25

1.2.Modelul de date relaional


O baz de date este reprezentat cu ajutorul
modelului relaional ca o colecie de tabele.
Mult mai important, este faptul c acest model
este direct legat de conceptul matematic de relaie
i este compus din:
1. o parte structural. Schema bazei de date este o
colecie de scheme de relaii i o baz de date este
o colecie de relaii.
2. o parte de integritate. Chei primare i chei
strine.
3. o parte de manipulare. Algebra relaional i
calcul relaional.

03.03.2013

Curs 1 - BAZE DE DATE

26

1.2.Modelul de date relaional


Formal, o relaie R este o mulime, unde D1, D2,
..., Dn sunt domeniile a n atribute A1, A2, ..., An.
Elementele relaiei sunt n-tuplurile (v1, v2, ..., vn)
cu vi Di, adic valoarea celui de-al i-lea atribut
trebuie s fie un element din mulimea Di.
Elementele dintr-un tuplu sunt numite cmpuri.
Cnd un camp nu conine nici o valoare, vom
reprezenta acest fapt cu o valoare special numit
valoare null, semnificnd c nu este nici o intrare
n loc de intrarea este necunoscut.

1.2.Modelul de date relaional

CODSTUD

NUMEPREN

AN

FACULTATE

GRUPA

MEDADM

101

Popa Ionel

Inginerie

145

10.00

Tuplu

Atribute

Prezentm n continuare un exemplu de tabel


pentru gestiunea studenilor dintr-o facultate:

03.03.2013

102

Popescu Vasile

Drept

113

9.24

103

Badea George

Inginerie

112

8.79

104

Achim Mimi

Economic

126

9.31

105

Ionescu Mioara

Litere

132

10.00

Curs 1 - BAZE DE DATE

27

03.03.2013

Curs 1 - BAZE DE DATE

28

1.2.Modelul de date relaional


Constrngeri de integritate
Constrngerile de integritate restricioneaz
mulimea tuplu-rilor teoretice posibile la o mulime
care este n mod practic cu semnificaie.
Fie X i Y dou mulimi cu unul sau mai multe
atribute Ai, din schema relaional.
Spunem c Y este dependent funcional de X,
i notm acest lucru prin X Y, dac i numai dac
nu este posibil s avem dou tupluri cu aceeai
valoare pentru toate atributele din X dar cu valoare
diferit pentru toate atributele din Y.

03.03.2013

29

Curs 1 - BAZE DE DATE

1.2.Modelul de date relaional


Cele mai importante constrngeri de
integritate sunt:
Constrngerea de integritate a entitii
care stabilete c fiecare tuplu s fie unic
identificat printr-o cheie i atributul cheie s nu
poat fi null;
CODSTUD

NUMEPREN

AN

FACULTATE

GRUPA

MEDADM

101

Popa Ionel

Inginerie

145

10.00

102

Popescu Vasile

Drept

113

9.24

103

Badea George

Inginerie

112

8.79

104

Achim Mimi

Economic

126

9.31

105

Ionescu Mioara

Litere

132

10.00

03.03.2013

Curs 1 - BAZE DE DATE

30

1.2.Modelul de date relaional


Constrgerea referenial de integritate
stabilete c un n-tuplu dintr-o relaie care se
refer la o alt relaie, trebuie s se refere la un
n-tuplu care exist n acea relaie; aceast
condiie se refer la cheile strine.

03.03.2013

31

Curs 1 - BAZE DE DATE

1.2.Modelul de date relaional

O cheie candidat a unei relaii R este o


mulime minim de atribute de care toate celelalte
atribute ale lui R sunt dependente funcional.
Cheia primar a unei relaii R este una din
cheile candidat care a fost desemnat n acest scop.
O cheie strin a unei relaii R este o mulime
de atribute din schema relaional care formeaz o
cheie primar pentru o alt relaie.
CODSTUD

NUMEPREN

AN

FACULTATE

GRUPA

MEDADM

101

Popa Ionel

Inginerie

145

10.00

102

Popescu Vasile

Drept

113

9.24

103

Badea George

Inginerie

112

8.79

104

Achim Mimi

Economic

126

9.31

105

Ionescu Mioara

Litere

132

10.00

03.03.2013

Curs 1 - BAZE DE DATE

32

Noiuni introductive
despre
teoria general a bazelor de date

1.1. Sisteme de baze de date


1.2. Modelul de date relaional
1.3. Modelul de date orientate obiect

03.03.2013

Curs 1 - BAZE DE DATE

33

1.3.Modelul de date orientate obiect


Bazele de date orientate obiect permit crearea unor
obiecte complexe din componente mai simple, fiecare avnd
atribute proprii i comportament specific.
Aceste sisteme combin posibilitatea definirii i
manipulrii structurilor complexe de date cu funcionalitatea
unui limbaj de programare i tehnologia de gestiune a bazelor
de date.

03.03.2013

Curs 1 - BAZE DE DATE

34

1.3.Modelul de date orientate obiect


Modelele de date
orientate obiect (MDOO)
au fost create pentru a
modela lumea real.
De exemplu, limbajul
C++ a fost dezvoltat pentru
a crea modelul unui sistem
telefonic.
Conceptul fundamental
al unui MDOO este obiectul.

03.03.2013

Curs 1 - BAZE DE DATE

35

1.3.Modelul de date orientate obiect


ntr-un MDOO, orice entitate din lumea real
este un obiect i reciproc, orice obiect reprezint o
entitate a lumii reale.
Un obiect reprezint un grup de date
stucturate, identificate printr-o referin unic.
Un obiect persistent este un obiect stocat n
baza de date care are o durat de via mai mare
dect a programului care l-a creat.
Un obiect tranzitoriu este un obiect depus n
memorie, a crui durat de via nu depete
durata de via a programului care l-a creat.

03.03.2013

Curs 1 - BAZE DE DATE

36

1.3.Modelul de date orientate obiect


Baza de date orientate obiect (BDOO)
este o organizare coerent de obiecte
persistente, partajate de utilizatori concureni.
Prin urmare, BDOO este rezultatul
aplicrii tehnologiei orientate obiect n
domeniul stocrii i gsirii informaiilor.
Schema unei BDOO trebuie s includ:
- definiiile structurale (atribute i tipuri)
- comportamentale (metode) ale obiectelor

03.03.2013

Curs 1 - BAZE DE DATE

37

1.3.Modelul de date orientate obiect


Un sistem de gestiune al unei baze de
date orientate obiect (SGBDOO) trebuie s
ndeplineasc cerinele unui SGBD i s fie
n plus, un sistem orientat pe obiecte.
Aceste dou criterii genereaz o
mulime de caracteristici ale unui
SGBDOO.

03.03.2013

Curs 1 - BAZE DE DATE

38

1.3.Modelul de date orientate obiect


Putem accepta ca definiie minimal:
SGBDOO = SGBD + obiect + motenire +
polimorfism

03.03.2013

Curs 1 - BAZE DE DATE

39

1.3.Modelul de date orientate obiect


Caracteristicile obligatorii ale unui SGBDOO sunt:
1. Manipularea obiectelor atomice i complexe
(colecii imbricate).
Un constructor este o funcie asociat unei clase
care permite crearea i iniializarea unui obiect (n
memorie).
Un destructor este o funcie asociat unei clase
care permite distrugerea unui obiect.
Noiunea de obiect complex s-a nscut prin
aplicarea de constructori asupra obiectelor simple.
O condiie privind constructorii, referitoare la
MDOO, o constituie ortogonalitatea care presupune ca
fiecare constructor s fie aplicabil fiecrui obiect.

03.03.2013

Curs 1 - BAZE DE DATE

40

1.3.Modelul de date orientate obiect


2. Persistena obiectelor. Obiectele pot
persista mai mult dect programul care a creat
aceste obiecte.
3. Concurena acceselor. BDOO poate s fie
partajat simultan de ctre tranzaciile care o
consult i o modific.
4. Fiabilitatea obiectelor. n cazul unei
defeciuni, obiectele trebuie restaurate la
starea pe care au avut-o nainte de defeciune.

03.03.2013

Curs 1 - BAZE DE DATE

41

1.3.Modelul de date orientate obiect


5. Uurina interogrii.
Un obiect poate fi gsit utiliznd valorile
atributelor sale, legturile cu alte obiecte sau
metodele aplicate acestuia.
6. Identitatea obiectelor.
Orice obiect trebuie s aib un
identificator sistem.

03.03.2013

Curs 1 - BAZE DE DATE

42

1.3.Modelul de date orientate obiect


7. Motenirea (simpl).
O clas poate fi specializarea altei clase i, prin
urmare, poate s o moteneasc.
Motenirea reduce efortul de programare.
Exist mai multe modaliti de a moteni i
anume prin:
substituie
incluziune
restricie
specializare

03.03.2013

Curs 1 - BAZE DE DATE

43

1.3.Modelul de date orientate obiect


8. Polimorfismul.
Codul unei metode trebuie ales n funcie de
parametrii si.
9. Extensibilitatea.
SGBDOO trebuie s includ pe lng clasele
sale i tipurile predefinite i instrumentele care s
permit utilizatorului definirea unor noi clase i
tipuri.

03.03.2013

Curs 1 - BAZE DE DATE

44

1.3.Modelul de date orientate obiect


Dintre caracteristicile opionale ale unui
SGBDOO amintim:
Distribuia obiectelor. Aceast distribuie permite
gestionarea obiectelor n diferite staii.
Modelarea tranzaciilor evoluate. Ideea este de a
accepta tranzacii imbricate care pot fi descompuse
n subtranzacii.
Versiuni ale obiectelor. Plecnd de la un anumit
obiect, prin modificri succesive sau paralele, pot fi
obinute mai multe versiuni ale obiectului.

03.03.2013

Curs 1 - BAZE DE DATE

45

1.3.Modelul de date orientate obiect


Motenirea multipl. O clas (subclas)

poate fi specializarea direct a unor


supraclase i s moteneasc proprietile
acestora.
Mesajele de eroare. Este vorba de un
mecanism de detectare i tratare a erorilor
care implic faptul c dac ntr-o metod
apare o eroare,este trimis un mesaj unei
clase speciale definit anterior, care o va
nregistra i o va trata corespunztor.

03.03.2013

Curs 1 - BAZE DE DATE

ntrebri?

46

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