Confronto tra query e visualizzazioni
Poiché le query e le visualizzazioni presentano molte analogie, è facile trascurarne le differenze.In questa sezione vengono brevemente descritte le differenze esistenti.
Archiviazione A differenza delle query, le visualizzazioni vengono archiviate come parte della progettazione del database.Quando si progetta un database, è possibile includere le visualizzazioni nella progettazione per i seguenti motivi:
Alcuni sottoinsiemi di dati interessano più utenti. Ogni visualizzazione viene archiviata nel database e costituisce pertanto un particolare sottoinsieme di dati che può essere utilizzato da qualsiasi utente del database.
**Le visualizzazioni consentono di nascondere le tabelle di base. **È possibile impedire qualsiasi forma di accesso alle tabelle del database e richiedere agli utenti di modificare i dati solo tramite le visualizzazioni.Questa impostazione consente di proteggere utenti e programmi applicativi da determinate modifiche del database.È possibile, ad esempio, creare una visualizzazione denominata "Vendite del mese corrente" e modificare la definizione della visualizzazione il primo giorno di ogni mese.Senza questa visualizzazione, gli utenti dovrebbero riscrivere ogni mese le query per selezionare le righe delle vendite del mese corretto.
Aggiornamento dei risultati Le limitazioni relative all'aggiornamento dei gruppi di risultati sono diverse per le visualizzazioni e per le query.Per ulteriori informazioni, vedere Regole per l'aggiornamento dei risultati.
Ordinamento dei risultati (solo Microsoft SQL Server) Mentre è possibile ordinare i risultati di qualsiasi query, una visualizzazione può essere ordinata solo se include la clausola TOP.Per ulteriori informazioni sulla clausola TOP, vedere la documentazione di SQL Server.Per ulteriori informazioni sull'ordinamento, vedere Ordinamento e raggruppamento dei risultati delle query.
Generazione del piano di esecuzione della query Un piano di esecuzione della query è una strategia interna in base alla quale un server database tenta di creare rapidamente gruppi di risultati.Un server database può stabilire un piano di esecuzione della query per una visualizzazione non appena la visualizzazione viene salvata.Nel caso di una query, tuttavia, un server database non è in grado di definire un piano prima dell'effettiva esecuzione della query, ovvero fino a quando l'utente non richiede esplicitamente il gruppo di risultati.
Parametrizzazione È possibile creare parametri per una query, ma non per una visualizzazione.Per ulteriori informazioni sulle query con parametri, vedere Esecuzione di query mediante l'utilizzo di parametri.