Modificar exibições

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)

Depois de definir uma exibição, você pode modificar sua definição no Mecanismo de Banco de Dados do SQL Server sem removê-la e recriá-la usando o SQL Server Management Studio ou o Transact-SQL.

Limitações e restrições

  • A modificação de uma exibição não afeta nenhum objeto dependente, como procedimentos armazenados ou gatilhos, a menos que a definição da exibição seja alterada de tal forma que o objeto dependente não seja mais válido.

  • Se uma exibição usada atualmente for modificada com ALTER VIEW, o Mecanismo de Banco de Dados obterá um bloqueio de esquema exclusivo na exibição. Quando o bloqueio for concedido e não houver usuários ativos da exibição, o Mecanismo de Banco de Dados excluirá todas as cópias da exibição do cache de procedimento. Os planos existentes que façam referência à exibição permanecerão no cache, mas serão recompilados quando invocados.

  • ALTER VIEW pode ser aplicado a exibições indexadas; entretanto, ALTER VIEW descarta incondicionalmente todos os índices da exibição.

Permissões

Para executar ALTER VIEW, é necessária, no mínimo, permissão ALTER em OBJECT.

Usar o SQL Server Management Studio

  1. No Pesquisador de Objetos, selecione o sinal de adição ao lado do banco de dados em que a exibição está localizada e selecione o sinal de adição ao lado da pasta Exibições.

  2. Clique com o botão direito do mouse na exibição a ser modificada e selecione Design.

  3. No painel de diagrama do designer de consulta, modifique a exibição de uma ou mais das seguintes formas:

    1. Marque ou desmarque as caixas de seleção de qualquer elemento que você deseja adicionar ou remover.

    2. Clique com o botão direito do mouse no painel de diagrama, selecione Adicionar Tabela... e selecione as colunas adicionais que deseja adicionar à exibição na caixa de diálogo Adicionar Tabela.

    3. Clique com o botão direito do mouse na barra de título da tabela que deseja remover e selecione Remove.

  4. No menu Arquivo, selecione Salvar nome da exibição.

Usar o Transact-SQL

  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 cria uma exibição primeiro e depois a modifica usando ALTER VIEW. Uma cláusula WHERE é adicionada à definição da exibição.

    USE AdventureWorks2022;
    GO
    
    -- Create a view
    CREATE VIEW HumanResources.EmployeeHireDate
    AS
    SELECT p.FirstName,
         p.LastName,
         e.HireDate
    FROM HumanResources.Employee AS e
    INNER 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
    INNER JOIN Person.Person AS p
         ON e.BusinessEntityID = p.BusinessEntityID
    WHERE HireDate < CONVERT(DATETIME, '20020101', 101);
    GO
    

Próximas etapas