Condividi tramite


Modifica di viste

Dopo aver definito una vista, è possibile modificarne la definizione in SQL Server 2012, senza eliminare e ricreare la vista, utilizzando SQL Server Management Studio o Transact-SQL.

Contenuto dell'argomento

  • Prima di iniziare:

    Limitazioni e restrizioni

    Sicurezza

  • Per modificare una vista tramite:

    SQL Server Management Studio

    Transact-SQL

Prima di iniziare

Limitazioni e restrizioni

  • La modifica di una vista non influisce sugli oggetti dipendenti, ad esempio stored procedure o trigger, a meno che la definizione della vista non venga modificata in modo che l'oggetto dipendente non sia più valido.

  • Se si modifica una vista in uso con ALTER VIEW, nel Motore di database viene accettato un blocco di schema esclusivo sulla vista. Quando viene concesso il blocco e non esistono utenti attivi della vista, Motore di database elimina tutte le copie della vista dalla cache delle procedure. I piani esistenti che fanno riferimento alla vista rimangono nella cache, ma vengono ricompilati per chiamate successive.

  • È possibile utilizzare ALTER VIEW per viste indicizzate. Tuttavia, in questo caso vengono eliminati tutti gli indici nella vista, senza eccezioni.

Sicurezza

Autorizzazioni

Per eseguire ALTER VIEW, è richiesta come minimo l'autorizzazione ALTER per OBJECT.

Icona freccia utilizzata con il collegamento Torna all'inizio[Top]

Utilizzo di SQL Server Management Studio

Per modificare una vista

  1. In Esplora oggetti fare clic sul segno più accanto al database in cui si trova la vista, quindi fare di nuovo clic sul segno più accanto alla cartella Viste.

  2. Fare clic con il pulsante destro del mouse sulla vista che si desidera modificare, quindi scegliere Progettazione.

  3. Nel riquadro del diagramma di Progettazione query, apportare le modifiche alla vista con uno dei metodi seguenti:

    1. Selezionare o deselezionare le caselle di controllo di qualsiasi elemento che si desidera aggiungere o rimuovere.

    2. Fare clic con il pulsante destro del mouse all'interno del riquadro del diagramma, selezionare Aggiungi tabella, quindi scegliere le ulteriori colonne che si desidera aggiungere alla vista nella finestra di dialogo Aggiungi tabella.

    3. Fare clic con il pulsante destro del mouse sulla barra del titolo della tabella che si desidera rimuovere e selezionare Rimuovi.

  4. Nel menu File scegliere Salva view name.

Icona freccia utilizzata con il collegamento Torna all'inizio[Top]

Utilizzo di Transact-SQL

Per modificare una vista

  1. In Esplora oggetti connettersi a un'istanza del Motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. Nell'esempio si crea innanzitutto una vista che, successivamente, viene modificata tramite ALTER VIEW. Una clausola WHERE viene aggiunta alla definizione della vista.

    USE AdventureWorks2012 ;
    GO
    -- Create a view.
    CREATE VIEW HumanResources.EmployeeHireDate
    AS
    SELECT p.FirstName, p.LastName, e.HireDate
    FROM HumanResources.Employee AS e JOIN Person.Person AS  p
    ON e.BusinessEntityID = p.BusinessEntityID ; 
    
    -- Modify the view by adding a WHERE clause to limit the rows returned.
    ALTER VIEW HumanResources.EmployeeHireDate
    AS
    SELECT p.FirstName, p.LastName, e.HireDate
    FROM HumanResources.Employee AS e JOIN Person.Person AS  p
    ON e.BusinessEntityID = p.BusinessEntityID
    WHERE HireDate < CONVERT(DATETIME,'20020101',101) ; 
    GO
    

Per ulteriori informazioni, vedere ALTER VIEW (Transact-SQL).

Icona freccia utilizzata con il collegamento Torna all'inizio[Top]