Vizualizare (baze de date)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Vizualizările sunt un element utilizat de majoritatea SGBD-urilor . Este, așa cum sugerează și numele, „moduri de a vedea datele ”.

O vizualizare este reprezentată de o interogare (SELECT), al cărei rezultat poate fi folosit ca și cum ar fi un tabel . Din punct de vedere fizic, există mai multe modalități de a face acest lucru. SGBD reelaborează, în general, interogări privind vizualizările, astfel încât să acționeze asupra tabelelor care fac parte din vizualizare. De exemplu, pot face acest lucru tratând SELECT-ul care compune vizualizarea ca și cum ar fi o subinterogare a interogărilor efectuate pe acesta (acesta este cel mai simplu mod, dar nefiind foarte eficient, SGBD ar trebui să o facă numai în cazuri speciale) .

O vizualizare poate fi alcătuită din una sau mai multe tabele; unele DBMS, cum ar fi MySQL , vă permit, de asemenea, să vă bazați vizualizarea pe o expresie SQL care nu implică niciun tabel (de exemplu: SELECT 1 + 1 AS sum).

Descriere

Scopul vizualizărilor

Vizualizările sunt de obicei utilizate pentru a simplifica interogările. Dacă baza de date este cu adevărat relațională, citirea unui set semnificativ de date poate fi complexă, deoarece poate necesita îmbinări excesive între tabele; cu o vedere, puteți simplifica foarte mult scrierea interogărilor care citesc informații.

Un alt scop al vizualizărilor ar putea fi simplificarea sau îmbunătățirea gestionării permisiunilor. De exemplu, puteți crea o interogare care citește doar unele date dintr-un tabel (prin clauza WHERE) și apoi atribuiți permisiunea de citire unui anumit utilizator din vizualizare, dar nu și din tabelul de bază. În acest fel, utilizatorul nu va vedea date care nu sunt extrase din vizualizare.

Vizualizări actualizabile

Vizualizările pot fi actualizabile, adică comenzile DML precum INSERT, UPDATE și DELETE pot fi executate pe ele. Nu toate SGBD acceptă această posibilitate. Deoarece o vizualizare nu este altceva decât o interfață pe una sau mai multe tabele, aceste comenzi vor modifica tabelele subiacente. Nu toate vizualizările se pot actualiza și scrie. Vorbim de vizualizări „actualizabile” (pe care puteți executa UPDATE și DELETE) numai atunci când SGBD este capabil să stabilească o mapare inversă între înregistrările prezente în vizualizare și cele din tabele. Vorbim de vizualizări „ inserabile ” (pe care se poate efectua INSERT) atunci când SGBD poate introduce înregistrarea în tabelul corect. De exemplu, o vizualizare care arată valorile maxime ale unui anumit tabel sau care grupează înregistrările cu o clauză GROUP BY nu este „inserabilă”, deoarece aceste date nu sunt scrise fizic într-un anumit tabel, ci reprocesate printr-o interogare. Dacă toate datele conținute în vizualizare sunt, de asemenea, scrise fizic în tabele, dacă vizualizarea implică mai multe tabele, trebuie să existe o relație de la unu la unu între ele. Mai mult, o viziune bazată pe o UNIUNE nu este, în general, editabilă.

A șasea lege formală prevede: „toate punctele de vedere care sunt actualizabile în teorie, ar trebui să fie și actualizabile în practică”.

Vizualizările s-au concretizat

Unele sisteme de gestionare a bazelor de date (cum ar fi Oracle ) acceptă o vizualizare concretizată . Aceasta este o vizualizare ale cărei date sunt înregistrate pe o memorie de masă (de obicei pe hard disk ), pentru o citire mai rapidă. La intervale regulate, datele conținute în acesta sunt actualizate de sistem (SGBD).
De obicei, aceste vizualizări sunt utilizate pentru aplicații de stocare a datelor .

Alternative la vizualizări

Vizualizările sunt folosite pentru a rezolva probleme care pot fi adesea rezolvate și în alte moduri. Prin urmare, un DBA bun trebuie să aleagă cea mai eficientă soluție de la caz la caz.

Coloane virtuale și indexuri funcționale

Uneori, vizualizările sunt create doar pentru a adăuga o coloană la un tabel, calculată pe celelalte, fără ca aceasta să fie înregistrată fizic în baza de date. Interogările din vizualizare vor putea apoi să citească coloana suplimentară fără a trebui să includă formula necesară pentru calcularea valorii acesteia.

Dacă SGBD acceptă coloane virtuale ( MariaDB , Oracle ...) sau indexuri funcționale ( PostgreSQL ), trebuie doar să adăugați unul dintre aceste obiecte în tabel.

Declanșator

Uneori, vizualizările sunt folosite pentru a adăuga o coloană (a se vedea paragraful de pe coloanele virtuale) sau pentru a modifica o valoare la momentul afișării (de exemplu, făcând ca toate caracterele dintr-un câmp să fie minuscule). O altă modalitate de a face același lucru este cu declanșatoarele . Folosind declanșatoarele puteți scrie valoarea dorită pe disc, făcând citirea mai rapidă (dar ocupând mai mult spațiu).

Tabelele rezumative

Uneori doriți să grupați datele nu numai logic, ci și fizic. O tehnică este de a crea tabele denormalizate, care conțin date din alte tabele. Aceste tabele rezumative trebuie actualizate periodic, de preferință într-un moment în care baza de date nu este utilizată (de obicei noaptea). Această tehnică permite o performanță mai bună în interogările de tip OLAP .

Elemente conexe

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT