Documente Academic
Documente Profesional
Documente Cultură
BD Exemplu:
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 Viewul; 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;
Crearea unui View standard folosind interfata grafica dedicata (exemplu: o interogare fara grupari)
S se defineasc un obiect de tip view care s returneze toate facturile emise clienilor dup data de 23.12.2010. n rezultate se va calcula valoarea fr TVA din fiecare carte vndut. 1. Se stabilesc tabelele ce vor fi utilizate (Facturi, Clienti, Carti, ContinutFactura) 2. Se stabilesc atributele (considerate relevante) ce vor face parte din rezultatele returnate de obiectul View: NrFactura, DataFactura, CUIClient, DenumireClient, CodISBN, DenumireCarte, CantitateVanduta, PretVanzare 3. Se calculeaza ValoareCarte (zona Alias) dup expresia (zona Column): CantitateVanduta * PretVanzare 4. Se definesc condiiile de selecie a datelor. Pentru acest exemplu condiia se menioneaz pe coloana Filter, rndul DataFactura. Condiia este: >convert(datetime, 2010-12-23, 102) Observaii: Dup introducerea unei expresii SQL Server poate face ajustri asupra modului de scriere al acesteia. Codul 102 indic modul de specificare al datei calendaristice (aaaa-ll-zz). nainte de a meniona eventualele condiii de selecie a datelor, se poate face o prob de execuie, pentru a vedea dac interogarea furnizeaz rezultate sau nu.
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)
S se defineasc un obiect de tip view care s returneze toate facturile care conin cri tiprite dup data de 1.1.2010 (inclusiv). Se va calcula i un total valoric (parial) al acestor facturi. Se vor afia doar facturile cu totalul mai mare de 20 lei. 1. Se stabilesc tabelele ce vor fi utilizate (Facturi, Clienti, Carti, ContinutFactura) 2. Se stabilesc atributele (considerate relevante) ce vor face parte din rezultatele returnate de obiectul View: NrFactura, DataFactura, CUIClient, DenumireClient 3. Se activeaz opiunea de interogri cu totaluri (Query Designer ->Add Group By) 3. Se calculeaza Total (zona Alias) dup expresia (zona Column): CantitateVanduta * PretVanzare, iar pe coloana Group By se alege SUM. 4. Se definesc condiiile de selecie a datelor. pe coloana Filter, rndul DataAparitie. Condiia este: >=convert(datetime, 2010-01-01, 102) Pe coloana Total, condiia este: >20 Observaii: Coloana DataAparitie nu va putea fi afiat n rezultatele interogrii (zona Output), deoarece condiia pentru acest atribut acioneaz nainte (zona Group By se alege Where) de momentul efecturii gruprilor i calculul funciilor agregate
Crearea unui View standard folosind interfata grafica dedicata (exemplu: interogare cu grupari)
MODIFICARE VIEW
STERGERE VIEW
Exemplu creare:
CREATE VIEW vwProduse As SELECT * FROM Produse WHERE UM=Buc Exemplu modificare: ALTER VIEW vwProduse As SELECT * FROM Produse WHERE UM=kg or UM=Buc Nota: accesarea unui View dintr-o fraza SQL se realizeaza respectand sintaxa unei fraze SELECT: SELECT lista_atribute FROM NumeView .
Exemplu:
CREATE VIEW Exemplu WITH SCHEMABINDING As SELECT CodProdus, DenumireProdus, PretCatalog FROM dbo.Produs WHERE UM='Buc
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.