Sunteți pe pagina 1din 5

Cele 3 nivele de organizare: - nivel fizic(intern)-modalitatea efectiva in care datele sunt stocate pe suportul extern

- nivel conceptual(virtual)-modelarea problemei considerate

- nivel logic (extern)-scheme externe sau imagini in functie de nevoile fiecarui grup de
utilizatori

Secventa: - genereaza valori pentru chei primare

- crearea se face cu ajutorul instructiunii CREATE SEQUENCE

Ex: CREATE SEQUENCE nume INCREMENT BY 1 START WITH 91 MAXVALUE 100 NOCACHE NOCYCLE

Un pachet cuprinde 2 parti: - specificatie - declara tipurile, variabilele, constantele, exceptiile, cursorii si
subprogramele disponibile pentru a fi folosite

- corp – defineste complet subprogramele implementand specificatia

Avantaje: modularitate, design simplu al aplicatiilor, ascunderea informatiilor, functionalitate extinsa,


performanta mai buna, reincarcare

Notiunea de rol in securitatea Oracle: - un rol este un set sau grup de privilegii care pot fi acordate utilizatorilor
sau altui rol. Rolurile sunt create de regula de administratori si sunt o modalitate foarte buna de a economisi timp
si efort

Proceduri si functii stocate – comparatie

Procedura: executata ca o instructiune PL/SQL, fara clauza return tip de date, returneaza una sau mai multe valori

Functie: apelata ca parte dintr-o expresie, cu return tip de date, returneaza o valoare

Tipuri de instructiuni SQL:

Data retrieval: SELECT transaction control: COMMIT, ROLLBACK, SAVEPOINT

DML: INSERT, UPDATE, DELETE DCL: GRANT, REVOKE

DDL: CREATE, ALTER, DROP, RENAME

Baza de date = o colectie de date aflate in interdependenta, impreuna cu descrierea datelor si a relatiilor dintre
ele si a carei gestionare se face de catre un pachet specializat de programe numit SGBD

Tipuri drivere JDBC – JDBC-ODBC bridge – permite ca JDBC sa acceseze o baza de date folosind un driver ODBC
existent

- API nativ si partial – construit pe baza unei librarii native a clientului bazei de date

- transleaza apelurile JDBC in apeluri catre API-ul clientului bazei de date

- JDBC-NET – comunica cu un server intermediar plasat intre client si baza de date, folosind un
protocol de retea specific

- apelurile JDBC sunt translate de intermediar in apeluri specifice DBMS si trimise


catre baza de date

- Protocol nativ Java – transleaza apelurile JDBC direct in protocolul de retea folosit de DBMS

Sectiuni bloc anonim - declarativa(optionala), executabila(obligatorie), tratarea exceptiilor(optionala)

Comparatie cu proc. Stocata: blocul anonim este un bloc fara nume, procedura stocata este un bloc cu nume. Pe
langa elementele din sectiunea blocului anonim, procedura stocata mai are si un header.
5 functii ale DBA – definirea arhitecturii bazei de date

- definirea modalitatilor de acces la date

- modificarea arhitecturii si organizarii fizice a bazei de date

- autorizarea accesului la date pentru fiecare grup de utilizatori

- specificarea restrictiilor de integritate

Sintaxa generala SELECT

SELECT [DISTINCT] {*, coloana [alias],...} FROM tabel [WHERE conditii];

Select -> identifica ce coloane sunt afisate

From -> identifica din care tabele sunt datele

Alias -> redenumeste numele unei coloane

Distinct -> elimina liniile duplicate

Where -> contine conditii logice simple sau complexe

Definitie SGBD = pachet de programe specializat care ofera facilitati de organizare, acces si control al bazei de date

Definitie View = o imagine virtuala a datelor stocate in unul sau mai multe tabele

Se creeaza cu instructiunea CREATE VIEW cu o subinterogare inclusa

Ex: CREATE [OR REPLACE] VIEW nume AS subinterogare

Cursor explicit -> un cursor este o zona privata de lucru. Sunt de doua tipuri: impliciti si expliciti

Cursorii expliciti sunt definiti si folositi de programator.

Sintaxa: CURSOR nume_cursor IS instructiune_select (fara clauza INTO)

Deschidere: OPEN nume_cursor

Extragere: FETCH nume_cursor INTO [variabile | nume_record]

Inchidere: CLOSE nume_cursor

Primary Key si Foreign Key

PK = un atribut sau un grup de atribute care identifica in mod unic fiecare tuplu(linie) a tabelei

FK = un atribut sau o combinatie de atribute care pun in legatura linii din relatii diferite

Trigger = un trigger este un bloc PL/SQL care se executa implicit ori de cate ori apare un anumit eveniment

- poate fi definit pentru o baza de date sau pentru o aplicatie

- triggerii pentru o baza de date se executa implicit cand este executata una din comenzile INSERT, UPDATE sau
DELETE pentru o tabela

- triggerii pentru aplicatie se executa implicit cand un anumit eveniment se produce in interiorul aplicatiei
respective

Sinonimul = nume alternativ pentru obiecte, simplifica accesul la diferite obiecte ale bazei de date, scurteaza
numele lungi ale obiectelor

CREATE [PUBLIC] SYNONIM nume FOR obiect;


Indexi = un obiect al schemei unui utilizator. Este folosit de serverul Oracle pentru a mari viteza de acces la datele
stocate.

Procedura stocata = un bloc PL/SQL cu nume care executa o actiune

Parametri – IN – predefinit, valoarea este pasata in program

- OUT – trebuie specificat, este returnat mediului apelant

- IN OUT – trebuie specificat, este transmis in supbrogram, este returnat mediului apelant

Categorii de utilizatori BD: administratori, analisti, programatori, utilizatori interni, utilizatori externi, utilizatori
indirecti

Tipuri de join:

- equijoin – denumit si simple join sau inner join, implica frecvent existenta cheilor primare si straine,
equijoinul se realizeaza intre doua tabele daca o coloana x din primul tabel are aceleasi valori cu coloana x din al
doilea tabel

- non-equijoin – o relatie dintre doua tabele este de tip non-equijoin daca nicio coloana din primul tabel
nu corespunde direct unei coloane din cel de-al doilea tabel

- outer join – este folosit pentru a afisa linii care nu indeplinesc conditii de join normale (+)

- self join – join pe acelasi tabel

BDOO – capabilitatea de a stoca si extrage obiecte, obiectele sunt complexe si nu pot fi gestionate de SGBD-urile
relationale standard

- obiectul are identitate fixa, chiar daca proprietatile sale se schimba in timp

Hibernate – este o unealta de mapare obiectual/relational pentru mediile Java, open source, sustinut de Jboss inc.

Trasaturi: bazat pe modelul OO, fisiere de mapare si configurare XML, are doua nivele de cache pentru
marirea performantei

Dictionar de date: dictionarul de date contine o gama larga de informatii referitoare la o baza de date: tabele de
abza, tabele derivate, indecsi, restrictii de integritate, utilizatorii, drepturi de acces

Trigger si componentele sale

- un declansator este un bloc PL/SQL care se executa implicit atunci cind apare un eveniment

Componente:

- Timing (BEFORE, AFTER) fata de comanda DML

- Evenimentul de declansare: INSERT, UPDATE, DELETE

- Numele tabelei pentru care se creaza triggerul

- Tipul triggerului: linie sau instructiune

- Clauza WHEN: conditii suplimentare

- Corpul triggerului are structura unui bloc PL/SQL anonim.

CREATE [OR REPLACE] TRIGGER nume_trigger

timing eveniment1 [OR eveniment2 OR eveniment


ON nume_tabela

Bloc PL/SQL;

CREATE [OR REPLACE] TRIGGER nume_trigger

timing eveniment1 [OR eveniment2 OR eveniment

ON nume_tabela

Bloc PL/SQL;

Functii de grup sau agregate

- functii de grup: SUM, AVG, COUNT, MAX, MIN. Opereaza pe seturi de linii oferind un singur rezultat pentru tot
grupul

-Orice coloana care apare in clauza SELECT si nu este intr-o functie de grup atunci trebuie sa apara in
clauza GROUP BY

SELECT column, group_function

FROM table

[WHERE condition]

[GROUP BY group_by_expression]

[HAVING group_condition]

[ORDER BY column];

Exceptiile in PL/SQL

- O exceptie este un identificator în PL/SQL , care apare în timpul executiei unui bloc care îsi încheie partea
principala de instructiuni. Un bloc se termina întodeauna când PL/SQL genereaza o exceptie, dar pot fi specificate
rutine utilizator de tratare a acestora în care se pot executa actiuni

finale.

BEGIN

SELECT . . .;

EXCEPTION

WHEN NO_DATA_FOUND THEN

statement1;

statement2;

WHEN TOO_MANY_ROWS THEN

statement1;

WHEN OTHERS THEN

statement1;

statement2;

statement3;
END;

Schema in Oracle

- Schema, structura bazei de date = un ansamblu de instrumente pentru descrierea datelor, a relatiilor dintre
acestea, semanticii lor si a restrictiilor la care sunt supuse.

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