Documente Academic
Documente Profesional
Documente Cultură
Obiective
Cunoasterea aspectelor teoretice si fizice ale unei baze de date relationale
Descrierea implementarii Oracle ale RDBMS si ORDBMS
Descrierea modului in care sunt folosite SQL si PL/SQL in Oracle
Cunoasterea avantajelor folosirii PL/SQL
Analiza
Proiectare
Constructie /
Documentar
e
Implementare
/ Tranzitie
Mentenanta /
Productie
De la conceptie la productie, se poate dezvolta o baza de date utilizand ciclul de viata al unui
sistem informatic. Aceasta modelare top-down a bazelor de date transforma cerintele informationale ale
afacerii intr-o baza de date operationala.
Strategie si analiza
Studiul si analiza cerintelor afacerii. Se intervieviaza utilizatorii si managerii pentru a identifica
cerintele informationale. Se incorporeaza in viitoarele specificatii de sistem misiunea intreprinderii.
Se construieste modelul sistemului. Se transfera povestea afacerii in reprezentari grafice ale
informatiilor necesare afacerii si ale regulilor acesteia. Se confirma si se rafineaza modelul
impreuna cu analistii si expertii.
Proiectarea
Se proiecteaza baza de date dupa modelul dezvoltat in faza de strategie si analiza
Constructia si documentarea
Se construieste sistemul prototip. Se scriu si se executa comenzile pentru crearea tabelelor si
obiectelor necesare bazei de date.
Se dezvolta documentatia pentru utilizatori, help-ul, manualele de operare.
Tranzitia sau implementarea
Se rafineaza prototipul. Se muta aplicatia in productie cu acceptul testat al utilizatorului, conversia
datelor existente si operatii paralele. Se fac modificarile care apar.
Productia sau mentenanta
Se preda sistemul utilizatorilor. Se monitorizeaza performanta si imbunatateste sistemul.
Fiecare organizatie are nevoile sale informationale. O biblioteca tine o lista a membrilor,
cartilor a datelor de returnare. O companie are nevoie sa-si salveze informatiile despre angajati,
departamente si salarii. Toate aceste bucati de informatie sunt numite date.
Organizatiile pot stoca datele pe diferite suporturi media – de exemmplu o copie a nuni
document este stocata sub forma unei foi tabelare sau in baze de date.
O baza de date este o colectie organizata de informatii.
Pentru a manipula baze de date este nevoie de sisteme de gestiune a bazelor de date (DBMS).
Un DBMS este un program care stocheaza, extrage si modifica date din baze de date la cerere. Sunt
patru tipuri importante de baze de date: ierarhice, in retea, relationale si obiectual relationale.
Nota: Oracle 7 este un DBMS relational iar Oracle 8 este un DBMS obiectual-relational.
Scenariu
- “ … se asigneaza unul sau mai multi angajati la un departament …”
- “… cateva departamente nu au nici un angajat …”
Modelarea ER
Intr-un sistem efectiv, data este divizata in categorii discrete sau entitati. Un model relatie
entitate (ER) este o ilustrare a variatelor entitati dintr-o afacere si relatiile dintre ele. Un model ER este
derivat din specificatiile informationale ale afaceriisi construite in faza de analiza a sistemului. Modelul
ER separa informatiile cerute de afacere de activitatile facute in derularea afacerii. Chiar daca
activitatile afacerii se schimba tipul informatiilor trebuie sa ramana constant. De aceea structurile de
date tind sa ramana constante.
Avantajele modelului ER
Documenteaza necesarul de informatii pentru organizatie intr-o forma clara si precisa
Prezinta o imagine clara a scopului cerintelor informationale
Prezinta o imagine usor de inteles pentru proiectarea bazei de date
Ofera un mediu efectiv de integrare a aplicatiilor multiple
Componente cheie
Entitatea: Un lucru cu semnificatie despre care este necesar de cunoscut informatii. Ex:
departamente, angajati, comenzi. Caracteristici de reprezentare: caseta, nume unic in litere mari,
sinonimul optional se pune intre paranteze, tot in majuscule.
Atribut: Ceva care descrie sau califica o entitate. Ex: pentru entitatea Angajat atribute sunt: marca,
meserie, data de angajare, departament. Fiecare atribut poate fi obligatoriu sau optional.
Caracteristic de reprezentare: nume unice in litere mici, atributele obligatorii se marcheaza cu * si
cele optionale cu o.
Relatie: Un nume de asociere dintre entitati care arata optionalitatea sau gradul. Ex: angajati si
departamente, comenzi si articole. Componente: un nume, o optionalitate (trebuie sa fie / poate fi),
un grad sau cardinalitate (unu si numai unu / unul sau mai multe).
Identificatori unici (UID) este orice combinatie de atribute sau/si relatii, care serveste la
distingerea aparitiilor unei entitati. Fiecare aparitie a entitatii trebuie sa fie identificata unic. Se
reprezinta grafic prin simbolul #. Al doilea UID se reprezinta prin (#).
Obiecte
Un obiect este considerat ca o reprezentare a uni lucru din lumea reala. Cateva definitii:
- “Un obiect este un pachet software care contine o colectie de proceduri (metode) inrudite si
date(variabile)” David Taylor, “Object-Oriented Technology: A Manager’s Guide”
- “Un obiect este un concept, abstractie sau lucru cu margini si intelesuri fragile pentru
problema de rezolvat” James Rumbaugh, “Object-Oriented Modeling and Design”
Modele obiect
- obiectele modeleaza o problema spre rezolvare
- modelul este definit in termeni de interactiune intre obiecte
- modelele obiect se aseamana cu lumea reala
Cand lucrezi cu modele te gandesti mai mult in termenii aplicatiei si mai putin despre
arhitectura sistemului de operare si cerintele mediului de dezvoltare.
Developer 2000
Applications
HR Discoverer
Financials
Designer 2000
Oracle7/8
Database
Data dictionary
Data Tables
Oracle RDBMS este produsul de baza al Oracle. El include Oracle Server si mai multe
instrumente pentru ajutorul utilizatorilor in mentenanta, monitorizarea si utilizarea datelor.
Dictionarul de date Oracle este o componenta foarte importanta a Serverului. El contine un set de
tabele si view-uri care prezinta o imagine read-only a bazei de date.
RDBMS gestioneaza sarcini ca:
- managementul stocarii si definirii datelor
- controlul si restrictionarea accesului la date si concurenta
- posibilitati de salvare si restaurare
- interpreteaza instructiuni SQL si PL/SQL
Instructiunile SQL si PL/SQL sunt folosite de programe si utilizatori pentru accesul si
manipularea datelor in baze de date Oracle. SQL*Plus este un instrument Oracle care recunoaste si
trimite la server sintaxe SQL si PL/SQL spre executie si contine propriile comenzi.
Oracle furnizeaza o mare varietate de intrumente GUI pentru construirea aplicatiilor, precum si
o gama larga de aplicatii software pentru afaceri si industrie.
Instructiuni SQL
SELECT - Extragere de date
INSERT - Limbajul de manipulare a datelor (DML)
UPDATE (introduce randuri noi, le sterge pe cele nedorite si le actualizeaza pe
DELETE cele existente deja in tabele)
CREATE
ALTER - Limbajul de definire a datelor (DDL)
DROP (seteaza, schimba sau sterge structuri de date din tabele)
RENAME
TRUNCATE
COMMIT - Controlul tranzactiilor
ROLLBACK (gestioneaza schimbarile facute de instructiunile DML; actualizarile
SAVEPOINT facute datelor pot fi grupate impreuna in tranzactii logice)
GRANT - Limbajul de control al datelor (DCL)
REVOKE (da sau retrage drepturi de acces asupra bazelor de date Oracle si a
structurilor sale)
Introducere in PL/SQL
PL/SQL este o extensie a SQL cu trasaturi ale limbajelor de programare
Instructiunile de manipulari de date si SQL sunt incluse in modulele procedurale de cod
PL/SQL este extensia procedurala Oracle pentru SQL. PL/SQL ofera tehnici moderne de inginerie
software cum ar fi incapsulari de date, gestionarea exceptiilor, ascunderea informatiilor, orientarea
obiect. Permite manipulari de date si instructiuni de interogare incluse in blocuri structurate si in
modulele procedurale de cod, facand din PL/SQL un limbaj puternic de procesare a tranzactiilor.
Mediul PL/SQL
Motorul PL/SQL
Bloc PL/SQL Interpretorul
PL/SQL Bloc
PL/SQL de instructiuni
SQL procedurale
Serverul Oracle
Imbunatatirea performantei.
SQL
Aplicatii Alte DBMS
SQL
SQL
Aplicatii IF .. THEN Oracle cu
SQL PL/SQL
ELSE
SQL
END IF
PL/SQL poate imbunatati performanta unei aplicatii. Avantajele difera depinzand de mediul de
executie.
PL/SQL poate fi folosit pentru a grupa instructiuni SQL intr-un singur bloc si pentru a transmite
intregul bloc la server intr-un singur apel, reducand astfel traficul de retea. Fara PL/SQL
instructiunile SQL ar fi procesate cate una odata. Fiecare instructiune SQL va apela serverul Oracle.
Intr-un mediu de retea overhead-ul va deveni semneficativ. Daca aplicatia utilizeaza SQL intensiv
se pot folosi blocuri PL/SQL si subprograme pentru a grupa instructiuni SQL inainte de a le trimite
la server pentru executie.
PL/SQL coopereaza cu instrumentele de dezvoltare pentru Oracle server cum ar fi Developer 2000
Forms Reports. Adaugand puterea procesarii procedurale acestor instrumente, PL/SQL mareste
performanta acestora.
Note: Procedurile si functiile declarate ca parte a aplicatiilor dezvoltate in Developer 2000 sunt
distincte de procedurile stocate in baza de date, desi au aceeasi structura. Procedurile stocate sunt
obiecte ale bazei de date si sunt stocate in Dictionarul de Date. Acestea pot fi accesate de orice numar
de aplicatii, inclusiv aplicatiile dezvoltate in Developer 2000.
Proceduri /
Blocuri functii stocate
anonime
DECLARE
....
BEGIN Proceduri /
Aplicatii functii ale
declansatoare aplicatiei
....
EXCEPTION
Proceduri
Declansatoare .... impachetate
de baze de END;
date
Avantajele PL/SQL
Este portabil
Se pot declara identificatori
Se poate programa cu structuri de control tipice pentru limbaje procedurale
Gestioneaza erori
REZUMAT
Bazele de date relationale sunt compuse din relatii, gestionate de operatorii relationali si
guvernate de constrangerile de integritate ale datelor
Serverul Oracle permite stocarea si gestionarea informatiei folosind limbajul SQL si
motorul PL/SQL
PL/SQL este o extensie a lui SQL cu trasaturi de limbaj de programare