Applies To: SQL Server
Returns the commands for transactions marked for replication. This stored procedure is executed at the Publisher on the publication database.
sp_replcmds [ @maxtrans = ] maxtrans
[ @maxtrans=] maxtrans
Is the number of transactions to return information about. maxtrans is int, with a default of 1, which specifies the next transaction waiting for distribution.
|Column name||Data type||Description|
|article id||int||The ID of the article.|
|partial_command||bit||Indicates whether this is a partial command or not.|
|command||varbinary(1024)||The command value.|
|xact_seqno||varbinary(16)||The transaction sequence number.|
|publication_id||int||The ID of the publication.|
|command_id||int||ID of the command in MSrepl_commands.|
|command_type||int||Type of command.|
|originator_srvname||sysname||Server where the transaction originated.|
|originator_db||sysname||Database where the transaction originated.|
|pkHash||int||Internal use only.|
|originator_publication_id||int||ID of the publication where the transaction originated.|
|originator_db_version||int||Version of the database where the transaction originated.|
|originator_lsn||varbinary(16)||Identifies the log sequence number (LSN) for the command in the originating publication.|
sp_replcmds is used by the log reader process in transactional replication.
Replication treats the first client that runs sp_replcmds within a given database as the log reader.
This procedure can generate commands for owner-qualified tables or not qualify the table name (the default). Adding qualified table names allows replication of data from tables owned by a specific user in one database to tables owned by the same user in another database.
Clients who attempt to run sp_replcmds within the same database receive error 18752 until the first client disconnects. After the first client disconnects, another client can run sp_replcmds, and becomes the new log reader.
A warning message number 18759 is added to both the Microsoft SQL Server error log and the Microsoft Windows application log if sp_replcmds is unable to replicate a text command because the text pointer was not retrieved in the same transaction.
Only members of the sysadmin fixed server role or the db_owner fixed database role can execute sp_replcmds.