CE ESTE ORACLE?
Oracle consta dintr-un set complet de constructori de aplicatii si produse
pentru utilizatori,cautand sa asigure solutii complete in tehnologia informatiei.
Aplicatiile Oracle sunt portabile peste un numar mare de statii de lucru si
sisteme de operare, de la calculatoare personale la procesoare paralele.
Oracle este inzestrat cu un flexibil Sistem de Management al Bazelor de
Date(DBMS)-Serverul Oracle-pentru stocarea si managementul informatiei utilizate
de aplicatii.
Ultimul server Oracle ,ORACLE 7,conduce o baza de date cu toate avantajele
unei structuri relationale,avand in plus capacitatea de a stoca si executa
obiecte de tip baza de date precum proceduri si mecanisme de siguranta.
Despre Serverul ORACLE
Serverul Oracle cuprinde un DBMS care controleaza:
- Stocarea de date in sfera bazelor de date dedicate
- Recuperarea de date pentru aplicatii utilizand
tehnici de optimizare adecvate
- Securitatea bazelor de date si a taskurilor
permise pentru anumiti utilizatori
- Consistenta si protectia datelor,incluzand
arhivarea taskurilor si mecanisme de cautare
- Comunicarea si integritatea informatiilor,cand
bazele de date sunt distribuite intr-o retea.
Aplicatiile Oracle trebuie rulate pe acelasi computer la fel ca si Serverul
Oracle.
Alternativ,aplicatiile si utilitarele utilizate de ele pot sa fie rulate pe
un sistem local pentru utilizator (sistemul 'client'),in timp ce Oracle DBMS
ruleaza pe un altul (sistemul 'server').
In acest mediu 'client-server',un numar mare de resurse de calcul pot fi
rulate.De exemplu,o aplicatie 'Oracle Forms' poate rula pe un computer personal
client,in timp ce accesarea datelor este condusa conventional de un Server
Oracle pe un computer central.
PRODUSELE ORACLE
Instrum. CDE
==========================
|| ------------------ ||
|| | Rapoarte Oracle| ||
|| ------------------ || Oracle Card
|| ------------------ ||
|| | Grafice Oracle | || Oracle Case
|| ------------------ ||
|| ------------------ || SQL*Plus
|| | Forme Oracle | ||
|| ------------------ || Pro*Oracle
|| ------------------ ||
|| | Cartå Oraclå | || Text Retrieval
|| -----------------| ||
========================== Alte produse
^ ^
| |
| |
| |
---------------------------------------------------------------
| |
| |
| ORACLE7 SERVER |
| |
| |
---------------------------------------------------------------
|
|
|
|
|
------------------------------
| |
| Hard Disk |
| |
------------------------------
Optiuni Oracle Server
In plus fata de 'Standard Oracle7' care dispune de o multime comprehensiva
de facilitati asupra bazelor de date,mai sunt cateva facilitati suplimentare.
Acestea includ:
- Optiunea procedurala
- Asigura un "motor" PL/SQL versiunea 2 in
interiorul serverului Oracle,care are bilitatea
de a stoca proceduri b.d.,functii si mecanismå de
siguranta pentru utilizarea de catre aplicatii .
- Optiunea distribuita
- Suporta tranzactii care actualizeaza informatia
din mai multe baze de date dintr-o retea de
baze de date distribuita,utilizand executia in
doua faze.
- Paralel Server Option
- Suporta sisteme cuplate liber.
- Oracle de incredere ("Trusted Oracle")
- Pune la dispozitie o multime de facilitati
aditionale de inalta securitate.
Produsele Oracle
Printre multele dezvoltari de aplicatii si produse pentru utilizatori
accesibile in familia Oracle,exista o posibilitate comuna pentru a accesa baza
de date.
Daca direct sau indirect,aceasta este realizata prin Limbajul cu Structura
de Interogare(SQL),va fi un subiect pe care noi il vom trata in acest curs.
Produsele Oracle contin:
- Oracle TextRetrieval
- O tehnologie care adauga capabilitati de refacere
completa a textului intr-o baza de date Oracle.
- Pro*Oracle
- O serie de precomilatoare care permit accesul
bazelor de date Oracle la limbajele de programare C,
Cobol,Fortran,PL/1,Pascal si Ada.
- Oracle Card
- O interfata utilizator pentru producerea
aplicatiilor cu baze de date usor de folosit ce
incorporeaza grafice si facilitati multimedia.
- Oracle CASE
- O familie de instrumente care ajuta la analiza ,
designul si generarea aplicatiilor Oracle.
- SQL*Plus
- Un instrument care permite o utilizare directa si
interactiva a limbajului SQL pentru a accesa
serverul Oracle,utilizand comenzi ad-hoc sau prin
rularea fisierelor de comanda.
Mediul de dezvoltare auxiliar(CDE)
Instrumentul de dezvoltare a aplicatiilor principale formeaza un set inchis
integrat numit 'Mediul de Dezvoltare Auxiliar'.Elementele de baza ale CDE includ
limbajul procedural al lui Oracle,PL/SQL,facilitati grafice si comunicare intre
produse.
Principalele instrumente CDE sunt:
- Oracle Forms V4
- Permite ca aplicatii sofisticate bazate pe utilizarea
ecranului sa fie construite repede si usor si permite
utilizatorului sa ceara si sa manipuleze date intr-o
structura cu forma convenabila ,la fel de bine ca
afisarea imaginilor vizuale,si facilitati de accesare
prevazute de alte produse CDE.
- Oracle Reports V2
- Un puternic instrument de scriere a rapoartelor pentru
constructia si executia rapoartelor sofisticate cu
fonturi de text si imagini multiple.
- Oracle Graphics V2
- Permite construirea si afisarea aplicatiilor vizuale,
incluzand harti,grafice,imagini si desene.
- Oracle Book V1
- Prevede abilitatea de a crea si vizualiza documente
care includ hipertexte,sunete digitale si videoclipuri.
ABORDAREA RELATIONALA
--------------------------------------------------
| S# SNAME STATUS CITY |
|------------------------------------------------|
| S1 SMITH 20 LONDON |
| S2 JONES 10 PARIS |
| S3 BLAKE 30 PARIS |
--------------------------------------------------
PARTI
---------------------------------------------------------
| P# PNAME COLOUR WEIGHT CITY |
|-------------------------------------------------------|
| P1 NUT RED 12 LONDON |
| P2 BOLT GREEN 17 PARIS |
| P3 SCREW BLUE 17 ROME |
| P4 SCREW RED 14 LONDON |
---------------------------------------------------------
^
coloana
ORDINI
-------------------
| S# P# QTY |
|-----------------|
| S1 P1 300 |
| S1 P2 200 |
rand--------->| S1 P3 400 |
| S2 P1 300 |
| S2 P2 400 --|----camp
| S3 P3 200 |
-------------------
Abordarea relationala
Principiile modelului relational au fost pentru prima data expuse de Dr. E.
F.Codd,care in iunie 1970 a publicat un articol numit 'Un model relational de
date pentru marile banci de date'.In acest articol Dr. Codd a propus modelul
'relational' pentru sistemele de baze de date.
Baza de date relationala este perceputa de utilizatorii sai ca o colectie
de tabele bidimensionale care sunt usor de inteles.Sunt doar patru concepte de
inteles:
- tabele
- coloane
- randuri
- campuri
Modelul relational imita procesele unei ramuri a algebrei cunoscuts sub
numele de 'Algebra relationala'. Aceste procese implica:
- o colectie de obiecte cunoscute sub numele de RELATII
- o multime de operatori ce actioneza asupra relatiilor pentru a produce
noi relatii.
O Relatie poate fi inteleasa ca o Tabela.Modificarea datelor este reali-
zata prin operatiile relationale aplicate asupre tabelelor.
-------------------------------------------
RESTRICTIE | |
| |
| |
|#########################################|
| |
| |
| |
|#########################################|
| |
|#########################################|
| |
| |
-------------------------------------------
PROIECTIE -------------------------------------------
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
| ### ######## |
-------------------------------------------
Operatori relationali
Operatorii relationali sunt definiti mai jos:
Relatia Descrierea
- Restrictia
- este o operatie care preia si afiseaza datele din
relatie.Este posibil sa se afiseze toate randurile sau
doar randurile care indeplinesc o conditie sau mai
multe conditii .Aceasta este de multe ori numita
'submultime orizontala'
- Proiectia
- este operatia care afiseaza anumite coloane din relatie
si de aceea este numita 'submultime verticala'.
- Produs
- este rezultatul obtinut cand randurile a doua multimi
de date sunt concatenate conform conditiilor
specificate.
- Join
- este rezultatul obtinut cand randurile a doua multimi
de date sunt concatenate conform conditiilor
specificate.
- Reuniunea
- afiseaza toate randurile care apar in una ,in cealalta
sau in ambele din cele doua relatii.
- Intersectia
- afiseaza toate randurile care apar in ambele din cele
doua relatii.
- Diferenta
- afiseaza randurile care apar numai intr-o singura
relatie (SQL utilizeaza operatorul minus ).
PRODUS
----------- ---------- -------------------
| SMITH | | CLERK | | SMITH | CLERK |
| JONES | produs | MANAGER|------>| SMITH | MANAGER |
| ADAMS | ---------- | | |
----------- | JONES | CLERK |
| JONES | MANAGER |
| | |
| ADAMS | CLERK |
| ADAMS | MANAGER |
-------------------
JOIN
--------------- ------------------- -------------------------------
| CLARK | 10 | | 10 | ACCOUNTING | | CLARK | 10 | 10 | ACCOUNTING|
| MILLER | 10 | J | 20 | RESEARCH | | MILLER| 10 | 10 | ACCOUNTING|
| SMITH | 20 |-->| 30 | SALEH | | SMITH | 20 | 20 | RESEARCH |
| TURNER | 30 | | 40 | OPERATIONHS| | TURNER| 30 | 30 | SALES |
--------------- ------------------- -------------------------------
Proprietati ale bazelor de date relationale
- O baza de date relationala apare ca o colectie de relatii(tabele) catre
utilizator.
- Formatul coloanei/randului este familiar si usor pentru vizualizarea
datelor .
- Exista o multime de operatori pentru partitionarea si combinarea
relatiilor(selectia,proiectia,produsul,joinul,uniunea, intersectia,
diferenta).
- Nu sunt pointeri expliciti;conexiunile sunt facute numai pe baza datelor.
- Limbajul utilizat pentru interogarea bazei de date este non-procedural si
similar limbii engleze.
- Utilizatorul nu specifica calea de acces si nu are nevoie sa stie cum
este informatia aranjata fizic.
- Comenzile pentru refacerea datelor si acelea pentru realizarea
schimbarilor in baza de date sunt incluse intr-un singur limbaj SQL.
- Exista o independenta totala a datelor.
Proprietatile relatiilor tabelare
O singura tabela are urmatoarele proprietati:
- Nu exista randuri duplicate
- Nu exista nume de coloana duplicate
- Ordinea randurilor este neimportanta
- Ordinea coloanalor este neimportanta
- Valorile sunt atomice(nedecompozabile).