sp_refreshview (Transact-SQL)sp_refreshview (Transact-SQL)

S’APPLIQUE À : ouiSQL Server (à partir de 2008) nonAzure SQL Database nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server (starting with 2008) noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

Met à jour les métadonnées de la vue non liée au schéma spécifiée.Updates the metadata for the specified non-schema-bound view. 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.Persistent metadata for a view can become outdated because of changes to the underlying objects upon which the view depends.

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax


sp_refreshview [ @viewname = ] 'viewname'   

ArgumentsArguments

[ @viewname= ] 'viewname'[ @viewname= ] 'viewname'
Nom de la vue.Is the name of the view. ViewName est nvarchar, sans valeur par défaut.viewname is nvarchar, with no default. ViewName peut être un identificateur multipartie, mais ne peut faire référence à des vues de la base de données actuelle.viewname can be a multipart identifier, but can only refer to views in the current database.

Valeurs des codes de retourReturn Code Values

0 (réussite) ou un nombre différent de zéro (échec)0 (success) or a nonzero number (failure)

NotesRemarks

Si aucune vue n’est pas créée avec schemabinding, sp_refreshview doit être exécutée lorsque des modifications sont apportées aux objets sous-jacents de la vue qui affectent la définition de la vue.If a view is not created with schemabinding, sp_refreshview should be run when changes are made to the objects underlying the view that affect the definition of the view. Autrement, la vue risque de produire des résultats imprévisibles en cas d'interrogation.Otherwise, the view might produce unexpected results when it is queried.

PermissionsPermissions

Requiert l'autorisation ALTER sur la vue ainsi que l'autorisation REFERENCES sur les types CLR (Common Language Runtime) définis par l'utilisateur et sur les collections de schémas XML référencés par les colonnes de la vue.Requires ALTER permission on the view and REFERENCES permission on common language runtime (CLR) user-defined types and XML schema collections that are referenced by the view columns.

ExemplesExamples

A.A. Mise à jour des métadonnées d'une vueUpdating the metadata of a view

L'exemple suivant actualise les métadonnées de la vue Sales.vIndividualCustomer.The following example refreshes the metadata for the view Sales.vIndividualCustomer.

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

B.B. Création d'un script qui met à jour toutes les vues ayant des dépendances envers un objet modifiéCreating a script that updates all views that have dependencies on a changed object

Supposez que la table Person.Person a été modifiée d'une manière qui affecte la définition de toute vue créée dessus.Assume that the table Person.Person was changed in a way that would affect the definition of any views that are created on it. L'exemple suivant crée un script qui actualise les métadonnées de toutes les vues qui ont une dépendance envers une table Person.Person.The following example creates a script that refreshes the metadata for all views that have a dependency on table 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');  

Voir aussiSee Also

Procédures stockées du moteur de base de données (Transact-SQL) Database Engine Stored Procedures (Transact-SQL)
Procédures stockées système (Transact-SQL) System Stored Procedures (Transact-SQL)
sys.sql_expression_dependencies (Transact-SQL) sys.sql_expression_dependencies (Transact-SQL)
sp_refreshsqlmodule (Transact-SQL)sp_refreshsqlmodule (Transact-SQL)