Proiectarea bazelor de date

Curs
8.5/10 (2 voturi)
Domeniu: Calculatoare
Conține 2 fișiere: doc
Pagini : 8 în total
Cuvinte : 2857
Mărime: 20.44KB (arhivat)
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: criscota serban
2 cursuri - 18.03.2004 si 30.04.2004

Extras din curs

Obiecte complexe in SQL. Vederi.

O vedere (VIEW). Este un obiect al BD care poate fi considerat ca fiind o tabele virtuala adica o tabele pentru care se pastreaza in BD doar schema nu si datele. Poate fi utilizata in orice interogare ca si un tabel. Cu anumite restrictii dependente de SGBD ele pot fi utilizate si in op. de actualizare.

Din punct de vedere al SQL orice vedere este alcatuita dintr-o instructiune SELECT pastrata permanent ca un obiect dinstinct al BD.

O vedere este de obicei folosita pentru a incapsula o operatie de jonctiune mai complicata sau o interogare utilizata frecvent. Poate fi utilizata pentru a oferi unui utilizator numai datele de care are nevoie sau la care are drept de acces. Aceasta inseamna ca atunci cand se atribuie drepturile de acces pentru diversi utilizatori se vor atribui drepturi de acces la diverse vederi dar nu si la tabelele pe baza carora se construieste vederea.

Coloanele unei vederi pot fi coloane extrase dintr-o tabela, din alta vedere sau coloane calculate. Se observa ca o vedere poate sa faca apel la o alta vedere. In final trebuie sa se ajunga la tbl de baza sau expresii care nu utilizeaza tabele ci functii.

Ex: GETDATE ( ) à returneaza ora, minutele, secundele, data.

SQL Server 2000 nu suporta decat vederi statice. Pentru a simula o vedere temporala valabila doar pe durata unei sesiuni de lucru se creaza o vedere statica in BD predefinita tempbd.

Crearea unei vederi in SQL Server 2000 e posibila numai in BD pentru care e definite. Crearea vederii se realizeaza cu ajutorul comenzii: CREATE VIEW.

Sintaxa comenzii este:

CREATE VIEW[proprietar]nume_vedere[(lista_coloane)]

[WITH <atribute_vedere>[,..n]]

AS

Comanda_SELECT

[WITH CHECK OPTIONS]

<atribute_vedere>::={ENCRIPTION|SCHEMA BINDING}

Parametrii comenzii au urmatoarele semnificatii:

- nume vedere = numele vederii care trebuie sa respecte toate regulile impuse identific

- lista coloane = parametru obtional cu numele coloanei dintr-o vedere. Se va utiliza doar daca numele numele unora dintre coloanele vederii difera de numele coloanei corespunzatoare din tabloul de baza sau exista coloane calculate carora trebuie sa le dam un nume. In acest ultim caz putem da nume coloanei calculate in comanda SELECT folosind aliasul de coloana. Daca lista lipseste, numele coloanei e identic cu cel din comanda SELECT prin care definim vederea.

- cuvantul cheie AS = cuvantul prin care se introduce comanda SELECT de definire a vederii.

Comanda SELECT e o comanda SELET prin care se defineste structura si continutul vederii create. O vedere poate fi creata utilizand una sau mai multe tablouri si vederi deja definite si asupra carora cel care creaza vederea are drept de acces.

Exista cateva restrictii privind comanda SELECT. Principalele sunt:

- nu se accepta includerea clauzei ORDER BY decat in cazul in care la inceputul comenzii SELECT apare optinea TOPn, care specifica faptul ca vor fi selectate numai primele n elemente din lista. In general, utilizarea ordonarii in interiorul comenzii SELECT de definitie nu se justifica deoarece utilizatorul trebuie sa poata ordona informatia in functie de necesitati. Exista cazuri in care este necesar sa se selecteze de la inceput informatia intro-a aunmita ordine.

- nu se accepta includerea cuvintelor cheie INTO, deoarece aceasta ar insemna crearea unei copii fizice a continutului selectat.

- nu se accepta referirea la tablourile temporale sau la variabile tablou.

Obtiunea WITH CHECK OPTION obliga ca in cazul in care se folosesc comenzi de actualizare, toate operatiile de actualizare a datelor executate asupra unei vederi trebuie sa respecte regulile de integritate impuse de comanda SELECT din vedere. Aceasta este necesar, deoarece in lipsa unei optiuni o linie introdusa fara sa respecte clauza impusa de SELECT va dispare de pe ecran dupa actualizare. Daca se utilizeaza aceasta obtine, toate liniile introduse vor apare pe ecran.

Optiunea WITH ENCRIPTION asigura criptarea textului comenzii de creare a vederii pentru ca acesta sa nu poata fi vizualizat. Nu se recomada cecat intr-o veriune finala.

Optiunea WITH SCHEMA BINDING asigura integritatea structurala a unei vederi in sensul ca nici o tbl. si nici o vedere care participa la realizarea unei vederi cu aceasta clauza nu vor putea fi eliminate si nu modifica structura pana cand vederea afectata nu e eliminata.

Cand introducerea BD se realizeaza printr-o vedere, sistemul verifica daca toate obiectele referite exista, daca sunt valide si daca modificarea datelor nu violeaza regimul de integritate a datelor. Daca cel putin o verificare esueaza, interogarea este abandonata si se returneaza un mesaj de eroare. Daca toate verificarile s-au finalizat cu succes, interogarea asupra vederii va fi transformata automat intr-un set de interogari asupra continutului tabloului de baza.

Preview document

Proiectarea bazelor de date - Pagina 1
Proiectarea bazelor de date - Pagina 2
Proiectarea bazelor de date - Pagina 3
Proiectarea bazelor de date - Pagina 4
Proiectarea bazelor de date - Pagina 5
Proiectarea bazelor de date - Pagina 6
Proiectarea bazelor de date - Pagina 7
Proiectarea bazelor de date - Pagina 8

Conținut arhivă zip

  • PBD - curs - 30.04.2004.doc
  • PBD curs-18.03.2004.doc

Alții au mai descărcat și

AutoCad

APERTURE - controleazã mãrimea cursorului selector, caracteristic modului object snap. ARC - traseazã un arc de cerc de orice dimensiune. A -...

Biblioteca de Șabloane Standard

Biblioteca de Sabloane Standard (STL) asigura o abstractizare standardizata a datelor prin intermediul containerelor si o abstractizare procedurala...

Clase Derivate

1. Clase derivate. Prin mostenire, atributele unei clase de baza sunt transmise unor clase derivate. Derivarea permite definirea unor clase noi,...

Clase în Java

Clase pentru miniaplicatii Miniaplicatiile constituie extensii ale unei clase deja existente java.applet.Applet. Structura clasei unui applet...

Clase

1. Programare procedurala –Programare orientata pe obiecte. Limbajul C, ca si Pascal, utilizeaza modelul programarii structurate procedurale, care...

Comunicații internet

2.1. Stilurile caracterelor {n sfirsit pagina dvs. contine ceva, chiar daca este vorba numai de un nume. Vom analiza in continuare elementele de...

Crearea unei aplicații independente în Java

Toate aplicatiile Java contin o metoda main(), spre deosebire de miniaplicatii. class FirstApp { public static void main( String argsst) {...

Curs Excel

Deplasarea prin foi Deplasarea dintr-o foaie in alta se face cu clic cu mouse-ul pe eticheta foii dorite. Deplasarea prin celule Va puteti...

Te-ar putea interesa și

Sistem Informatic Pentru Evidența Contractelor la o Firmă

Activitatea economică reprezintă un domeniu fundamental pentru existenţa societăţii omeneşti, pentru ameliorarea continuă a condiţiei umane. Omul...

Proiectarea bazelor de date orientate pe obiecte

Introducere Esenţa oricărei baze de date este păstrarea informaţiei. Informaţia păstrată în baza de date este foarte diversă – de la simple...

Proiect Baze de Date (Oracle)

CERINTE PROIECT VARIANTA 1 A. Definirea schemei bazei de date  tabele (minim 4) cu legaturi si alte restrictii de integritate (CREATE TABLE),...

Proiectarea Bazelor de Date Relaționale pentru Gestionarea unei Biblioteci de CD-uri Folosind Microsoft Access

INTRODUCERE În contextul societatii actuale, caracterizata printr-o explozie fara precedent în istoria omenirii, sistemele informatice reprezinta...

Proiectarea unei Baze de Date

I. Principalele cerinte impuse de Serviciul de Ambulanta Judetean sunt urmatoarele : activitate acordarea serviciilor medicale de urgenta...

Baze de date relaționale - proiectare și implementare

INTRODUCERE Tema proiectului Proiectul tratează aspecte teoretice ale proiectării bazelor de date relaţionale şi transpune aceste aspecte în...

Proiect Baze Date - Access

Bazele de date In orice domeniu de activitate informaţia are o importanta decisiva. Cei care reuşesc in zilele noastre nu mai sunt neapărat cei...

Proiect baze de date - firmă transporturi

Se cere proiectarea unei baze de date care sa gestioneze informatii privind activitatea desfasurata de medici din spitalele din Romania. Pentru a...

Ai nevoie de altceva?