ALTER VIEW e ALTER VIEWS ON
Usate il comando ALTER VIEW per cambiare il nome o il proprietario di una vista o per aggiornare o sospendere una vista materializzata. Usare il comando ALTER VIEWS ON per aggiornare o sospendere tutte le viste materializzate per una tabella di base. Le viste sono di sola lettura. Il sistema non consente di inserire, aggiornare o eliminare una vista.
Sintassi
Per modificare una vista:
ALTER VIEW <viewname> [ RENAME TO <newname> ]
[ OWNER TO <newowner> ] [SET PRIVILEGES TO <view> ]Per modificare una vista materializzata:
ALTER VIEW <viewname> MATERIALIZE {REFRESH|SUSPEND}Per modificare tutte le viste materializzate di una tabella di base:
ALTER VIEWS ON <base_table> MATERIALIZE {REFRESH|SUSPEND}Input
Il comando ALTER VIEW riceve i seguenti input:
| Immissione | Descrizione |
|---|---|
| <nome vista> | Il nome della vista. |
| <nuovo proprietario> | Il nuovo proprietario del panorama. |
| <nuovo nome> | Il nuovo nome della vista. |
| IMPOSTARE I PRIVILEGI SU <visualizza> | Copiare i privilegi da una vista a un'altra. |
| MATERIALIZZARE | La vista specificata è una vista materializzata:
|
| VISUALIZZAZIONI SU <base_table> | Aggiorna o sospende tutte le viste materializzate associate alla tabella di base. |
Emissione
Il comando ALTER VIEW ha il seguente risultato:
| Emissione | Descrizione |
|---|---|
| Modifica vista | Il comando è stato eseguito correttamente. |
Privilegi
Il comando ALTER VIEW richiede i seguenti privilegi:
- Per le visualizzazioni
- È necessario essere l'utente admin, il proprietario della vista, il proprietario del database o dello schema in cui è definita la vista, oppure l'account deve avere il privilegio Alter per la vista o per la classe di oggetti View. Se si modifica il proprietario della vista, è necessario disporre dell'accesso List all'account utente.
- Per le viste materializzate
- È necessario essere l'utente amministratore o il proprietario del database o dello schema in cui è definita la vista. Per tutti gli altri utenti, la tabella seguente elenca i privilegi richiesti.
Tabella 3. Privilegi della vista materializzata Attività Privilegio Creare una vista SPM L'account deve avere il privilegio di amministrazione Create Materialized View. Modificare una vista SPM L'account deve avere il privilegio di modifica dell'oggetto per una vista specifica o per la classe di oggetti Vista. Eliminare una vista SPM L'account deve possedere il privilegio di oggetto Drop per una vista specifica o per la classe di oggetti View. Selezionare da una vista SPM L'account deve disporre del privilegio Seleziona oggetto per una vista specifica o per la classe di oggetti Vista. Modificare le viste di una tabella L'account deve disporre del privilegio Inserisci oggetto per una tabella specifica o per la classe di oggetti Tabella. Elenco delle visualizzazioni SPM L'account deve avere il privilegio dell'oggetto Elenco per una vista specifica o la classe di oggetti Vista.
Utilizzo
Di seguito sono riportati alcuni esempi di utilizzo.
- Rinominare una vista:
MYDB.SCH1(USER)=> ALTER VIEW emp RENAME TO employees - Cambiare il proprietario di una vista:
MYDB.SCH1(USER)=> ALTER VIEW emp OWNER TO john