Sunteți pe pagina 1din 9

Obiecte Views

Obiecte Views
View - tabel virtual al carui continut se obtine in urma executiei unei interogari
 Datele dintr-un View nu sunt stocate separat in baza de date impreuna cu View-
ul;
 Nu sunt memorate nici macar campurile obiectului View;
 Atat DATELE cat si CAMPURILE (structura tabelara) din View sunt obtinute in
mod DINAMIC la fiecare executie a interogarii care sta la baza;

Gestionarea obiectelor VIEWS

 View-urile pot fi create/modificate/sterse utilizand interfata grafica dedicata pusa


la dispozitie prin SQL Server Management Studio (gen QBE din Access);
 View-urile pot fi create/modificate/sterse direct dintr-o fraza SQL
(de exemplu dintr-o fraza SQL executata in fereastra Query);
 Datele dintr-un View pot fi invocate cu usurinta din orice fraza SQL, printr-o fraza
SQL de tip SELECT, in sintaxa SQL fiind asimilate tabelelor (virtuale).
Categorii de obiecte Views
STANDARD – utilizeaza interogari uzuale de selectie pe unul
sau mai multe tabele ale bazei de date;

INDEXATE – utilizeaza un index pentru a creste performantele


accesului la date prin intermediul unui View; performanta este
foarte ridicata, doar in cazul in care datele accesate nu sufera
modificari dese in timp;

PARTITIONATE – se utilizeaza pentru a a accesa seturi de date


cu structura identica, distribuite pe unul sau mai multe servere;
se utilizeaza cu succes pentru implementarea bazelor de date
federative;
Crearea unui View standard folosind interfata grafica dedicata
(exemplu: o interogare fara grupari)
Crearea unui View standard folosind interfata grafica dedicata
(exemplu: interogare cu grupari)
Crearea/modificarea/stergerea unui View standard in SQL
CREATE VIEW numeView As CREARE VIEW
fraza_SQL_SELECTIE

ALTER VIEW numeView As MODIFICARE VIEW


fraza_SQL_SELECTIE

DROP VIEW numeView STERGERE VIEW

Exemplu creare:
CREATE VIEW vwProduse As
SELECT * FROM Produse Nota: accesarea unui View
WHERE UM=‘Buc’ dintr-o fraza SQL se realizeaza
respectand sintaxa unei fraze
Exemplu modificare: SELECT:

ALTER VIEW vwProduse As SELECT lista_atribute


SELECT * FROM Produse FROM NumeView
WHERE UM=‘kg’ or UM=‘Buc’ …….
Crearea unui View indexat in limbajul SQL

CREATE VIEW numeView WITH SCHEMABINDING As


fraza_SQL_SELECTIE

CREATE UNIQUE CLUSTERED INDEX numeIDX ON


numeView(numecamp)

Exemplu:
CREATE VIEW Exemplu WITH SCHEMABINDING As
SELECT CodProdus, DenumireProdus, PretCatalog
FROM dbo.Produs
WHERE UM='Buc‘

CREATE UNIQUE CLUSTERED INDEX numeIDX ON


Exemplu(CodProdus)
Crearea unui View partitionat in SQL
 Se implementeaza cu ajutorul interogarilor de tip UNION, fiind de fapt o
reuniune a seturilor de date cu structura identica/asemanatoare distribuite la
nivel local sau pe servere diferite;
Exemplu: afisarea facturilor din doua baze de date (Curs si CursBIS) cu
structura identica, situate pe acelasi server
Crearea unui View partitionat distribuit in SQL
Exemplu: afisarea facturilor din doua baze de date (CursBIS si CursDistribuit) cu structura
identica, situate pe servere diferite ([s-win-sql-cig\cig] si [fm-1CD7063cd72e\fmmobile])

Nota: pentru a putea executa o fraza SQL


care foloseste date de pe mai multe
servere se executa in prealabil procedura:

sp_addlinkedserver nume_server

(o singura data) pentru fiecare server.