Modificar dados por meio de uma exibição

Aplica-se a: simSQL Server (todas as versões compatíveis) SimBanco de Dados SQL do Azure SimInstância Gerenciada do Azure SQL simAzure Synapse Analytics simParallel Data Warehouse

Você pode modificar os dados de uma tabela base subjacente no SQL Server usando o SQL Server Management Studio ou o Transact-SQL.

Antes de começar

Limitações e restrições

Permissões

Exige a permissão UPDATE, INSERT ou DELETE na tabela de destino, dependendo da ação em execução.

Usando o SQL Server Management Studio

Para modificar os dados da tabela por uma exibição

  1. No Pesquisador de Objetos, expanda o banco de dados que contém a exibição e expanda Exibições.

  2. Clique com o botão direito do mouse na exibição e selecione Editar 200 Linhas Superiores.

  3. Você pode precisar modificar a instrução SELECT no painel SQL para retornar as linhas a serem modificadas.

  4. No painel Resultados , localize a linha a ser alterada ou excluída. Para excluir a linha, clique com o botão direito do mouse na linha e selecione Excluir. Para alterar dados em uma ou mais colunas, modifique os dados na coluna.

    IMPORTANTE: Você não poderá excluir uma linha se a exibição referenciar mais de uma tabela base. Você pode atualizar somente colunas que pertencem a uma única tabela base.

  5. Para inserir uma linha, role até o fim das linhas e insira os novos valores.

    IMPORTANTE: Você não poderá inserir uma linha se a exibição referenciar mais de uma tabela base.

Usando o Transact-SQL

Para atualizar os dados da tabela por uma exibição

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. Este exemplo altera o valor nas colunas StartDate e EndDate para um funcionário específico referenciando colunas na exibição HumanResources.vEmployeeDepartmentHistory. Esta exibição retorna valores de duas tabelas. Esta instrução tem sucesso porque as colunas modificadas são apenas de uma das tabelas base.

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

Para obter mais informações, consulte UPDATE (Transact-SQL).

Para inserir os dados da tabela por uma exibição

  1. No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. O exemplo insere uma nova linha na tabela base HumanResouces.Department especificando as colunas pertinentes da exibição HumanResources.vEmployeeDepartmentHistory. A instrução tem sucesso porque somente as colunas de uma tabela base são especificadas e as outras colunas na tabela base têm valores padrão.

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

Para obter mais informações, consulte INSERT (Transact-SQL).