Procédure : exécuter des scripts pendant la synchronisation (programmation Transact-SQL de la réplication)
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 de capture instantanée, 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 de capture instantanée pour la publication.
Exécutez sp_addscriptexec (Transact-SQL) sur la base de données de publication du serveur de publication. Spécifiez @publication, le nom du fichier de script avec le chemin d'accès complet UNC 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.