Este artigo foi traduzido manualmente. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original.
Tradução
Original
Informações
O tópico solicitado está sendo mostrado abaixo. No entanto, este tópico não está incluído nesta biblioteca.
Este tópico ainda não foi avaliado como - Avalie este tópico

sp_refreshview (Transact-SQL)

Atualiza os metadados para a exibição não associada a esquema. Os metadados persistentes de uma exibição podem tornar-se desatualizados devido a alterações em objetos subjacentes dos quais a exibição depende.

Ícone de vínculo de tópico Convenções de sintaxe Transact-SQL

sp_refreshview [ @viewname = ] 'viewname'
[ @viewname= ] 'viewname'

É o nome da exibição. viewname é nvarchar, sem padrão. viewname pode ser um identificador de várias partes, mas pode se referir apenas a exibições no banco de dados atual.

0 (êxito) ou um número diferente de zero (falha)

Se uma exibição não for criada com associação de esquema, sp_refreshview deve ser executado quando são feitas mudanças nos objetos subjacentes que afetam a definição da exibição. Caso contrário, a exibição poderá gerar resultados inesperados quando consultada.

Requer permissão ALTER na exibição e permissão REFERENCES em tipos definidos pelo usuário de common language runtime (CLR) e coleções de esquema XML referenciadas por colunas de exibição.

A.Atualizando os metadados de uma exibição

O exemplo a seguir atualiza os metadados da exibição Sales.vIndividualCustomer.

USE AdventureWorks2012;
GO
EXECUTE sp_refreshview N'Sales.vIndividualCustomer';

B.Criando um script que atualiza todas as exibições com dependências de um objeto alterado

Considera que a tabela Person.Person foi alterada de certo modo que afeta a definição de qualquer exibição criada a partir dela. O exemplo a seguir cria um script que atualiza os metadados de todas as exibições com dependência da tabela Person.Person.

USE AdventureWorks2012;
GO
SELECT DISTINCT 'EXEC sp_refreshview ''' + name + '''' 
FROM sys.objects AS so 
INNER JOIN sys.sql_expression_dependencies AS sed 
    ON so.object_id = sed.referencing_id 
WHERE so.type = 'V' AND sed.referenced_id = OBJECT_ID('Person.Person');
Isso foi útil para você?
(1500 caracteres restantes)

Contribuições da comunidade

© 2013 Microsoft. Todos os direitos reservados.