Modificare i dati tramite una vista

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di AzureAzure Synapse AnalyticsPiattaforma di strumenti analitici (PDW)

È possibile modificare i dati di una colonna in SQL Server usando SQL Server Management Studio o Transact-SQL.

Prima di iniziare

Limitazioni e restrizioni

Autorizzazioni

È richiesta l'autorizzazione UPDATE, INSERT o DELETE per la tabella di destinazione, a seconda dell'azione eseguita.

Utilizzo di SQL Server Management Studio

Per modificare i dati della tabella tramite una vista

  1. In Esplora oggettiespandere il database contenente la vista, quindi espandere Viste.

  2. Fare clic con il pulsante destro del mouse sulla vista e selezionare Modifica le prime 200 righe.

  3. È possibile che sia necessario modificare l'istruzione SELECT nel riquadro SQL affinché vengano restituite le righe da modificare.

  4. Nel riquadro dei risultati individuare la riga da modificare o eliminare. Per eliminare la riga, fare clic con il pulsante destro del mouse sulla riga e scegliere Elimina. Per modificare i dati in una o più colonne, modificare i dati nella colonna.

    Importante

    Non è possibile eliminare una riga se la vista fa riferimento a più di una tabella di base. È possibile aggiornare solo le colonne che appartengono a una singola tabella di base.

  5. Per inserire una riga, scorrere fino alla fine delle righe e inserire i nuovi valori.

    Importante

    Non è possibile inserire una riga se la vista fa riferimento a più di una tabella di base.

Utilizzo di Transact-SQL

Per aggiornare i dati della tabella tramite 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. In questo esempio si modifica il valore nelle colonne StartDate e EndDate per un dipendente specifico facendo riferimento alle colonne nella vista HumanResources.vEmployeeDepartmentHistory. Tramite questa vista vengono restituiti valori da due tabelle. Questa istruzione viene completata perché le colonne modificate provengono solo da una delle tabelle di base.

    USE AdventureWorks2022;   
    GO  
    UPDATE HumanResources.vEmployeeDepartmentHistory  
    SET StartDate = '20110203', EndDate = GETDATE()   
    WHERE LastName = N'Smith' AND FirstName = 'Samantha';   
    GO  
    

Per altre informazioni, vedere UPDATE (Transact-SQL).

Per inserire i dati della tabella tramite 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 inserisce una nuova riga nella tabella di base HumanResouces.Department specificando le relative colonne dalla vista HumanResources.vEmployeeDepartmentHistory. L'istruzione viene completata perché sono specificate solo colonne di una singola tabella di base mentre le altre colonne in questa tabella dispongono di valori predefiniti.

    USE AdventureWorks2022;  
    GO  
    INSERT INTO HumanResources.vEmployeeDepartmentHistory (Department, GroupName)   
    VALUES ('MyDepartment', 'MyGroup');   
    GO  
    

Per altre informazioni, vedere INSERT (Transact-SQL).