sp_replcmds (Transact-SQL)sp_replcmds (Transact-SQL)

S’APPLIQUE À : ouiSQL Server ouiAzure SQL Database (Managed Instance uniquement) nonAzure SQL Data Warehouse nonParallel Data Warehouse APPLIES TO: yesSQL Server yesAzure SQL Database (Managed Instance only) noAzure SQL Data Warehouse noParallel Data Warehouse

Retourne les commandes pour les transactions signalées pour la réplication.Returns the commands for transactions marked for replication. Cette procédure stockée est exécutée sur le serveur de publication dans la base de données de publication.This stored procedure is executed at the Publisher on the publication database.

Important

La procédure sp_replcmds doit être exécutée uniquement pour résoudre les problèmes de réplication.The sp_replcmds procedure should be run only to troubleshoot problems with replication.

Icône de lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

  
sp_replcmds [ @maxtrans = ] maxtrans  

ArgumentsArguments

[ @maxtrans = ] maxtransNombre de transactions à propos desquelles retourner des informations.[ @maxtrans = ] maxtrans Is the number of transactions to return information about. maxtrans est de type int, avec 1comme valeur par défaut, qui spécifie la prochaine transaction en attente de distribution.maxtrans is int, with a default of 1, which specifies the next transaction waiting for distribution.

Jeux de résultatsResult Sets

Nom de la colonneColumn name Type de donnéesData type DescriptionDescription
ID de l’articlearticle id intint ID de l’article.The ID of the article.
partial_commandpartial_command bitbit Indique s'il s'agit d'une commande partielleIndicates whether this is a partial command or not.
commandecommand varbinary(1024)varbinary(1024) La valeur de commande.The command value.
xactidxactid binary(10)binary(10) ID de la transaction.Transaction ID.
xact_seqnoxact_seqno varbinary(16)varbinary(16) Numéro de séquence de transaction.The transaction sequence number.
publication_idpublication_id intint ID de la publication.The ID of the publication.
command_idcommand_id intint ID de la commande dans MSrepl_commands.ID of the command in MSrepl_commands.
command_typecommand_type intint Type de commande.Type of command.
originator_srvnameoriginator_srvname sysnamesysname Serveur d'origine de la transaction.Server where the transaction originated.
originator_dboriginator_db sysnamesysname Base de données d'origine de la transaction.Database where the transaction originated.
pkHashpkHash intint À usage interne uniquementInternal use only.
originator_publication_idoriginator_publication_id intint ID de la publication d'origine de la transaction.ID of the publication where the transaction originated.
originator_db_versionoriginator_db_version intint Version de la base de données d'origine de la transaction.Version of the database where the transaction originated.
originator_lsnoriginator_lsn varbinary(16)varbinary(16) Identifie le numéro séquentiel dans le journal (LSN) de la commande dans la publication d'origine.Identifies the log sequence number (LSN) for the command in the originating publication.

NotesRemarks

sp_replcmds est utilisé par le processus de lecture du journal dans la réplication transactionnelle.sp_replcmds is used by the log reader process in transactional replication.

La réplication traite le premier client qui exécute sp_replcmds dans une base de données donnée en tant que lecteur de journal.Replication treats the first client that runs sp_replcmds within a given database as the log reader.

Cette procédure peut générer des commandes pour des tables propriétaires qualifiées, ou ne pas qualifier le nom de la table (valeur par défaut).This procedure can generate commands for owner-qualified tables or not qualify the table name (the default). L'ajout de noms de table qualifiés autorise la réplication des données à partir de tables appartenant à un utilisateur spécifique dans une base de données, vers des tables appartenant à ce même utilisateur dans une autre base de données.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.

Notes

Étant donné que le nom de table figurant dans la base de données source est qualifié par le nom du propriétaire, le propriétaire de la table dans la base de données cible doit porter le même nom de propriétaire.Because the table name in the source database is qualified by the owner name, the owner of the table in the target database must be the same owner name.

Les clients qui tentent d’exécuter sp_replcmds au sein de la même base de données reçoivent l’erreur 18752 jusqu’à ce que le premier client se déconnecte.Clients who attempt to run sp_replcmds within the same database receive error 18752 until the first client disconnects. Une fois que le premier client se déconnecte, un autre client peut exécuter sp_replcmdset devient le nouveau lecteur de journal.After the first client disconnects, another client can run sp_replcmds, and becomes the new log reader.

Un message d’avertissement numéro 18759 est MicrosoftMicrosoft ajouté au SQL ServerSQL Server journal des erreurs et au MicrosoftMicrosoft journal des applications Windows si sp_replcmds ne parvient pas à répliquer une commande de texte parce que le pointeur de texte n’a pas été récupéré dans le même libellé.A warning message number 18759 is added to both the MicrosoftMicrosoft SQL ServerSQL Server error log and the MicrosoftMicrosoft Windows application log if sp_replcmds is unable to replicate a text command because the text pointer was not retrieved in the same transaction.

AutorisationsPermissions

Seuls les membres du rôle serveur fixe sysadmin ou du rôle de base de données fixe db_owner peuvent exécuter sp_replcmds.Only members of the sysadmin fixed server role or the db_owner fixed database role can execute sp_replcmds.

Voir aussiSee Also

Messages d’erreur Error Messages
sp_repldone (Transact-SQL) sp_repldone (Transact-SQL)
sp_replflush (Transact-SQL) sp_replflush (Transact-SQL)
sp_repltrans (Transact-SQL) sp_repltrans (Transact-SQL)
Procédures stockées système (Transact-SQL)System Stored Procedures (Transact-SQL)