Compartilhar via


Modificar dados por meio de uma visualização

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Banco de dados SQL no Microsoft Fabric

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

Limitações

Consulte a seção 'Modos de Exibição Atualizáveis' em CREATE VIEW.

Permissões

Requer permissões UPDATE, INSERT ou DELETE na tabela de destino, dependendo da ação que está sendo executada.

Utilize o SQL Server Management Studio

Modificar dados de tabela por meio de 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. Talvez seja necessário modificar a SELECT instrução 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.

    Você não poderá excluir uma linha se a exibição fizer referência a 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.

    Você não poderá inserir uma linha se a exibição fizer referência a mais de uma tabela base.

Usar Transact-SQL

Atualizar dados da tabela por meio de 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, selecione Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione 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 AdventureWorks2022;
    GO
    
    UPDATE HumanResources.vEmployeeDepartmentHistory
        SET StartDate = '20110203',
            EndDate   = GETDATE()
    WHERE LastName = N'Smith'
          AND FirstName = 'Samantha';
    GO
    

Para obter mais informações, consulte UPDATE.

Inserir dados de tabela por meio de 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, selecione Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e selecione Executar. O exemplo insere uma nova linha na tabela base HumanResources.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 AdventureWorks2022;
    GO
    
    INSERT INTO HumanResources.vEmployeeDepartmentHistory (Department, GroupName)
    VALUES ('MyDepartment', 'MyGroup');
    GO
    

Para obter mais informações, consulte INSERT.