sp_article_validation (Transact-SQL)

Initiiert eine Datenüberprüfungsanforderung für den angegebenen Artikel. Diese gespeicherte Prozedur wird auf dem Verleger für die Veröffentlichungsdatenbank und auf dem Abonnenten für die Abonnementdatenbank ausgeführt.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

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' ]

Argumente

  • [ @publication = ] 'publication'
    Der Name der Veröffentlichung, in der der Artikel vorhanden ist. publication ist ein Wert vom Datentyp sysname und weist keinen Standardwert auf.

  • [ @article=] 'article'
    Der Name des Artikels, der überprüft werden soll. article ist ein Wert vom Datentyp sysname und weist keinen Standardwert auf.

  • [ @rowcount_only=] type_of_check_requested
    Gibt an, ob nur die Zeilenanzahl für die Tabelle zurückgegeben wird. type_of_check_requested ist ein Wert vom Datentyp smallint. Der Standardwert ist 1.

    Bei 0 werden eine Zeilenzählung und eine mit MicrosoftSQL Server 7.0 kompatible Prüfsummenberechnung ausgeführt.

    Bei 1 wird nur eine Zeilenzählung durchgeführt.

    Bei 2 werden eine Zeilenzählung und eine binäre Prüfsummenberechnung ausgeführt.

  • [ @full_or_fast=] full_or_fast
    Die Methode, die zum Berechnen der Zeilenanzahl verwendet wird. full_or_fast ist ein Wert vom Datentyp tinyint. Die folgenden Werte sind möglich.

    Wert

    Beschreibung

    0

    Führt eine vollständige Zählung mit COUNT(*) durch.

    1

    Führt eine schnelle Zählung mit sysindexes.rows aus. Das Zählen von Zeilen in sysindexes ist wesentlich schneller als das Zählen von Zeilen in der tatsächlichen Tabelle. sysindexes wird jedoch nur verzögert aktualisiert, sodass die Zeilenanzahl möglicherweise nicht genau stimmt.

    2 (Standard)

    Führt eine bedingte schnelle Zählung durch, indem zunächst versucht wird, die schnelle Methode anzuwenden. Ergeben sich mit der schnellen Methode Unterschiede, wird die Methode für die vollständige Zählung verwendet. Wenn expected_rowcount den Wert NULL aufweist und die gespeicherte Prozedur verwendet wird, um den Wert abzurufen, wird stets mit COUNT(*) eine vollständige Zählung ausgeführt.

  • [ @shutdown_agent=] shutdown_agent
    Gibt an, ob der Verteilungs-Agent unmittelbar nach Abschluss der Überprüfung beendet werden soll. shutdown_agent ist ein Wert vom Datentyp bit. Der Standardwert ist 0. Mit 0 wird der Verteilungs-Agent nicht beendet. Bei 1 wird der Verteilungs-Agent nach der Überprüfung des Artikels beendet.

  • [ @subscription_level=] subscription_level
    Gibt an, ob die Überprüfung von einer Gruppe von Abonnenten übernommen wird. subscription_level ist ein Wert vom Datentyp bit. Der Standardwert ist 0. Bei 0 wird die Überprüfung auf alle Abonnenten angewendet. Bei 1 wird die Überprüfung nur auf eine Teilmenge der Abonnenten angewendet, die durch Aufrufe von sp_marksubscriptionvalidation in der zurzeit geöffneten Transaktion angegeben wurden.

  • [ @reserved=] reserved
    Nur für Informationszwecke identifiziert. Nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt.

  • [ @publisher = ] 'publisher'
    Gibt einen Nicht-MicrosoftSQL Server-Verleger an. publisher ist ein Wert vom Datentyp sysname; der Standardwert ist NULL.

    HinweisHinweis

    'publisher' sollte nicht verwendet werden, wenn die Überprüfung auf einem SQL Server-Verleger angefordert wird.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Hinweise

sp_article_validation wird bei der Transaktionsreplikation verwendet.

sp_article_validation bewirkt, dass Überprüfungsinformationen für den angegebenen Artikel gesammelt werden und eine Überprüfungsanforderung an das Transaktionsprotokoll gesendet wird. Wenn der Verteilungs-Agent diese Anforderung empfängt, vergleicht er die Überprüfungsinformationen in der Anforderung mit der Abonnententabelle. Die Ergebnisse der Überprüfung werden im Replikationsmonitor und in SQL Server-Agent-Warnungen angezeigt.

Berechtigungen

Nur Benutzer mit SELECT ALL-Berechtigungen für die Quelltabelle mit dem zu überprüfenden Artikel können sp_article_validation ausführen.