共用方式為


sp_replshowcmds (Transact-SQL)

以可讀取格式傳回已標記為要進行複寫的交易命令。 只有在用戶端連接 (包括並行連接) 並未從記錄中讀取複寫的交易時,才能執行 sp_replshowcmds。 這個預存程序執行於發行集資料庫的發行者端。

主題連結圖示 Transact-SQL 語法慣例

語法

sp_replshowcmds [ @maxtrans = ] maxtrans

引數

  • [ @maxtrans = ] maxtrans
    這是傳回相關資訊的交易數目。 maxtrans 是 int,預設值是 1,指定 sp_replshowcmds 要傳回資訊的最大交易暫止複寫數目。

結果集

sp_replshowcmds 是一個診斷程序,它會傳回執行時的來源發行集資料庫的相關資訊。

資料行名稱

資料類型

說明

xact_seqno

binary(10)

命令的序號。

originator_id

int

命令發起者的識別碼,一律是 0

publisher_database_id

int

發行者資料庫的識別碼,一律是 0

article_id

int

發行項的識別碼。

型別

int

命令的類型。

command

nvarchar(1024)

Transact-SQL 命令。

備註

sp_replshowcmds 用於異動複寫中。

您可以利用 sp_replshowcmds 來檢視目前尚未散發的交易 (保留在交易記錄中,尚未傳送給散發者的交易)。

在相同資料庫內執行 sp_replshowcmdssp_replcmds 的用戶端會收到錯誤 18752。

若要避免這個錯誤,第一個用戶端必須中斷連接,否則,您必須執行 sp_replflush 來釋出作為記錄讀取器的用戶端角色。 在所有用戶端都中斷了記錄讀取器的連接之後,sp_replshowcmds 便能夠順利執行。

[!附註]

只有為了進行複寫問題的疑難排解時,才執行 sp_replshowcmds

權限

只有系統管理員 (sysadmin) 固定伺服器角色或 db_owner 固定資料庫角色的成員,才能夠執行 sp_replshowcmds

請參閱

參考

sp_replcmds (Transact-SQL)

sp_repldone (Transact-SQL)

sp_replflush (Transact-SQL)

sp_repltrans (Transact-SQL)

系統預存程序 (Transact-SQL)

概念

錯誤訊息