Oracle note de curs PDF

Title Oracle note de curs
Author Gabriel Viziru
Course Baze de date (Data Base)
Institution Universitatea din Craiova
Pages 159
File Size 2.5 MB
File Type PDF
Total Downloads 22
Total Views 176

Summary

Oracle note de curs...


Description

CUPRINS CAPITOLUL I. BAZE DE DATE ŞI SISTEME DE GESTIUNE A BAZELOR DE DATE....................................................................................4 1.1. CONCEPTE UTILIZATE ÎN STUDIUL BAZELOR DE DATE ŞI AL SISTEMELOR DE GESTIUNE A BAZELOR DE DATE........................................4 1.1.1. Metoda prelucrării prin fişiere independente.............................4 1.1.2. Baze de date................................................................................7 1.1.3. Depozite de date........................................................................15 1.1.4. Proiectarea bazelor de date......................................................20 a. Analiza structurală sau statică................................................................22 Analiza dinamică (de comportament).................................22 b. Integrarea modelelor sistemului............................................................23 c. Proiectarea structurii bazei de date........................................................24 Alegerea sistemului de gestiune a bazei de date.................24 Proiectarea schemei conceptuale.........................................25 Proiectarea schemei externe................................................26 Proiectarea schemei interne.................................................27 d. Încărcarea datelor în baza de date..........................................................27 e. Exploatarea şi întreţinerea bazei de date................................................28

1.2.1 Tipuri de relaţii şi structuri de reprezentare a relaţiilor în cadrul unei baze de date.................................................................................29 1.2.2 Modele de organizare a datelor în bazele de date.....................31 1.3 SISTEME DE GESTIUNE A BAZELOR DE DATE......................................44 2.4. PROTECŢIA ŞI SECURITATEA BAZELOR DE DATE................................52 SECURITATEA BAZEI DE DATE...................................................................55 CAPITOLUL II. INTRODUCERE ÎN ORACLE...................................61 2.1 CE ESTE ORACLE.............................................................................61 2.2. LIMBAJUL PL/SQL............................................................................65 2.3. ORACLE FORMS BUILDER.................................................................67 2.4. OBIECTELE ŞI TIPUL ACESTORA ÎN FORMS BUILDER.........................70 2.4.1. Forme (Forms)..........................................................................70 2.4.2. Declanşatoare (Triggers)..........................................................70 2.4.3. Ferestre de Avertizare (Alerts)..................................................71 2.4.4. Blocuri de date (Data Blocks)...................................................71 2.4.5. Elemente (Items).......................................................................71 2.4.6. Relaţii (Relations).....................................................................72 2.4.7. Canvas-uri (Canvases)..............................................................72 2.4.8. Editoare (Editors).....................................................................72

2.4.9. Parametrii (Parameters)...........................................................72 2.4.10. Unităţi de program (Program Units)......................................73 2.4.11. Ferestre (Windows)..................................................................73 2.5. ORACLE11G: DATABASE / APPLICATION SERVER / DEVELOPER SUITE........................................................................................................74 2.5.1. Oracle11g Database.................................................................74 2.5.2. Oracle11g Application Server...................................................75 2.5.3. Oracle11g Developer Suite.......................................................77 CAPITOLUI IV. LIMBAJUL DE INTEROGARE A BAZEI DE DATE SQL..............................................................................................................80 3.1. EVOLUŢIE ŞI PERFORMANŢE..............................................................80 3.2. COMENZI PENTRU DESCRIEREA DATELOR. LIMBAJUL DDL (DATA DESCRIPTION LANGUAGE).......................................................................87 3.3. COMENZI PENTRU INTEROGAREA BAZELOR DE DATE. FRAZA SELECT .................................................................................................................90 3.3.1 Interogări care utilizează operatorii asamblişti din algebra relaţională...........................................................................................93 3.3.2 Interogări care utilizează operatorii relaţionali din algebra relaţională...........................................................................................94 Selecţia................................................................................................94 Proiecţia. Opţiunea ORDER BY...............................................................98 Joncţiunea.................................................................................................99 Sub-consultări. Operatorul IN.................................................................100 Funcţii de agregare (statistice): COUNT, SUM, AVG, MAX, MIN.........103 Gruparea tuplurilor. Clauzele GROUP BY şi HAVING...........................105

5.4. Comenzi pentru actualizarea bazelor de date............................111 3.4. COMENZI PENTRU MANIPULAREA DATELOR. LIMBAJUL DML (DATA MANIPULATION LANGUAGE)..................................................................112 3.4.1 Adăugarea de înregistrări........................................................112 3.4.2 Ştergerea înregistrărilor...........................................................113 3.4.3 Modificarea valorilor unor atribute.........................................114 3.4 INTEROGAREA A UNEI BAZE DE DATE ORACLE 11 G........................115 CAPITOLUI IV. LIMBAJUL PL/SQL..................................................118 6.1. INTRODUCERE..................................................................................118 CREAREA UNUL BLOC DE BAZA PL/SQL...............................................120 II. DECLARAREA VARIABILELOR............................................................121 Atribuirea(Asignarea) unei valori variabilei............................................122 Variabile de legatura................................................................................124 Declararea Constantelor..........................................................................125

Procesarea interogarilor cu PL/SQL................................................125

2

Declararea tipului de data pentru variabile in PL/SQL...................126 %TYPE...................................................................................................126 %ROWTYPE..........................................................................................126 Tipul de data PLS_INTEGER.................................................................127

III. STRUCTURI DE CONTROL..................................................................127 b. CASE.............................................................................................129 C. LOOP.................................................................................................130 Folosirea comenzii EXIT..................................................................131 Comanda EXIT-WHEN....................................................................132 Etichetarea unei blucle PL/SQL.......................................................132 Bucla WHILE-LOOP........................................................................133 Using the FOR-LOOP Statement......................................................134

CAPITOLUL VI. PROIECTAREA FIZICĂ A BAZELOR DE DATE RELAŢIONALE......................................................................................136 6.1. CARACTERISTICI ALE UNEI BAZE DE DATE FIZICĂ...........................136 6.2 TRANSFORMĂRI LOGICO-FIZICE DE BAZĂ.........................................138 6.2.1 Partiţionarea verticală.............................................................139 6.2.2 Partiţionarea orizontală...........................................................141 6.2.3 Reuniunea................................................................................142 6.2.4 Aplicabilitatea transformărilor................................................146 6.2.5 Scheme virtuale (vederi utilizator)...........................................147 6.3. OPTIMIZAREA PERFORMANŢEI.........................................................148 6.3.1 Accesul la atribut.....................................................................148 6.3.2. Reuniuni preconstruite............................................................151 6.3.3 Buffere......................................................................................154 6.3.4 Gruparea relaţiilor de bază....................................................154 6.4 BAZE DE DATE RELAŢIONALE DISTRIBUITE......................................157 BIBLIOGRAFIE......................................................................................161

3

Capitolul I. BAZE DE DATE ŞI SISTEME DE GESTIUNE A BAZELOR DE DATE Sistemele de baze de date reprezintă cea mai importantă dezvoltare în domeniul ingineriei programării, ele devenind din ce în ce mai accesibile penru o largă varietate de utilizatori.

1.1. Concepte utilizate în studiul bazelor de date şi al sistemelor de gestiune a bazelor de date 1.1.1. Metoda prelucrării prin fişiere independente Sistemul bazat pe fişiere reprezintă sistemul anterior bazelor de date. Modul de lucru bazat pe fişiere independente, demodat astăzi, are o serie de neajunsuri care limitează eficienţa şi eficacitatea aplicaţiilor utilizator1. Specific metodei prelucrării prin fişiere, ilustrată în fig. nr. 2.1.2, este faptul că fiecare dată (Data1, Data2, ..., Datan) este descrisă în toate fişierele în care apare, iar fiecare fişier trebuie descris în toate programele în care este utilizat. Nu există nici o posibilitate de a stabili în mod explicit o relaţie între două fişiere de date.

1

O’Brian, Op. cit., pp. 244-246

4

Data1 Data2 Data3

FIŞIER 1

Prelucrare 1

...

Data2

FIŞIER 2

Prelucrare 2

Data4 Data3 Data1 Data2 DATE

... FIŞIER 3

Prelucrare 3

Data5 ... FIŞIERE

PRELUCRĂRI

Raport 1 Raport 2 Raport 3 Raport 4 IEŞIRI

Fig. nr. 1.1.Organizarea datelor în fişiere De asemenea, dacă spre exemplu, Data2 din Fişier1 este modificată, modificarea nu se face automat şi în Fişier2, ceea ce determină inconsistenţa datelor. Dezavantajele organizării datelor în fişiere pot fi sistematizate astfel: 1. Redundanţa şi inconsistenţa datelor, datorită prezenţei aceleiaşi date în mai multe fişiere independente; Aceleaşi date sunt înregistrate şi stocate în mai multe fişiere, ceea ce reclamă programe distincte pentru actualizarea fiecărui fişier. În plus, duplicarea datelor conduce la un consum mare de memorie şi incoerenţă la trecerea datelor stocate dintr-un fişier în altul. Aceasta duce la alterarea integrităţii datelor (datele nu mai concordă), gestionarea complexă şi actualizarea greoaie a acestora, precum şi la o monopolizare inutilă a spaţiului de memorie. 2. Complexitatea actualizărilor (adăugarea, ştergerea sau modificarea datelor); 3. Dificultatea obţinerii de informaţii neplanificate (spontane sau ad-hoc), chiar şi pentru o simplă interogare fiind necesară scrierea unui program; Dispersia datelor în diverse fişiere independente complică accesul utilizatorilor la informaţiile cerute ad-hoc, necesitând crearea de programe particulare pentru extragerea datelor solicitate. În lipsa acestor programe, pentru obţinerea informaţiilor dorite utilizatorul procedează la extragerea manuală. 4. Costul ridicat de exploatare ca urmare a dublării datelor;

2 Fotache, M., Baze de date relaţionale, Organizare, interogare şi normalizare, Ediţia a II-a, Editura Junimea, Iaşi, 1997, p. 25

5

Exploatarea fişierelor independente presupune un cost ridicat, atât în ceea ce priveşte resursele informatice (hardware şi software), cât şi cele legate de personalul utilizat. 5. Separarea şi izolarea datelor; Atunci când datele sunt izolate în fişiere separate, programatorul de aplicaţii trebuie să se asigure că sunt extrase datele corecte, fiind astfel necesară sincronizarea prelucrării datelor din fişiere diferite, această operaţiune fiind dificilă când sunt solicitate date din mai mult de două fişiere. 6. Formate de fişiere incompatibile, ceea ce face dificilă prelucrarea lor simultană Deoarece structura fişierelor este încorporată în programele de aplicaţii, ea este dependentă de limbajul de programare în care sunt scrise acestea. De exemplu, structura unui fişier generat de un program scris cu limbajul COBOL poate să fie diferită de cea a unuia generat cu un program în limbajul C. De aceea sunt necesare programe de transformare a fişierelor într-un format comun. 7. Dependenţa datelor faţă de programele de aplicaţii Organizarea fişierelor, adresa lor fizică în memorie şi programele de aplicaţii folosite pentru accesarea fişierelor sunt interdependente. Astfel, schimbările legate de dispunerea pe suportul de memorie, de structura datelor şi modificarea înregistrărilor unui fişier presupun modificări în toate programele în care este referit fişierul respectiv. Întreţinerea acestor programe este dificilă putând genera incoerenţe în fişierele de date. Incoerenţa şi lipsa de integritate sunt extrem de dificil de corectat deoarece nu există un dicţionar central pentru urmărirea definirii datelor. Toate aceste probleme care apar în sistemul ce prelucrează fişiere îşi găsesc rezolvarea prin folosirea bazelor de date şi a sistemelor de gestiune a bazelor de date. Datele stocate în baze sunt independente atât faţă de programele de aplicaţii care le folosesc, cât şi faţă de tipul de memorie utilizat.

6

1.1.2. Baze de date Pe măsura evoluţiei sistemelor de prelucrare automată a datelor şi, în mod special, a componentei hardware şi software, dar şi ca urmare a creşterii volumului datelor de prelucrat s-a dezvoltat un nou concept, cel al bazelor de date. El îşi face apariţia în a doua parte a anilor ’60, aducând un element de noutate, respectiv existenţa unui fişier de descriere globală a datelor, ceea ce asigură independenţa datelor de programe şi invers, fişier denumit dicţionar de date (vezi fig. nr. 3.2). La momentul respectiv, în cadrul sistemelor informatice implementate în întreprinderi, informaţiile erau organizate în fişiere de date (secvenţiale, indexate etc.) create cu ajutorul unor programe scrise în limbaje din generaţia a III-a: COBOL, FORTRAN etc. Principiul fundamental al bazelor de date îl constituie unicitatea informaţiilor, adică orice informaţie este înregistrată o singură dată şi poate fi utilizată ori de câte ori este nevoie, de către diferiţi utilizatori şi în diferite momente. Baza de date reprezintă un ansamblu integrat de înregistrări sau de fişiere reunite şi structurate în mod logic. În felul acesta datele stocate anterior în fişiere independente/distincte sunt concentrate într-un fond comun de înregistrări cu posibilitatea utilizării lor în numeroase aplicaţii. Baza de date este o colecţie partajată de date între care există relaţii logice şi o descriere a acestor date, proiectată pentru a satisface necesităţile informaţionale ale unei organizaţii. Ea reprezintă un depozit de date unic care este definit o singură dată şi este utilizat simultan de către mai multe departamente şi utilizatori. În loc de a mai exista fişiere separate cu date redundante, toate datele sunt integrate, cu o dublare minimă. Baza de date nu mai este deţinută de un singur departament, ci constituie acum o resursă comună, partajată. Ea conţine nu numai datele operaţionale ale organizaţiei, ci şi o descriere a acestora. De aceea ea este definită şi ca o colecţie autodescrisă de înregistrări integrate. Această descriere a datelor este cunoscută sub denumirea de catalog de sistem sau dicţionar de date sau meta-date (date despre date). Natura autodescriptivă a bazelor de date este cea care determină independenţa program-date. 7

BAZA DE DATE

Fişier de date 1 Fişier de date 2 ...

Dicţionar de date

Fişier de date n

Aplicaţia 1

Aplicaţia 2

...

Aplicaţia m

Fig. nr .2.2. Structura unei baze de date Conceptul de bază de date a apărut în 1964 în cadrul primului raport CODASYL3 prezentat la lucrările unei Conferinţe pe probleme de limbaje de gestiune a datelor “Development and Management of Computer – centered date-base”. La această conferinţă a fost lansată ideea organizării datelor prin intermediul unui fişier de descriere globală, numit dicţionar de date care are menirea de a asigura independenţa programelor faţă de date şi a datelor faţă de programe4. Atunci când se analizează necesităţile informaţionale ale unei organizaţii se urmăreşte identificarea entităţilor, a atributelor şi a relaţiilor dintre entităţi. De aceea, abordarea bazelor de date presupune şi tratarea următoarelor elemente: entitate (articol, înregistrare logică), atribut (caracteristică, câmp) şi valoare/realizare5. 3

COnference on DAta SYstems Languages – Conferinţa despre Limbajele Sistemelor de Date 4

Lungu, I., ş.a., Baze de date, Organizare, proiectare şi implementare, Editura All, Bucureşti, 1995, p.13 5 Aceste elemente sunt numite diferit în literatura de specialitate. Vezi Roşca, I., ş.a. Baze de date şi SGBD, Bucureşti, 1986; Lungu, I., ş.a., Op.,

8

Prin entitate se înţelege un obiect concret sau abstract (operaţie economică, mijloc economic etc.) reprezentat prin proprietăţile sau însuşirile sale. Orice proprietate poate fi exprimată printr-o pereche atribut-valoare sau caracteristică-realizare. O entitate este identificată printr-un nume şi cuprinde, în general, mai multe valori sau realizări. Atributul are rolul de a descrie însuşirile sau proprietăţile obiectului, stabilind natura valorilor pe care acesta le poate lua. Valoarea reprezintă mărimea ce se atribuie fiecărei caracteristici din cadrul unei entităţi. Relaţia reprezintă o asociaţie între mai multe entităţi. Aceste elemente sunt prezentate în tabelul nr. 2.1: Tabelul nr. 2.1. Elemente specifice bazelor de date Entitat e

Caracteristici (atribute)

Realizări (valori)

Cod_produs

Produs

152

Denumire_produs

Pantofi

Unit_măs

Pereche

Preţ_ unitar

115

Cantitate

100

Nr._factură

2452

Data_recepţiei

24-10-2007

O bază de date trebuie să satisfacă cinci condiţii esenţiale 6: cit.,; Fotache, M., Baze de date relaţionale, Editura Junimea, 1997 6 Moréjon, J., Principes et conception d’une base de données relationnelle, Les Editions d’organisation, Paris, 1992, p. 20

9











O bună reprezentare a realităţii înconjurătoare, adică baza de date trebuie să ofere întotdeauna o imagine fidelă a realităţii prin informaţii fiabile şi actualizate; O non-redundanţă a informaţiei, informaţia conţinută în baza de date trebuind să fie unică din punct de vedere semantic şi fizic; O independenţă a datelor faţă de prelucrări; datele constituie imaginea fidelă a lumii reale, programele de aplicaţii trebuind să fie concepute în raport cu această structură a datelor; Securitatea şi confidenţialitatea datelor; securitatea datelor trebuie asigurată prin proceduri fizice, iar confidenţialitatea prin proceduri care să împiedice accesul utilizatorilor neautorizaţi; Performanţe în exploatare, orice c...


Similar Free PDFs