Oracle
 sql >> Database >  >> RDS >> Oracle

Che cos'è una vista in Oracle?

Una vista in Oracle e in altri sistemi di database è semplicemente la rappresentazione di un'istruzione SQL che viene archiviata in memoria in modo che possa essere facilmente riutilizzata. Ad esempio, se emettiamo frequentemente la seguente query

SELECT customerid, customername FROM customers WHERE countryid='US';

Per creare una vista, usa il comando CREA VISTA come si vede in questo esempio

CREATE VIEW view_uscustomers
AS
SELECT customerid, customername FROM customers WHERE countryid='US';

Questo comando crea una nuova vista chiamata view_uscustomers. Si noti che questo comando non comporta la memorizzazione di alcun elemento nel database, ad eccezione di una voce del dizionario di dati che definisce questa vista. Ciò significa che ogni volta che si interroga questa vista, Oracle deve uscire ed eseguire la vista e interrogare i dati del database. Possiamo interrogare la vista in questo modo:

SELECT * FROM view_uscustomers WHERE customerid BETWEEN 100 AND 200;

E Oracle trasformerà la query in questo:

SELECT * 
FROM (select customerid, customername from customers WHERE countryid='US') 
WHERE customerid BETWEEN 100 AND 200

Vantaggi dell'utilizzo di Visualizzazioni

  • Comunita' del codice utilizzato. Poiché una vista si basa su un insieme comune di SQL, ciò significa che quando viene chiamata è meno probabile che richieda l'analisi.
  • Sicurezza. Le visualizzazioni sono state a lungo utilizzate per nascondere le tabelle che contengono effettivamente i dati che stai interrogando. Inoltre, le visualizzazioni possono essere utilizzate per limitare le colonne a cui un determinato utente ha accesso.
  • Predicare la spinta

Puoi trovare argomenti avanzati in questo articolo su "Come creare e gestire viste in Oracle".