次の方法で共有


sp_showpendingchanges (Transact-SQL)

レプリケート待ちの変更を示す結果セットを返します。このストアド プロシージャは、パブリッシャ側でパブリケーション データベースについて、およびサブスクライバ側でサブスクリプション データベースについて実行されます。

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

注意

このプロシージャでは、変更の概数と、その変更に関係する行が提供されます。たとえば、プロシージャは、パブリッシャまたはサブスクライバから情報を取得しますが、同時に両方の情報を取得しません。他のノードに格納されている情報によって、同期する一連の変更はプロシージャで推定されるよりも少なくなる可能性があります。

構文

sp_showpendingchanges [ [ @destination_server = ] 'destination_server' ]
    [ , [ @publication = ] 'publication' ]
    [ , [ @article = ] 'article']
    [ , [ @show_rows = ] show_rows]

引数

  • [ @destination_server = ] 'destination_server'
    レプリケートされた変更が適用されるサーバーの名前を指定します。destination_server のデータ型は sysname で、既定値は NULL です。

  • [ @publication = ] 'publication'
    パブリケーションの名前を指定します。publication のデータ型は sysname で、既定値は NULL です。publication を指定した場合は、指定したパブリケーションのみが結果に含まれます。

  • [ @article = ] 'article'
    アーティクルの名前を指定します。article のデータ型は sysname で、既定値は NULL です。article を指定した場合は、指定したアーティクルのみが結果に含まれます。

  • [ @show_rows = ] show_rows
    結果セットに保留中の変更の詳細を含めるかどうかを指定します。既定値は 0 です。値 1 を指定した場合は、is_delete 列と rowguid 列が結果セットに含まれます。

結果セット

列名

データ型

説明

destination_server

sysname

変更がレプリケートされているサーバーの名前です。

pub_name

sysname

パブリケーションの名前です。

destination_db_name

sysname

変更がレプリケートされているデータベースの名前です。

is_dest_subscriber

bit

変更がサブスクライバにレプリケートされていることを示します。値 1 は、変更がサブスクライバにレプリケートされていることを示します。0 は、変更がパブリッシャにレプリケートされていることを示します。

article_name

sysname

変更が行われたテーブルのアーティクルの名前です。

pending_deletes

int

レプリケートされるのを待機している削除の数です。

pending_ins_and_upd

int

レプリケートされるのを待機している挿入と更新の数です。

is_delete

bit

保留中の変更が削除かどうかを示します。値が 1 の場合は、変更が削除であることを示します。@show_rows では、値を 1 にする必要があります。

rowguid

uniqueidentifier

変更された行を識別する GUID です。@show_rows では、値を 1 にする必要があります。

リターン コード値

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

説明

sp_showpendingchanges は、マージ レプリケーションで使用します。

sp_showpendingchanges は、マージ レプリケーションのトラブルシューティングで使用します。

sp_showpendingchanges の結果には、生成が 0 の行は含まれません。

article で指定されているアーティクルが、publication で指定されているパブリケーションに属していない場合、pending_deletes および pending_ins_and_upd に対して 0 のカウントが返されます。

権限

sp_showpendingchanges を実行できるのは、固定サーバー ロール sysadmin または固定データベース ロール db_owner のメンバだけです。