Cunoaște Intuit, curs, introducere la Structured Query Language

Obiect bază de date relațională

Ierarhia obiectelor unei baze de date relaționale

Una dintre principalele sarcini pe care trebuie să decidă proiectantul în faza de proiectare a unui model fizic al unei baze de date relaționale. este sarcina de a converti un obiect logic relaționale obiecte de model de baze de date în baza de date relațională. Pentru a rezolva această problemă, proiectantul bazei de date trebuie să cunoască: a) ce obiecte o bază de date relațională, în principiu; b) obiectul ce susține o bază de date specifice, care este selectat pentru punerea în aplicare a bazei de date.







Astfel, presupunem că decizia de a selecta baza de date a fost deja făcută șeful proiectului de IT, și a fost de acord cu baza de date a clientului, și anume Baza de date set. Proiectantul bazei de date ar trebui să fie familiarizați cu documentația, care descrie dialectul SQL sprijinit de bazele de date selectate. În acest curs presupunem că ați selectat baza de date Oracle 9i, deși marea majoritate a materialului acoperă obiectele din orice RDBMS comerciale.

Notă. La alegerea SGBD. Selectarea bazei de date se referă la o problemă multicriteriala de alegere și, în acest curs nu este considerat. Trebuie amintit faptul că baza de date este de obicei acceptă doar un singur model de date: relațional ierarhic, rețea,, multi-dimensionale, orientate-obiect-obiect relațional. Excepțiile sunt un număr mic de baze de date. De exemplu, Adabas, Software AG (rețea și modele relaționale), sau Oracle 9i, Oracle Inc. (Modelul relational si relational-obiect). De obicei, atunci când aleg o bază de date de la toate celelalte oportunități egale încearcă să creeze o bază de date pe baza de date, care pretinde a fi standardul industriei.

Ierarhia obiectelor bazei de date relaționale înregistrate în standardele SQL pentru, în special, în standardul SQL-92. pe care ne vom concentra în prezentarea acestui material de curs. Acest standard este susținută de aproape toate bazele de date moderne, până la desktop-ul. Ierarhia obiectelor dintr-o bază de date relațională este prezentată în figura de mai jos.

La cel mai scăzut nivel sunt cele mai mici obiecte care ruleaza baze de date relaționale, - coloane (coloană) și rând. Acestea, la rândul lor, sunt grupate în tabele și vizualizări.

Notă. În contextul prelegeri atribute coloane, coloane și câmpuri sunt considerate sinonime. Același lucru este valabil și pentru termeni „rând“, „scrie“ și „tuplul“.

Tabelele și vederi care reprezintă reflecția structura logică fizică a bazei de date, colectate în diagramă. Mai multe tipuri de scheme sunt colectate în cataloage, care pot fi apoi grupate în grupuri. Trebuie remarcat faptul că nici unul dintre grupurile de obiecte, SQL standard-92 nu se referă la structura stocarea fizică a informațiilor în memoria calculatorului.

Cunoaște Intuit, curs, introducere la Structured Query Language


Fig. 8.1. Ierarhia obiectelor dintr-o bază de date relațională care corespunde standardului SQL-92

În plus față de aceste obiecte în imagine, indexurile pot fi create într-o bază de date relațională, declanșatoare, evenimente, comenzi stocate, proceduri stocate, precum și un număr de alte persoane. Ne întoarcem acum la definirea obiectelor unei baze de date relaționale.

Principalele obiecte ale bazei de date relaționale

Clustere, cataloage, și circuite nu sunt necesare elemente ale standardului și, prin urmare, mediul de software de baze de date relaționale.

Sub cluster este un grup de directoare care pot fi accesate printr-o singură conexiune la serverul de baze de date (SGBD componenta software).

În practică, procedura de creare a directorului este determinată de punerea în aplicare a bazei de date pe o platformă de operare. În cadrul grupului director se referă scheme. În practică, catalog este adesea asociat cu baze de date fizice ca o colecție de fișiere de sistem de operare fizice, care sunt identificate prin numele său.

Pentru schema proiectantul bazei de date - este o viziune comună logică a relațiilor de baze de date completă. În ceea ce privește SQL, schema - un container pentru tabele, vizualizări și alte elemente structurale ale bazei de date relaționale. Principiul introducerea elementelor din fiecare schemă de baze de date este complet determinată de proiectant de baze de date.

Pentru a crea un tabel și a vizualiza disponibilitatea schemei nu este obligatorie. Dacă intenționați să instalarea unei singure baze de date logică, este clar că se poate face fără de circuit. Dar, în cazul în care se preconizează că aceeași bază de date vor fi folosite pentru a sprijini mai multe baze de date, organizarea corectă a obiectelor bazei de date din schema poate facilita în mod semnificativ întreținerea acestor baze de date. În practică, circuitul este adesea asociat cu o bază de date fizică specifică obiectului utilizator.







Apoi, obiectele bazei de date relaționale vor fi introduse în contextul Oracle 9i RDBMS. Această abordare este adoptată, deoarece proiectarea modelului fizic al unei baze de date relaționale este realizată pentru mediul specific al punerii sale în aplicare.

In schema Oracle 9i pe termen (schema) pe care este utilizat pentru a descrie toate obiectele bazei de date, care sunt create de unii utilizatori. Pentru fiecare utilizator nou creează automat o nouă schemă.

Principalele obiecte ale bazelor de date relaționale includ tabele, vederi, utilizator.

Tabel (Table) este structura de bază a unei baze de date relaționale. Este o unitate de stocare - raport. Tabelul identificat în baza de date prin numele său distins, care include identificarea utilizatorului. Tabelul poate fi gol sau poate consta dintr-un set de rânduri.

Reprezentarea (View) - un nume sprijinit dinamic eșantion SGBD de una sau mai multe tabele de baze de date. Operatorul eșantion restricționează datele vizibile de utilizator. De obicei, SGBD asigură reprezentarea de urgență - formarea sa este făcută de fiecare dată când este utilizată vizualizarea. Uneori prezentarea numit tabele virtuale.

Utilizator (User) - un obiect care are capacitatea de a face sau de a folosi alte obiecte de baze de date și funcții de execuție de interogare a bazei de date. cum ar fi organizarea unei sesiuni, schimbarea în starea bazei de date, și așa mai departe. d.

Pentru a simplifica identificarea și denumirea obiectelor în baze de date întreținute obiecte precum un sinonim, și secvența de tipuri de date definite de utilizator.

Sinonim (Sinonim) - este un nume alternativ al obiectului (un pseudonim), o bază de date relațională, care permite accesul la obiect. Sinonim pot fi partajate și private. sinonimul public permite tuturor utilizatorilor să acceseze baza de date corespunzătoare obiectului numelui său. Sinonim pentru a ascunde de la utilizatorii finali obiect complet calificat în baza de date.

Secvența (Sequence) - un obiect de bază de date, care permite de a genera o secvență de numere unice (numere) într-un acces asincron multi-utilizator. In general, elementele de secvență sunt utilizate pentru a tabelului unic de numerotare a elementelor (rândurile) ale operațiunilor de modificare a datelor.

definite de utilizator tipuri de date (definite de utilizator tipuri de date) sunt definite de utilizator tipuri de atribute (domenii) care sunt diferite de tipul acceptat (embedded) de baze de date. Acestea sunt determinate pe baza unor tipuri de built-in. definite de utilizator tipuri de date formează o parte a mediului de baze de date, care este organizat în conformitate cu o paradigmă orientată pe obiecte.

Pentru a asigura accesul efectiv la datele din sistemele de gestiune a bazelor de date sunt susținute de o serie de alte obiecte: index, spațiu tabelă, secțiunea de cluster.

Index (Index) - un obiect bază de date care este creat pentru a îmbunătăți performanța de eșantionare a datelor și de a controla unicitatea cheii primare (în cazul în care este setat pentru tabel). Complet indicelui de masă (mese organizate-index) îndeplinește rolul de masă și indicele în același timp.

Spațiul tabelă sau zona (tablespace) - o parte numită a bazei de date, care este utilizat pentru a aloca memorie pentru tabele și indecși. În Oracle 9i - este numele logic al fișierelor de sistem de operare fizic. Toate obiectele bazei de date care stochează datele corespunzătoare unui spațiu de tabelă. Cele mai multe obiecte de bază de date în care datele nu sunt stocate în datele de dicționar, situate în SYSTEM TABLESPACE.

Cluster (Cluster) - este un obiect care specifică modul de partajare de stocare a datelor în tabelul de mai multe sau singur. Unul dintre criteriile de utilizare a clusterului este prezența unor domenii-cheie comune în mai multe tabele, care sunt utilizate în aceeași declarație SQL. coloane sau tabele De obicei grupate sunt stocate într-o bază de date sub formă de tabele de dispersie (mod adică special).

Secțiunea (partiție) - un obiect de bază de date, care ne permite să reprezinte datele obiectului ca un set de sub-obiecte atribuite diferite spații de tabelă. Astfel, partiționarea vă permite să aloce o foarte mare tabele pe mai multe hard disk-uri.

Pentru prelucrare a datelor într-un mod special sau de a pune în aplicare pentru a menține integritatea referențială a obiectelor bazei de date utilizate: proceduri stocate, funcții, comandă temporizator de declanșare și un pachet (Oracle). Cu aceste obiecte de baze de date se poate realiza (prelucrarea de înregistrare) datele așa-numita prelucrare rând. Din punct de vedere al aplicațiilor de baze de date prin linie de tratament - o prelevare de probe de serie a unui singur rând de date, prelucrarea și trecerea la următoarea linie de tratament.

Aceste obiecte de baze de date relaționale sunt programe, adică cod executabil. Acest cod este de obicei denumit cod de tip server (cod de tip server-side). deoarece este executat de un computer, pe care miezul RDBMS. Planificarea și dezvoltarea unui astfel de cod este una dintre sarcinile proiectantul unei baze de date relaționale.

Procedura stocată (procedură stocată) - un obiect bază de date care reprezintă o colecție numită de declarații și / sau operatorilor specializați limbaje de programare baze de date de procesare (de exemplu, SQLWindows sau PL / SQL) SQL.

Funcție (Function) - un obiect bază de date care reprezintă o colecție numită de instrucțiuni SQL și / sau operatorilor specializați limbaje de programare baze de date de procesare, care atunci când sunt executate returnează o valoare - rezultatul calculului.

Comandă (comandă) - un operator numit de SQL, care este pre-compilate și stocate într-o bază de date. viteza de procesare de comandă mai mare decât cea a instrucțiunii SQL corespunzătoare pentru el, pentru că nu este îndeplinită și parse faza de compilare.

Trigger (Trigger) - un obiect bază de date, care este o procedură specială stocată. Această procedură este declanșată în mod automat atunci când este asociat cu evenimentul de declanșare (de exemplu, pentru a insera un rând în tabel).

Cronometru (temporizator) diferă de declanșare, astfel încât evenimentul de declanșare pentru procedura stocată este evenimentul timer.

Pachet (pachet) - un obiect bază de date, care constă dintr-un set structurat de variabile numite, proceduri și funcții.

Într-o bază de date relațională distribuită, există obiecte speciale: o imagine și o conexiune de baze de date.

Instantaneu (Snapshop) - o copie locală a unui tabel de baze de date la distanță, care este utilizată pentru replicare (replicare) a rezultatului tabelă sau o interogare. Imaginile pot fi modificabil sau doar în citire.

Bază de date Relația (Database Link) sau conexiunea la baza de date de la distanță - un obiect bază de date care vă permite să accesați o distanță de obiecte bază de date. Numele conexiunii bazei de date, aproximativ vorbind, poate fi prezentat ca un link către setările pentru baza de date la distanță.

Pentru a gestiona în mod eficient accesul concurent la date în Oracle rol de suport obiect.