Exécuter des scripts pendant la synchronisation (programmation Transact-SQL de la réplication)
S'applique à : SQL Server
La réplication prend en charge l'exécution de script à la demande pour les Abonnés à des publications transactionnelles et de fusion. Cette fonctionnalité copie le script vers le répertoire de travail de réplication puis utilise sqlcmd pour appliquer le script à l'Abonné. Par défaut, en cas d'échec lors de l'application du script pour un abonnement à une publication transactionnelle, l'Agent de distribution s'arrêtera. Vous pouvez spécifier un script Transact-SQL à exécuter par programme à l'aide des procédures stockées de réplication.
Pour spécifier un script à exécuter pour tous les Abonnés à une publication d'instantané, transactionnelle ou de fusion
Composez et testez le script Transact-SQL qui sera exécuté à la demande.
Enregistrez le fichier de script dans un emplacement accessible à l'Agent d'instantané pour la publication.
Dans la base de données de publication sur le serveur de publication, exécutez sp_addscriptexec (Transact-SQL). Spécifiez
@publication
, le nom du fichier de script avec le chemin UNC complet créé à l’étape 2 pour@scriptfile
, et l’une des valeurs suivantes pour@skiperror
:0 – l'agent arrêtera d'exécuter le script en cas d'erreur.
1 – l'agent enregistrera les erreurs rencontrées et continuera à exécuter le script.
Le script spécifié sera exécuté sur chaque Abonné lorsque l'agent s'exécutera de nouveau pour synchroniser l'abonnement.