Sono delle "tabelle virtuali" con un nome
Non é memorizzata: é una selezione di una tabella
Posso creare delle "viste materializzate": ovvero copio delle viste in una tabella, ma poi devo gestirne l'allineamento
CREATE VIEW
CREATE VIEW
NomeVista (Campo1, Campo2) AS SELECT ... [WITH [LOCAL|CASCADED] CHECK OPTION]
Può servire anche per limitare l'accesso a certi dati da parte di certi utenti (permessi solo sulla vista e non sulla tabella)
Una View può accedere ad un'altra View in cascata
Se non metto l'elenco degli attributi verrà usato il nome posizionale degli attributi della SELECT
AGGIORNABILITA':
In View con JOIN potrei avere Update problematici
In genere posso aggiornare solo viste definite su una sola tabella (e dovrebbe essere specificata anche la chiave primaria)
Alcune implementazioni di Database potrebbero essere più permissivi
La CHECK OPTION:
Se specificata posso aggiornare la vista solo se le righe aggiornate faranno ancora parte della vista
LOCAL: Controlla solo per la vista attuale
CASCADED (default): Controlla anche per le eventuali viste che compongono la vista corrente
Nessun commento:
Posta un commento