sp_article_validation (Transact-SQL)
Lance une requête de validation des données pour l'article spécifié. Cette procédure stockée est exécutée sur la base de données de publication du serveur de publication ou sur la base de données d'abonnement de l'Abonné.
Syntaxe
sp_article_validation [ @publication = ] 'publication'
[ , [ @article = ] 'article' ]
[ , [ @rowcount_only = ] type_of_check_requested ]
[ , [ @full_or_fast = ] full_or_fast ]
[ , [ @shutdown_agent = ] shutdown_agent ]
[ , [ @subscription_level = ] subscription_level ]
[ , [ @reserved = ] reserved ]
[ , [ @publisher = ] 'publisher' ]
Arguments
[ @publication=] 'publication'
Nom de la publication dans laquelle existe l'article. L'argument publication est de type sysname et n'a pas de valeur par défaut.[ @article=] 'article'
Nom de l'article à valider. article est de type sysname, sans valeur par défaut.[ @rowcount_only=] type_of_check_requested
Spécifie si seul le décompte de lignes est retourné pour la table. type_of_check_requested est de type smallint, avec 1 comme valeur par défaut.Si la valeur est 0, exécute un décompte de lignes et une somme de contrôle Microsoft SQL Server compatible avec la version 7.0.
Si la valeur est 1, vérifiez uniquement le nombre de lignes.
Si la valeur est 2, effectue un décompte de lignes et une somme de contrôle binaire.
[ @full_or_fast=] full_or_fast
Méthode utilisée pour calculer le nombre de lignes. full_or_fast est de type tinyint et peut prendre l'une des valeurs suivantes.Valeur
Description
0
Effectue un comptage total à l'aide de COUNT(*).
1
Effectue un comptage rapide à partir de sysindexes.rows. Le décompte de lignes est plus rapide dans sysindexes que dans la table. Cependant, comme sysindexes n'est pas mis à jour immédiatement, le nombre de lignes peut être inexact.
2 (valeur par défaut)
Exécute un comptage rapide conditionnel en essayant d'abord la méthode rapide. Si la méthode rapide affiche des différences, revient à la méthode totale. Si expected_rowcount a pour valeur NULL et que la procédure stockée est en cours d'utilisation pour l'obtention de la valeur, une fonction COUNT(*) totale est toujours utilisée.
[ @shutdown_agent=] shutdown_agent
Spécifie si l'Agent de distribution doit être fermé immédiatement après l'achèvement de la validation. shutdown_agent est de type bit, avec 0 comme valeur par défaut. Si la valeur est 0, l'Agent de distribution ne se ferme pas. Si la valeur est 1, l'Agent de distribution s'arrête après la validation de l'article.[ @subscription_level=] subscription_level
Spécifie si la validation est récupérée par un ensemble d'abonnés. subscription_level est de type bit, avec 0 comme valeur par défaut. Si la valeur est 0, la validation est appliquée à tous les Abonnés. Si la valeur est 1, la validation est uniquement appliquée à un sous-ensemble des abonnés spécifiés par des appels de sp_marksubscriptionvalidation dans la transaction ouverte en cours.[ @reserved=] reserved
Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.[ @publisher= ] 'publisher'
Spécifie un serveur de publication non-Microsoft SQL Server. publisher est de type sysname. Sa valeur par défaut est NULL.Notes
Le serveur de publication ne doit pas être utilisé lors de la demande de validation sur un serveur de publication SQL Server.
Valeurs du code de retour
0 (succès) ou 1 (échec)
Notes
sp_article_validation est utilisé dans la réplication transactionnelle.
sp_article_validation provoque le rassemblement des informations de validation sur l'article spécifié et envoie une requête de validation au journal des transactions. Lorsque l'Agent de distribution reçoit la requête, il compare les informations de validation de la requête à la table des Abonnés. Les résultats de la validation sont affichés dans les messages d'alerte du gestionnaire de réplication et de l'Agent SQL Server.
Autorisations
Seuls les utilisateurs possédant des autorisations SELECT ALL sur la table source pour l'article en cours de validation peuvent exécuter sp_article_validation.