Modificar dados por meio de uma exibição
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics Analytics Platform System (PDW)
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
- Consulte a seção "Exibições atualizáveis" em CREATE VIEW (Transact-SQL).
Permissões
Exige a permissão UPDATE, INSERT ou DELETE na tabela de destino, dependendo da ação em execução.
Como usar o SQL Server Management Studio.
Para modificar os dados da tabela por uma exibição
No Pesquisador de Objetos, expanda o banco de dados que contém a exibição e expanda Exibições.
Clique com o botão direito do mouse na exibição e selecione Editar 200 Linhas Superiores.
Você pode precisar modificar a instrução SELECT no painel SQL para retornar as linhas a serem modificadas.
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.
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
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. Este exemplo altera o valor nas colunas
StartDate
eEndDate
para um funcionário específico referenciando colunas na exibiçãoHumanResources.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 (Transact-SQL).
Para inserir os dados da tabela por uma exibição
No Pesquisador de Objetos, conecte-se a uma instância do Mecanismo de Banco de Dados.
Na barra Padrão, clique em Nova Consulta.
Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. O exemplo insere uma nova linha na tabela base
HumanResources.Department
especificando as colunas pertinentes da exibiçãoHumanResources.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 saber mais, confira INSERT (Transact-SQL).