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。
權限
只有系統管理員 (sysadmin) 固定伺服器角色或 db_owner 固定資料庫角色的成員,才能夠執行 sp_showpendingchanges。