Documente Academic
Documente Profesional
Documente Cultură
Introducere
Calculatoarele au fost folosite nc din anii '50 pentru stocarea i procesarea cantitilor mari de date. Pentru gestionarea informaiilor specifice unei activiti se face de regul apel la sisteme informatice. Produsele software din componena acestora localizeaz i prelucreaz datele coninute ntr-un ansamblu de fiiere aflate pe diferite suporturi fizice. O baz de date este constituit dintr-un ansamblu structurat de date evolutive, organizate pentru a fi exploatate de diferite programe (aplicaii). Dei orice ntreprindere face apel la baze de date pentru pstrarea i gestionarea informaiilor, cteva dintre aplicaiile acestora sunt deosebit de spectaculoase: o bazele de date ale liniilor aeriene care sunt accesate simultan din sute de agenii pentru a realiza rezervri i vnzri de locuri pentru date i zboruri diferite; bazele de date ale bncilor care permit realizarea a mii de tranzacii zilnic; bazele de date ale supermagazinelor care sunt accesate att de la casele de marcaj ct i de la echipamentele de inventariere; bazele de date ale bibliotecilor care pstraz milioane de titluri i permit localizarea unei lucrri folosind diferite criterii (cuvinte cheie, titlu, autori, domeniu).
o o o
Pentru realizarea unei aplicaii care folosete baze de date se poate proceda n dou moduri: a. Se creaz baza de date cu ajutorul unei aplicaii de tip server de baze de date i se scriu apoi aplicaiile care acceseaz baza de date ntr-un limbaj care posed funciile necesare accesrii serverului (frecvent se folosesc limbajele C++, Java, C# sau Visual Basic); b. Se folosete o aplicaie de tip sistem de gestiune de baze de date (S.G.B.D. sau D.B.M.S. - database management system). Un astfel de sistem ofer un ansamblu de instrumente software cu ajutorul crora se creaz att baza de date ct i aplicaiile prin care aceasta este exploatat. Pentru utilizatorii sistemului de operare Windows cele mai cunoscute sisteme de acest fel sunt Access i Visual FoxPro. Oracle Database Express Edition (prescurtat Oracle XE) este n esen o aplicaie din familia serverelor de baze de date. Sesiznd ns dificultile realizrii interfeei utilizator-server dintr-o aplicaie, firma Oracle Co. furnizeaz mpreun cu serverul i aplicaia destinat dezvoltrii unei interfee sub forma unui ansamblu de pagini .html denumit Oracle Application Express. De altfel la fel procedeaz i alte companii care dezvolt servere pentru baze de date. n cele ce urmeaz se va folosi ca server de baze de date Oracle XE, soluie gratuit oferit de Oracle Co. iar pentru realizarea interfeei se va face apel la limbajul Java. Aplicaiile astfel construite prezint trei avantaje majore:
2
o o o software-ul necesar este gratuit; aplicaia astfel realizat poate fi folosit pe diferite platforme: Windows, Linux, Unix, Solaris etc. decupleaz partea aplicaiei destinat stocrii datelor (server de b.d.) de partea care le acceseaz (interfaa).
Fiier
Articol 1
Articol 2
Articol 3
....
Structura articolelor unui fiier de date este definit la crearea sa, prin precizarea cmpurilor pe care le va conine. Un cmp se caracterizeaz prin nume, tipul informaiei coninute, lungime i numrul de zecimale (pentru cmpuri numerice). Datorit faptului c formatul articolului este fix, frecvent se folosete pentru fiier o reprezentare tabelar i chiar se folosete pentru fiierele de date denumirea de "tabele".
Articole
Un server Oracle XE opereaz cu o singur baz de date. Administratorul bazei de date creaz conturi ale utilizatorilor crora le atribuie drepturile necesare operrii n interiorul bazei Oracle XE. Un astfel de utilizator devine astfel proprietarul unui subdomeniu inclus n baza Oracle XE denumit de ctre autorii aplicaiei "schem" (engl. schemas). Dup nregistrarea contului, beneficiarul acestuia poate creea infrastructura pe care se va baza aplicaia sa : tabele, interogri, vederi, proceduri, etc.. Domeniile diferitilor utilizatori sunt n principiu complet separate, un utilizator avnd ns posibilitatea de a da i altor utilizatori drepturi de acces la elementele domeniului su. Dimensiunea bazei de date administrate de Oracle XE este limitat la 4 GO (4 gigaoctei). Un utilizator poate accesa un server Oracle XE de pe calculatorul pe care acesta este instalat sau prin reea (reea local sau Internet).
Dac pe calculator a mai fost instalat Oracle XE sau orice alt versiune, dezinstalai-o n prealabil i tergei variabila de mediu ORACLE_HOME, dac aceasta exist. Pentru aceasta accesai intrarea System n Control Panel:
Pentru demararea instalrii selectai OracleXE.exe (dublu clic). Instalarea decurge apoi n mai multi pai, astfel:
5
o o n fereastra Licence Agreement selectai I accept i apoi Next; In fereastra Choose Destination Location indicai unde se va instala aplicaia Locaia implicit este C:.
Daca suntei solicitai s introducei adresele porturilor care vor fi folosite nseamn c unul dintre porturile implicite: o o 1521 alocat implicit serverului Oracle XE i 8080 alocat implicit serverului HTTP prin care se realizeaz conectarea la serverul Oracle XE folosind interfaa grafic i protocolul HTTP
este folosit de o alt aplicaie. De exemplu portul 8080 ar putea fi folosit de exemplu de serverul Apache Tomcat. o n fereastra Specify Database Passwords se introduce parola pentru conturile SYSTEM i SYS. Acestea vor putea fi folosite de ctre administratorul serverului pentru a realiza activiti specifice: creare/tergere de utilizatori, salvri de siguran .a. Este bine s fie pstrat undeva pentru c fr ea serverul va fi inutilizabil!
6
O ultim feresatr afieaz o recapitulare a opiunilor introduse. Se apas Install pentru a se realiza instalarea.
Tot aceeai cale va fi folosit pentru a afia fereastra Aplication Express Login: (Start -> Programs ->Oracle database 10g Express Edition -> Go To Database Home Page)
7
Aceast fereastr va fi punctul de plecare n activitile de administrare a serverului.
8
Un utilizator este identificat prin nume (Username:), parol (Password:) i are un ansamblu de drepturi. Pentru exemplele care vor urma, utilizatorul creat se numete biblio i are toate drepturile (selectai Check All) dar nu are drepturi de administrare a serverului (nu se selecteaz caseta DBA - DataBase Administrator). Dup crearea noului utilizator, lista de utilizatori arat ca n figur.
Se observa ca numele utilizatorului apare cu majuscule. Similar se va intmpla i la crearea tabelelor, numele acestora vor aprea scrise cu majuscule. Observaie: Dup instalarea serverului, utilizatorul HR este implicit blocat (Locked). pentru a putea folosi contul HR acesta trebuie deblocat. Ca urmare se selecteaz utilizatorul (operaia necesit conectare ca ca administrator, SYSTEM) i apoi, n fereastra cu proprieti se impune Unlocked.
tabelul
ANGAJAI
fiecrui
angajat
se
nregistreaz
numele,
Identificatorul servete la
n tabelul COPII se pstreaz numele i prenumele copiilor. Pe lng cele dou cmpuri necesare pstrrii acestor informaii principale mai sunt dou
9
cmpuri: ID_copil care asociaz fiecrui copil un numr unic i ID_ang. Cmpul ID_ang asociaz fiecrui copil un articol din tabelul de angajai. Folosind aceast structur se pot afia mai multe rapoarte: o o o o lista copiilor, lista copiilor unui angajat, lista angajailor care au copii, numrul de copii pe care i are fiecare angajat i probabil i altele.
Integritatea referenial
Un server de date are pe lng rolul de a pstra date i rolul de a menine coerena acestora. Dac n exemplul dat angajatul Ionescu Valer (ID_angajat=2) ar pleca din firm, deci linia corespunztoare din fierul ANGAJAI ar fi tears, ce se ntmpl cu nregistrrile din tabelul COPII pentru care ID_ang=2 ? Dac serverul de baze de date verific validitatea referinelor
10
va trebui s suprime n mod automat i liniile corespunztoare din tabelul COPII. n termeni specifici domeniului bazelor de date relaionale spunem c serverul verific i asigur integritatea referenial a bazei de date. date, toate aplicaiile majore suport aceast caracteristic. Dei verificarea integritii refereniale complic semnificativ realizarea unui server de baze de
Crearea tabelelor
a. Crearea tabelului ANGAJATI
11
Rezultat:
12
Comportamentul serverului Oracle XE n momentul tergerii unui articol din tabelul corespondent poate fi impus prin selectarea uneia dintre opiunile urmtoare:
-
Disallow Delete - mpiedic tergerea articolelor din tabelul corespondent care contin referine spre articolele din tabelul curent;
13
-
Cascade Delete - impune tergerea tergerea articolelor din tabelul curent la tergerea articolului corespondent din tabelul referit ;
Set to Null on Delete impune pstrarea articolelor din fiierul curent la tergerea articolului corespondent din tabelul referit. Valorile cheii strine n aceste articole va fi null (va lipsi!).
Rezultat:
14
Rezultat:
Ca urmare a tergerii angajatului avnd ID_angajat = 2, din tabelul corespondent COPII s-au ters liniile pentru care cheia strin ID_ang avea valoarea 2.
Navigarea n Oracle XE
Fereastra afiat dup conectare conine un ansamblu de butoane, fiecare avnd n dreapta o sgeat care permite afiarea unui meniu derulant. Meniul derulant afiaeaz o serie de instrumente accesibile utilizatorului n momentul respectiv. Acestea sunt afiate tot ca pagini web.
16
Revenirea la o pagin web anterioar se poate realiza prin selectarea acesteia din lista de legturi afiat pe bara dispus n partea de sus a paginii.
n exemplul din figur se poate reveni la pagina principal selectnd legtura Home.
17 Salvarea tabelelor
Refacerea tabelelor unei baze de date se va realiza folosind un ansamblu de comenzi SQL salvate ntr-un fiier ASCII. Pentru crearea fiierului cu comenzi se selecteaz n fereastra Home opiunea Object Browser / Tables:
Apoi se selecteaz succesiv tabelele ale cror comenzi de creare trebuie salvate i pentru fiecare tabel selectat se afieaz comanda de creare corespunztoare selectnd legtura SQL.
Aplicaia va afia comanda CREATE corespunztoare iar dac tabelul selectat este indexat, dup fraza CREATE sunt afiate frazele care realizeaz refacerea indecilor.
18
Frazele SQL afiate vor fi selectate cu mouse-ul i copiate n Clipboard (Ctrl + C) i apoi inserate ntr-un fiier ASCII (.txt). deschide aplicaia Notepad. Procedeul se va repeta pentru fiecare tabel n parte, comenzile SQL corespunztoare fiind inserate una dup alta, n acelai fiier .txt, care apoi va fi salvat n directorul propriu. Pentru aceasta se poate
Salvarea datelor
Pentru a putea reface ulterior coninutul tabelelor, Oracle XE permite copierea acestora n fiiere .txt. Deoarece un astfel de fiier poate conine date provenind dintr-un singur tabel, da rezulta un numr de fiiere egal cu numrul de tabele salvate. Pentru a iniia copierea datelor unui tabel se selecteaz n fereastra Home opiunea Utilities / Data Load/Unload / Unload:
19
e. Se indic separatorul (n mod normal tab, \t) i se valideaz Include Column Names.
Se apas apoi Unload Data. n fereastra care se afieaz se selecteaz Save i apoi se indic locul pe disc i numele fiierului. Numele propus de aplicaie va fi cititori.txt. Este bine ca numele fiierului n care sunt memorate datele s coincid cu numele tabelului din care provin.
Se deschide n Notepad fiierul care conine comenzile SQL de creare i se copiaz coninutul su n fereastra Script Editor, ca mai jos. Se d de asemenea un nume scriptului deoarece el va fi salvat n baza de date.
21
c. Se indic faptul c tabelul n care vor fi adugate datele exist (se selecteaz opiunea Existing table):
22
f. Aplicaia afieaz n continuare informaiile recuperate. acestora n tabelul indicat se va apsa butonul Load data.
Pentru ncrcarea
23
Observaie.
expus anterior, serverul Oracle XE face toate verificrile privind integritatea datelor. Implicaiile acestui fapt sunt urmtoarele: 1. Salvarea comenzilor de creare a tabelelor trebuie s urmeze ordinea creerii iniiale a acestora. Astfel un tabel care conine chei strine va fi creat dup crearea tabelelor de care acesta depinde. 2. Restaurarea datelor trebuie s urmeze aceeai logic. Datele dintr-un
tabel care conine o cheie strin vor fi ncrcate dup ncrcarea datelor din tabelul principal, ale crui nregistrri sunt referite prin valorile cheii strine. Astfel de exemplu tabelul Edituri trebuie creat naintea tabelului Carti. Datele din tabelul Carti nu pot fi incrcate naintea ncrcrii datelor din tabelul Edituri.