Sunteți pe pagina 1din 62

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 2 - BAZE DE DATE

Curs 2
Sistemul de gestiune a bazelor de
date

ORACLE

03.03.2013

Curs 2 - BAZE DE DATE

S.G.B.D. ORACLE
2.1. Evoluia i facilitile sistemului ORACLE
2.2. Arhitectura sistemului ORACLE
2.3. ORACLE SERVER
2.4. Oracle Database 11g Express Edition

03.03.2013

Curs 2 - BAZE DE DATE

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Oracle este un sistem de gestiune a bazelor de
date complet relaional, extins, cu faciliti din
tehnologia orientat obiect (OO).
Sistemul Oracle este realizat de firma Oracle
Corporation care a fost nfiinat n anul 1977 n SUA
- California i acum este cel mai mare furnizor de
software de gestiunea datelor.
Acesta este operaional pe toat gama de
calculatoare (micro, mini, mainframe) sub diverse
sisteme de operare.

03.03.2013

Curs 2 - BAZE DE DATE

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Prima versiune de SGBD Oracle a
fost realizat la sfritul anilor '70
respectnd teoria relaional.
n cadrul sistemului a fost implementat
de la nceput limbajul relaional SQL pe
care l-a dezvoltat ulterior fa de
versiunea standard rezultnd SQL*Plus.

03.03.2013

Curs 2 - BAZE DE DATE

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
ncepnd cu versiunea 5.0 SGBD
Oracle are urmtoarele faciliti
suplimentare:
- funcioneaz n arhitectura client/server
- are limbaj procedural propriu PL/SQL
- are precompilatoare ca interfa cu
limbajele universale

03.03.2013

Curs 2 - BAZE DE DATE

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
n iunie 1997 s-a lansat SGBD Oracle
versiunea 8.0, inclusiv n Romnia, care a marcat o
nou generaie de baze de date Oracle deoarece:
- iniiaz trecerea de la arhitectura client/server la
arhitectura NC (Network Computing)
- are o mare deschidere
- are optimizri performante
- pune accent mai mare pe analiz (modelarefuncionalitate) fa de programare (codificare)

03.03.2013

Curs 2 - BAZE DE DATE

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
n noiembrie 1998 s-a lansat SGBD Oracle
8i ca sistem de baze de date pe Internet.
Aceast versiune are urmtoarele
caracteristici:
Este reproiectat arhitectural n mod
fundamental i se ncadreaz n tendina de
trecere de la arhitectura client/server la
arhitectura NC
Permite dezvoltarea unei baze de date de orice
dimensiune, n mod centralizat sau distribuit

03.03.2013

Curs 2 - BAZE DE DATE

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Are faciliti de salvare/restaurare automate i

inteligente
Permite partiionarea integral pentru tabele i
indeci
Are mesagerie integral, prin comunicarea ntre
aplicaii i procesare offline (chiar dac aplicaiile
nu sunt conectate)
Prelucrarea paralel pentru:
replicare
cereri de regsire
actualizare

03.03.2013

Curs 2 - BAZE DE DATE

10

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Ofer faciliti din tehnologia OO, prin care se permite

definirea i utilizarea de obiecte mari i complexe


Optimizeaz cererile de regsire prin reutilizarea
comenzilor SQL identice lansate de utilizatori diferii i
prin realizarea unui plan de execuie a instruciunilor
SQL
Are un grad de securitate sporit prin:
server de criptare
control trafic reea
niveluri de parolare, etc.

03.03.2013

Curs 2 - BAZE DE DATE

11

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Permite lucrul cu depozite de date (Data

Warehouse) care conin date multidimensionale


(cu tehnologia OLAP)
Conine foarte multe produse ceea ce-l face s fie
o platform pentru baze de date:
servere (Oracle 8, Application, Security, Internet

Commerce, etc)
instrumente (Designer, Developer, Express, WebDB, etc)
aplicaii (Financials, Projects, Market Manager,
Manufacturing, etc)

03.03.2013

Curs 2 - BAZE DE DATE

12

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Este primul SGBD pentru Internet cu server Java

inclus
Reduce drastic costurilor pentru realizarea unei
aplicaii (de circa 10 ori fa de versiunea
anterioar)
Este o platform multipl permind lucrul pe orice
calculator, orice sistem de operare, orice aplicaie,
orice utilizator

03.03.2013

Curs 2 - BAZE DE DATE

13

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Are instrumente diverse pentru dezvoltarea

aplicaiilor:
bazate pe modelare (Designer, Developer, Application

Server)
bazate pe componente (Java)
bazate pe HTML (browsere, editoare Web) i XML
prin programare:
proceduri stocate (PL/SQL, Java)
obiecte standard
obiecte ODBC
obiecte JDBC
fraze SQL
tip internet WebDB

03.03.2013

Curs 2 - BAZE DE DATE

14

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Ulterior a fost lansat sistemul Oracle 9i care a
marcat trecerea la o nou generaie de servicii
internet.
El este mai mult dect un suport pentru baze
de date deoarece ofer o infrastructur complet
de software pentru afaceri electronice (e-business)
i ruleaz pe o varietate de sisteme de calcul i de
operare:
SUN-SOLARIS
HP-Unix
IBM-AIX
PC_WINDOWS
LINUX

03.03.2013

Curs 2 - BAZE DE DATE

15

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Componenta Oracle WebDB a evoluat
n Oracle Portal.
Oracle 9i DATABASE are fa de
versiunea anterioar o protecie ridicat i
automatizat iar costul administrrii bazei
de date scade n mod drastic.

03.03.2013

Curs 2 - BAZE DE DATE

16

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Oracle 9i REAL APPLICATION CLUSTERS (RAC) se

bazeaz pe o nou arhitectur de BD numit mbinare


ascuns (Cache Fusion).
Aceasta este o nou generaie de tehnologie de
clustere.
Conform acestei arhitecturi la adugarea unui
calculator ntr-o reea cu BD Oracle, clusterele se
adapteaz automat la noile resurse, fr s fie necesar
redistribuirea datelor sau rescrierea aplicaiei.
Posibilitatea apariiei unei erori la o configuraie cu 12
calculatoare sub Oracle 9i RAC este foarte mic, estimat
ca durat n timp la cca 100.000 de ani.

03.03.2013

Curs 2 - BAZE DE DATE

17

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
n Oracle 9i APPLICATION SERVER se pot

creea i utiliza aplicaii Web care sunt foarte


rapide i permit integrarea serviciilor de
Internet.

03.03.2013

Curs 2 - BAZE DE DATE

18

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
Oracle 9i DEVELOPER SUITE este un mediu

complet pentru dezvoltarea aplicaiilor tip


afaceri electronice (e-business) i tip Web.
El se bazeaz pe tehnologiile Java i
XML i permite personalizarea (Oracle
Personalization).
n anul 2003 a fost lansat versiunea Oracle
10g care adaug noi faciliti sistemului
Oracle 9i.

03.03.2013

Curs 2 - BAZE DE DATE

19

2.1. EVOLUIA I FACILITILE


SISTEMULUI ORACLE
n anul 2007 a fost lansat versiunea

Oracle 11g care are cateva facilitati in plus:


Gestioneaza datele mai eficient prin
compresii avansate si partitionari
Simplifica sistemele prin stocarea tuturor
datelor in Oracle Database cu Oracle
SecureFiles

03.03.2013

Curs 2 - BAZE DE DATE

20

S.G.B.D. ORACLE
2.1. Evoluia i facilitile sistemului ORACLE
2.2. Arhitectura sistemului ORACLE
2.3. ORACLE SERVER
2.4. Oracle Database 11g Express Edition

03.03.2013

Curs 2 - BAZE DE DATE

21

2.2. ARHITECTURA SISTEMULUI


ORACLE
Componentele care formeaz arhitectura de
baz Oracle (figura urmatoare) sunt dispuse ntr-o
configuraie client/server.
Aceste componente sunt plasate pe
calculatoare diferite ntr-o reea asigurnd
funcionaliti specifice, astfel:
- serverul asigur memorarea i manipularea
datelor, precum i administrarea bazei de date,
- iar clientul asigur interfaa cu utilizatorul i
lanseaz aplicaia care acceseaz datele din baza
de date.

03.03.2013

Curs 2 - BAZE DE DATE

22

2.2. ARHITECTURA SISTEMULUI


ORACLE

Arhitectura ORACLE

03.03.2013

Curs 2 - BAZE DE DATE

23

2.2. ARHITECTURA SISTEMULUI


ORACLE
Arhitectura Oracle se ncadreaz n
tendinele actuale i anume este
structurat pe trei niveluri:
- nucleul
- interfeele
- instrumentele de ntreinere

03.03.2013

Curs 2 - BAZE DE DATE

24

2.2. ARHITECTURA SISTEMULUI


ORACLE
Nucleul Oracle conine componentele
care dau tipul relaional pentru SGBD
Oracle:
limbajul relaional de regsire SQL
limbajul procedural propriu PL/SQL

03.03.2013

Curs 2 - BAZE DE DATE

25

2.2. ARHITECTURA SISTEMULUI


ORACLE
Sistemul Oracle creeaz i ntreine automat
dicionarul de date.
Acesta face parte din baza de date Oracle i
conine un set de tabele i viziuni (vederi) accesibile
utilizatorilor doar n consultare.
Dicionarul conine informaii de tipul:
- numele utilizatorilor autorizai
- drepturile de acces
- numele obiectelor din baza de date
- structurile de date
- spaiul ocupat de date
- chei de acces

03.03.2013

Curs 2 - BAZE DE DATE

26

2.2. ARHITECTURA SISTEMULUI


ORACLE
Interfeele sunt componentele care permit

dezvoltarea aplicaiilor cu BD, astfel:


DEVELOPER SUITE este componenta destinat
dezvoltatorilor (programatorilor) de aplicaii.
Conine generatoarele:
- FORMS (meniuri i videoformate)
- REPORTS (rapoarte i grafice)
- JDEVELOPER

03.03.2013

Curs 2 - BAZE DE DATE

27

2.2. ARHITECTURA SISTEMULUI


ORACLE
DESIGNER este component destinat

analitilor/proiectanilor de aplicaii.
Ofer elemente de CASE pentru
proiectarea aplicaiilor cu BD
PRO*C este componenta destinat
programatorilor n limbajele de programare
universale (FORTRAN, COBOL, Pascal, C,
ADA, PL1)

03.03.2013

Curs 2 - BAZE DE DATE

28

2.2. ARHITECTURA SISTEMULUI


ORACLE
DATAWAREHOUSE BUILDER este destinat

analizei datelor multidimensionale, folosind


tehnologia de tip OLAP (On Line Analitical
Processing)
ORACLE APPLICATIONS permite
dezvoltarea unor aplicaii de ntreprindere
(Financials, Manufacturing, Projects etc.)

03.03.2013

Curs 2 - BAZE DE DATE

29

2.2. ARHITECTURA SISTEMULUI


ORACLE
Instrumentele sunt componente destinate
ntreinerii i bunei funcionri a unei BD Oracle.
ENTERPRISE MANAGER CONSOLE conine mai
multe utilitare destinate administratorului BD:
- deschidere / nchidere BD
- autorizarea accesului
- refacerea BD
- conversii de date

03.03.2013

Curs 2 - BAZE DE DATE

30

S.G.B.D. ORACLE
2.1. Evoluia i facilitile sistemului ORACLE
2.2. Arhitectura sistemului ORACLE
2.3. ORACLE SERVER
2.4. Oracle Database 10g Express Edition

03.03.2013

Curs 2 - BAZE DE DATE

31

2.3. ORACLE SERVER


Oracle Server (OS) permite
managementul informaiilor organizate n
baze de date, astfel nct se asigur
accesul mai multor utilizatori n mod
concurenial la acelai date, oferind faciliti
de prevenire a accesului neautorizat i de
restaurare a datelor dup producerea unor
erori.

03.03.2013

Curs 2 - BAZE DE DATE

32

2.3. ORACLE SERVER


Oracle Server este un sistem
relaional-obiectual de management a
bazelor de date, care permite o abordare
deschis, integrat i cuprinztoare a
managementului informaiilor.
OS const dintr-un cuplu format dintro baz de date i o instan Oracle.

03.03.2013

Curs 2 - BAZE DE DATE

33

2.3. ORACLE SERVER


A. O baz de date Oracle este o colecie
unitar de date, avnd o structur logic
i una fizic putnd avea dou stri:
- open (accesibil)
- close (inaccesibil)

03.03.2013

Curs 2 - BAZE DE DATE

34

2.3. ORACLE SERVER


1) Structura logic ale unei baze de date
este format din:
tabelele spaiu (tablespaces)
schema de obiectelor bazei de date
blocurile de date
extensiile
segmentele

03.03.2013

Curs 2 - BAZE DE DATE

35

2.3. ORACLE SERVER


2) Structura fizic este definit de un set de
fiiere specifice sistemului de operare pe
care rezid SGBD Oracle, folosite pentru
memorarea structurilor logice ale bazei de
date i pentru pstrarea unor informaii
tehnice de control.
Aceste fiiere sunt:
- fiiere de date (Data files)
- fiiere Redo log (Redo Log files)
- fiiere de control (Control files)

03.03.2013

Curs 2 - BAZE DE DATE

36

2.3. ORACLE SERVER


B. Instana Oracle (Oracle instance) este
combinaia logic dintre:
structurile de memorie intern:
SGA - system global area
PGA - program global area

i procesele Oracle de baz activate la

momentul pornirii unei baze de date

03.03.2013

Curs 2 - BAZE DE DATE

37

S.G.B.D. ORACLE
2.1. Evoluia i facilitile sistemului ORACLE
2.2. Arhitectura sistemului ORACLE
2.3. ORACLE SERVER
2.4. Oracle Database 11g Express Edition

03.03.2013

Curs 2 - BAZE DE DATE

38

2.4. ORACLE Database 11g Expres


Edition
Aplicatiile de laborator pot fi executate cu
ajutorul unei versiuni simplificate a server-ului
Oracle si anume:

Oracle Database 11g Expres Edition


Aceasta se poate descarca gratuit de pe site-ul:
http://www.oracle.com/technetwork/products/ex
press-edition/downloads/index.html

03.03.2013

Curs 2 - BAZE DE DATE

39

2.4. ORACLE Database 11g Expres


Edition
Pe calculatorul personal este ideal sa
se instaleze fisierul:
Oracle Database 11g Express Edition
(Universal) OracleXE112_Win32.zip

2.4. ORACLE Database 11g Expres


Edition
Pas 1: Se porneste instalarea fisierului executabil si se
vor urma pasii indicati de catre programul de instalare.

03.03.2013

Curs 2 - BAZE DE DATE

40

2.4. ORACLE Database 11g Expres


Edition
Pas 2: La un moment se va solicita introducerea unei
parole pentru utilizatorul SYS si pentru SYSTEM.
Aceasta trebuie retinuta pentru a putea fi utilizata
ulterior.

03.03.2013

Curs 2 - BAZE DE DATE

41

2.4. ORACLE Database 11g Expres


Edition

03.03.2013

Instalarea aplicatiei

42

2.4. ORACLE Database 11g Expres


Edition
Pagina principala a aplicatiei Oracle Database 11g
Express Edition

03.03.2013

Curs 2 - BAZE DE DATE

43

03.03.2013

Curs 3 - BAZE DE DATE

44

Programarea bazelor de date


- Limbajul SQL

03.03.2013

Curs 3 - BAZE DE DATE

Limbajul SQL
CERERI SELECT PE O TABELA

2.5. SELECT. Sintaxa. Efect. Rezultat


3.2. Lista SELECT
3.3. Clauza WHERE

45

03.03.2013

Curs 3 - BAZE DE DATE

46

Limbajul SQL
Limbajul SQL (Structured Query Language)
se bazeaz pe studiile lui E.F. Codd, prima
implementare a acestui limbaj datnd din anul
1970.
Este un limbaj complet standardizat i se poate
utiliza pentru a accesa baze de date:
1. Oracle
2. SQL Server
3. DB2
4. MySQL (open-source)

03.03.2013

Curs 3 - BAZE DE DATE

47

Limbajul SQL
SQL utilizeaz o sintax foarte simpl i uor
de folosit.
Comenzile SQL sunt grupate n cinci categorii,
astfel:

1. Limbajul de interogare permite regsirea liniilor


memorate n tabelele bazelor de date.
Comanda utilizat este SELECT.

03.03.2013

Curs 3 - BAZE DE DATE

48

Limbajul SQL
2. Limbajul de manipulare a datelor permite
modificarea coninutului tabelelor.
Comenzile utilizate sunt:
1. INSERT pentru adugarea de noi linii ntr-o
tabel
2. UPDATE pentru modificarea valorilor
memorate ntr-o tabel
3. DELETE pentru tergerea liniilor dintr-o
tabel

03.03.2013

Curs 3 - BAZE DE DATE

49

Limbajul SQL
3. Limbajul de definire a datelor permite definirea
structurii tabelelor ce compun bazele de date.
Comenzile utilizate sunt:
1. CREATE pentru crearea structurii unei baze de
date sau a unei tabele
2. ALTER pentru modificarea structurii unei baze
de date sau a unei tabele
3. DROP pentru tergerea structurii bazei de date
4. RENAME schimbarea numelui unei tabele
5. TRUNCATE tergerea coninutului unei tabele

03.03.2013

Curs 3 - BAZE DE DATE

50

Limbajul SQL
4. Limbajul de control al tranzaciilor
Comenzile utilizate sunt:
1. COMMIT pentru ca modificrile efectuate
asupra bazei de date s devin permanente
2. ROLLBACK permite renuarea la ultimele
modificri asupra bazei de date
3. SAVEPOINT pentru definirea unui punct de
salvare la care se poate reveni, renunnd la
modificrile fcute dup acest punct asupra
bazei de date

03.03.2013

Curs 3 - BAZE DE DATE

51

Limbajul SQL
5. Limbajul de control al datelor permite definirea
i modificarea drepturilor asupra bazelor de date.
Comenzile utilizate sunt:
1. GRANT pentru acordarea unor drepturi altor
utilizatori asupra bazei de date
2. REVOKE pentru anularea unor anumite
drepturi ale utilizatorilor

03.03.2013

Curs 3 - BAZE DE DATE

52

Limbajul SQL
Principalele elemente care compun o comanda
SQL:
a) Nume
Toate obiectele dintr-o baz de date: tabele,
coloane, vizualizri, indeci, etc, au un nume.
Numele poate fi orice ir de maximum 30 de
litere, cifre i caractere speciale (_,#,$), primul
caracter fiind obligatoriu o liter.

03.03.2013

Curs 3 - BAZE DE DATE

53

Limbajul SQL
b) Cuvinte rezervate
La fel ca n orice limbaj, i n SQL exist o list
de cuvinte rezervate. Aceste cuvinte nu pot fi
utilizate n alt scop dect cel definit iniial.

c) Constante
O constant sau literal este o valoare fix care
nu poate fi modificat.

03.03.2013

Curs 3 - BAZE DE DATE

54

Limbajul SQL
Exist:
1. Constante numerice, de exemplu 4, 12.34, .9,
etc.
Se observ c dac un numr real are partea
ntreag egal cu zero, atunci ea nu mai trebuie
precizat.
2. Constante alfanumerice (sau ir de caractere)
Constantele ir de caractere sunt scrise ntre
apostrofuri i sunt case-sensitive.
Exemple: abc, baza de date.

03.03.2013

Curs 3 - BAZE DE DATE

55

Limbajul SQL
d) Variabile
Variabilele sunt date care pot avea n timp
valori diferite.
O variabil are ntotdeauna un nume pentru a
putea fi referit.
SQL accept dou tipuri de variabile:
variabilele asociate numelor coloanelor asociate
variabile sistem

03.03.2013

Curs 3 - BAZE DE DATE

56

Limbajul SQL
e) Expresii
O expresie este format din variabile,
constante, operatori i funcii.
Operatorii care pot fi utilizai sunt mprii
astfel:
1. Operatori aritmetici
2. Operatori alfanumerici
3. Operatori de comparatie
4. Operatori logici

03.03.2013

Curs 3 - BAZE DE DATE

57

Limbajul SQL
Cu ajutorul comenzii SELECT se pot realiza
urmtoarele tipuri de operaii:
1. Selecia const n filtrarea liniilor care vor fi

afiate
2. Proiecia const n alegerea doar a anumitor
coloane pentru a fi afiate
3. Join const n preluarea datelor din dou sau
mai multe tabele legate conform unor reguli
precizate

Limbajul SQL
Operaiile realizate cu ajutorul comenzii SELECT

03.03.2013

Curs 3 - BAZE DE DATE

58

03.03.2013

Curs 3 - BAZE DE DATE

59

Exemple
Considerm urmtoarele tabele:
1. STUD avnd structura MATR, NUME, AN,

GRUPA, DATAN, LOC, INDRUMATOR,


PUNCTAJ, CODS
2. SPECIALIZARE avnd structura CODS, NUME,

DOMENIU
3. BURSA avnd structura TIP, PMIN, PMAX, SUMA

Tabela STUD
MATR

NUME

AN

GRUPA

DATAN

LOC

INDRUMATOR

PUNCTAJ

CODS

1234

POPA MARCEL

114A

12-03-87

BUC

1001

2345

1235

POPESCU ION

121B

02-04-89

TARGUJIU

1001

1300

1236

AVRAM NICOLAE

115A

21-03-68

TARGUJIU

1002

3000

1237

IONESCU
MARIANA

116C

05-05-89

BUC

1003

1234

1256

POPESCU GINA

114A

06-09-90

TARGUJIU

1002

3456

03.03.2013

Curs 3 - BAZE DE DATE

60

03.03.2013

61

Curs 3 - BAZE DE DATE

Tabelele SPECIALIZARE si BURSA


CODS

NUME

DOMENIU

AUTOMATICA

CALCULATOARE

ENERGETICA

INGINERIE ELECTRICA

MECANICA

INGINERIE MECANICA

Tip

Pmin

Pmax

399

Bursa sociala

400

899

100

Bursa de studiu

900

1799

150

Bursa de merit

1800

2499

200

Bursa de exceptie

2500

999

300

Fara bursa

Suma

03.03.2013

Curs 3 - BAZE DE DATE

ntrebri?

62

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