sp_article_validation (Transact-SQL)

指定されたアーティクルに対する検証の要求を開始します。 このストアド プロシージャは、パブリッシャー側でパブリケーション データベースについて、およびサブスクライバー側でサブスクリプション データベースについて実行されます。

トピック リンク アイコン Transact-SQL 構文表記規則

構文

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

引数

  • [ @publication=] 'publication'
    アーティクルが存在するパブリケーションの名前を指定します。 publication のデータ型は sysname で、既定値はありません。

  • [ @article=] 'article'
    検証するアーティクルの名前を指定します。 article のデータ型は sysname で、既定値はありません。

  • [ @rowcount_only=] type_of_check_requested
    テーブルの行数のみを返す場合に指定します。 type_of_check_requested のデータ型は smallint で、既定値は 1 です。

    0 の場合、行数と Microsoft SQL Server 7.0 互換のチェックサムを実行します。

    1 の場合、行数のチェックのみを実行します。

    2 の場合、行数とバイナリのチェックサムを実行します。

  • [ @full_or_fast=] full_or_fast
    行数の計算で使用する方法を指定します。 full_or_fast のデータ型は tinyint で、次のいずれかの値を指定できます。

    説明

    0

    COUNT(*) を使用してフル カウントを実行します。

    1

    sysindexes.rows から高速カウントを実行します。 sysindexes での行のカウントは、実際のテーブル内での行のカウントよりも高速です。 ただし、sysindexes の更新は時間がかかり、行数が正確ではないことがあります。

    2 (既定値)

    最初に高速カウントを試み、条件高速カウントを実行します。 高速カウントに違いが見られる場合、フル カウントに戻されます。 expected_rowcount が NULL で、このストアド プロシージャを使って値を取得する場合、常に COUNT(*) によるフル カウントが使用されます。

  • [ @shutdown_agent=] shutdown_agent
    検証の完了後すぐにディストリビューション エージェントをシャットダウンするかどうかを指定します。 shutdown_agent のデータ型は bit で、既定値は 0 です。 0 の場合、ディストリビューション エージェントはシャットダウンされません。 1 の場合は、アーティクルが検証された後、ディストリビューション エージェントがシャットダウンされます。

  • [ @subscription_level=] subscription_level
    一部のサブスクライバーだけに検証を適用するかどうかを指定します。 subscription_level のデータ型は bit で、既定値は 0 です。 0 の場合は、すべてのサブスクライバーに検証が適用されます。 1 の場合は、現在開いているトランザクションで sp_marksubscriptionvalidation を呼び出すことによって指定される一部のサブスクライバーのみに検証が適用されます。

  • [ @reserved=] reserved
    単に情報を示すためだけに特定されます。サポートされていません。将来の互換性は保証されません。

  • [ @publisher= ] 'publisher'
    Microsoft SQL Server 以外のパブリッシャーを指定します。 publisher のデータ型は sysname で、既定値は NULL です。

    注意

    SQL Server パブリッシャーについての検証を要求する場合は、publisher は使用しないでください。

リターン コードの値

成功した場合は 0 を、失敗した場合は 1 をそれぞれ返します。

説明

sp_article_validation は、トランザクション レプリケーションで使用します。

sp_article_validation は、指定されたアーティクルについての検証の情報を収集し、トランザクション ログに検証の要求をポストします。 ディストリビューション エージェントは、この要求を受け取ると、要求に含まれている検証の情報をサブスクライバー テーブルと比較します。 検証の結果は、レプリケーション モニターおよび SQL Server エージェントの警告に表示されます。

権限

sp_article_validation を実行できるのは、検証するアーティクルの元のテーブルに対する SELECT ALL 権限を持つユーザーだけです。

関連項目

参照

sp_marksubscriptionvalidation (Transact-SQL)

sp_publication_validation (Transact-SQL)

sp_table_validation (Transact-SQL)

システム ストアド プロシージャ (Transact-SQL)

概念

レプリケートされたデータの検証