sp_showpendingchanges (Transact-SQL)

適用対象:SQL Server

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

Transact-SQL 構文表記規則

Note

この手順では、変更の数と、それらの変更に関係する行の近似値を提供します。 たとえば、プロシージャはパブリッシャーまたはサブスクライバーから情報を取得しますが、両方を同時に取得することはできません。 他のノードに格納されている情報により、プロシージャの見積もりよりも同期する変更のセットが小さくなることがあります。

構文

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

引数

[ @destination_server = ] N'destination_server'

レプリケートされた変更が適用されるサーバーの名前。 @destination_serverは sysname で、既定値は NULL.

[ @publication = ] N'publication'

出版物の名前。 @publicationは sysname で、既定値は NULL. @publicationを指定した場合、結果は指定されたパブリケーションのみに制限されます。

[ @article = ] N'article'

アーティクルの名前。 @articleは sysname で、既定値は NULL. @articleを指定すると、結果は指定したアーティクルのみに制限されます。

[ @show_rows = ] show_rows

保留中の変更に関するより具体的な情報が結果セットに含まれるかどうかを指定します。 @show_rowsは int で、既定値は 0. 値 1 が指定されている場合、結果セットには列 is_deleterowguid.

結果セット

列名 データ型 説明
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_rows1値が必要です。
rowguid uniqueidentifier 変更された行を識別する GUID です。 @show_rows1値が必要です。

リターン コードの値

0 (成功) または 1 (失敗)。

解説

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

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

結果 sp_showpendingchanges には、ジェネレーション 0 の行は含まれません。

@articleに指定されたアーティクルが@publication指定されたパブリケーションに属していない場合は、次の0数が返されますpending_deletespending_ins_and_upd

アクセス許可

sysadmin 固定サーバー ロールまたは固定データベース ロールdb_ownerメンバーのみが実行sp_showpendingchangesできます。