Condividi tramite


Viste

Una vista è una tabella virtuale il cui contenuto è definito da una query. In modo analogo a una tabella, una vista è costituita da un set di colonne e righe di dati denominate. A meno che non sia indicizzata, una vista non esiste come set archiviato di valori di dati in un database. Le righe e le colonne di dati provengono da tabelle a cui fa riferimento la query che definisce la vista e sono prodotte dinamicamente quando si fa riferimento alla vista.

Una vista esegue operazioni di filtro sulle tabelle sottostanti a cui fa riferimento. La query che definisce la vista può provenire da una o più tabelle o da altre viste del database corrente o di altri database. È inoltre possibile utilizzate le query distribuite per definire viste che utilizzano dati provenienti da più origini eterogenee. Questa caratteristica è utile, ad esempio, se si desidera combinare dati strutturati in modo simile e provenienti da server diversi, ognuno dei quali archivia i dati di una diversa area dell'organizzazione.

Tramite le viste è possibile analizzare, semplificare e personalizzare la visualizzazione del database per ogni singolo utente. Le viste rappresentano un meccanismo di sicurezza grazie al quale è possibile consentire agli utenti di accedere ai dati tramite una vista, senza concedere loro le autorizzazioni di accesso alle tabelle di base sottostanti. Le viste consentono di fornire un'interfaccia compatibile con le versioni precedenti tramite la quale è possibile emulare una tabella precedente il cui schema è stato modificato oppure possono essere utilizzate per migliorare le prestazioni e per partizionare i dati quando si copiano dati in e da SQL Server.

Tipi di viste

Oltre alle viste di base definite dall'utente, in SQL Server sono disponibili i seguenti tipi di viste utilizzate per scopi specifici in un database.

  • Viste indicizzate
    Una vista indicizzata è una vista precedentemente materializzata. Ciò significa che è stata calcolata la definizione della vista e che i dati risultanti sono stati archiviati come una tabella. Per indicizzare una vista, è necessario creare su di essa un indice cluster univoco. Le viste indicizzate possono migliorare notevolmente le prestazioni di alcuni tipi di query. e risultano ideali per le query che prevedono l'aggregazione di molte righe. Non sono invece adatte per i set di dati sottostanti che vengono aggiornati di frequente.

  • Viste partizionate
    Una vista partizionata unisce i dati partizionati orizzontalmente di un set di tabelle membro in uno o più server. In tal modo i dati risulteranno appartenenti a un'unica tabella. Una vista che unisce tabelle membro nella stessa istanza di SQL Server costituisce una vista partizionata locale.

  • Viste di sistema
    Le visualizzazioni di sistema espongono metadati del catalogo. È possibile utilizzare visualizzazioni di sistema per ottenere informazioni sull'istanza di SQL Server o gli oggetti definiti nell'istanza. Ad esempio, è possibile eseguire una query sulla vista del catalogo sys.databases per ottenere informazioni sui database definiti dall'utente disponibili nell'istanza. Per ulteriori informazioni, vedere Viste di sistema (Transact-SQL)

Attività comuni delle viste

Nella tabella riportata di seguito vengono forniti i collegamenti ad attività comuni associate alla creazione o alla modifica di una vista.

Attività relative alle viste

Argomento

Viene descritto come creare una vista.

Creare viste

Viene descritto come creare una vista indicizzata.

Creazione di viste indicizzate

Viene descritto come modificare la definizione di una vista.

Modifica di viste

Viene descritto come modificare dati tramite una vista.

Modificare i dati tramite una vista

Viene descritto come eliminare una vista.

Eliminare viste

Viene descritto come ottenere informazioni su una vista quale la definizione della vista.

Ottenere informazioni su una vista

Viene descritto come rinominare una vista.

Rinominare viste

Vedere anche

Riferimento

CREATE VIEW (Transact-SQL)

Concetti

Creazione di viste