Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Endpoint SQL analytics dans Microsoft Fabric
Entrepôt dans Microsoft Fabric
Base de données SQL dans Microsoft Fabric
La sys.sp_refreshview procédure stockée du système met à jour les métadonnées pour la vue spécifiée non liée au schéma. Les métadonnées persistantes d'une vue peuvent devenir obsolètes en raison des modifications des objets sous-jacents dont dépend l'affichage.
Conventions de la syntaxe Transact-SQL
Syntaxe
sys.sp_refreshview [ @viewname = ] N'viewname'
[ ; ]
Les arguments
[ @viewname = ] N’nom-vue'
Nom de la vue. @viewname est nvarchar, sans valeur par défaut. @viewname peut être un identificateur à plusieurs parties, mais ne peut faire référence qu’aux vues de la base de données active.
Valeurs des codes de retour
0 (réussite) ou un nombre différent de zéro (échec).
Notes
Si vous ne créez pas de vue avec SCHEMABINDING, exécutez sp_refreshview lorsque vous effectuez des modifications aux objets sous-jacents à la vue qui affectent la définition de la vue. Sinon, la vue peut donner des résultats inattendus lors de la requête.
autorisations
Nécessite ALTER une autorisation sur la vue, ainsi REFERENCES que sur les types définis par l’utilisateur par l’utilisateur (Common Language Runtime) (CLR) ainsi que sur les collections de schémas XML que les colonnes de vue référencent.
Exemples
Les exemples de code de cet article utilisent la AdventureWorks2025base de données , AdventureWorksDW2025, ou AdventureWorksLT2025 exemple de base de données, que vous pouvez télécharger depuis le dépôt GitHub Azure Data SQL Samples Repository.
R. Mettre à jour les métadonnées d’une vue
L'exemple suivant actualise les métadonnées de la vue Sales.vIndividualCustomer.
USE AdventureWorks2025;
GO
EXECUTE sp_refreshview N'Sales.vIndividualCustomer';
B. Créer un script qui met à jour toutes les vues qui ont des dépendances sur un objet modifié
Supposons que la table Person.Person ait été modifiée d’une manière qui influence la définition de toute opinion qui y est sujet. L’exemple suivant crée un script qui rafraîchit les métadonnées de toutes les vues qui dépendent de la table 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');