Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
Endpoint de SQL Analytics no Microsoft Fabric
Armazém no Microsoft Fabric
Banco de Dados SQL no Microsoft Fabric
O sys.sp_refreshview procedimento armazenado do sistema atualiza os metadados para a visualização não limitada ao esquema especificada. Os metadados persistentes de uma exibição podem tornar-se desatualizados devido a alterações em objetos subjacentes dos quais a exibição depende.
Convenções de sintaxe de Transact-SQL
Sintaxe
sys.sp_refreshview [ @viewname = ] N'viewname'
[ ; ]
Argumentos
[ @viewname = ] N'nome da visualização'
O nome da exibição. @viewname é nvarchar, sem padrão. @viewname pode ser um identificador de várias partes, mas só pode se referir a exibições no banco de dados atual.
Valores do código de retorno
0 (êxito) ou um número diferente de zero (falha)
Comentários
Se você não criar uma visualização com SCHEMABINDING, execute sp_refreshview quando fizer alterações nos objetos subjacentes à visualização que afetam a definição da visualização. Caso contrário, a visualização pode retornar resultados inesperados quando você a consulta.
Permissões
Requer ALTER permissão para a visualização, e REFERENCES permissão para tipos definidos pelo usuário e coleções de esquemas XML em tempo de execução de linguagem comum (CLR) que as colunas da visualização referenciam.
Exemplos
Os exemplos de código neste artigo usam o AdventureWorks2025, AdventureWorksDW2025, ou AdventureWorksLT2025 banco de dados de exemplo, que você pode baixar do repositório GitHub do Azure Data SQL Samples Repository.
R. Atualizar os metadados de uma exibição
O exemplo a seguir atualiza os metadados da exibição Sales.vIndividualCustomer.
USE AdventureWorks2025;
GO
EXECUTE sp_refreshview N'Sales.vIndividualCustomer';
B. Criar um script que atualiza todas as exibições que têm dependências em um objeto alterado
Suponha que a tabela Person.Person foi alterada de uma forma que afeta a definição de qualquer opinião sobre ela. O exemplo a seguir cria um script que atualiza os metadados de todas as visualizações que dependem da tabela Person.Person.
USE AdventureWorks2025;
GO
SELECT DISTINCT 'EXECUTE 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');