sp_showpendingchanges (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 のメンバだけです。