Procédure : afficher et modifier les propriétés d'abonnements par extraction (programmation Transact-SQL de la réplication)
Il est possible de modifier des abonnements par extraction et d'accéder par programme à leurs propriétés en utilisant des procédures stockées de réplication. Les procédures stockées utilisées dépendent du type de publication auquel l'abonnement appartient.
Pour afficher les propriétés d'un abonnement par extraction à une publication transactionnelle ou de capture instantanée
Sur l'Abonné, exécutez sp_helppullsubscription. Spécifiez @publisher, @publisherdb et @publisher_. Des informations relatives à l'abonnement qui est stocké dans les tables système de l'Abonné sont alors renvoyées.
Sur l'Abonné, exécutez sp_helpsubscription_properties. Spécifiez @publisher, @publisher_db, @publication et affectez l'une des valeurs suivantes à @failover_mode :
0 - l'abonnement appartient à une publication transactionnelle.
1 - l'abonnement appartient à une publication de capture instantanée.
Sur le serveur de publication, exécutez sp_helpsubscription. Spécifiez @publication et @subscriber.
Sur le serveur de publication, exécutez sp_helpsubscriberinfo, en spécifiant @subscriber. Des informations relatives à l'Abonné sont alors affichées.
Pour modifier les propriétés d'un abonnement par extraction à une publication transactionnelle ou de capture instantanée
Sur l'Abonné, exécutez sp_change_subscription_properties, en spécifiant @publisher, @publisher_db, @publication, en affectant la valeur 0 (transactionnel) ou 1 (capture instantanée) à @publication_type, en spécifiant la propriété d'abonnement qui est modifiée pour @property et la nouvelle valeur pour @value.
(Facultatif) Dans la base de données d'abonnement de l'Abonné, exécutez sp_changesubscriptiondtsinfo. Spécifiez l'ID du travail de l'Agent de distribution pour @jobid et les propriétés de package DTS (Data Transformation Services) suivantes :
@dts_package_name
@dts_package_password
@dts_package_location
Les propriétés de package DTS d'un abonnement sont alors modifiées.
Notes
L'ID de travail peut être obtenu en exécutant sp_helpsubscription.
Pour afficher les propriétés d'un abonnement par extraction à une publication de fusion
Sur l'Abonné, exécutez sp_helpmergepullsubscription. Spécifiez @publisher, @publisherdb et @publisher_.
Sur l'Abonné, exécutez sp_helpsubscription_properties. Spécifiez @publisher, @publisher_db, @publication et affectez la valeur 2 à @failover_mode.
Sur le serveur de publication, exécutez sp_helpmergesubscription pour afficher les informations d'abonnement. Pour retourner des informations sur un abonnement spécifique, vous devez spécifier @publication, @suscriber et affectez la valeur pull à @subscription_type.
Sur le serveur de publication, exécutez sp_helpsubscriberinfo, en spécifiant @subscriber. Des informations relatives à l'Abonné sont alors affichées.
Pour modifier les propriétés d'un abonnement par extraction à une publication de fusion
- Sur l'Abonné, exécutez sp_changemergepullsubscription. Spécifiez @publication, @publisher, @publisher_db, la propriété de l'abonnement modifiée pour @property et la nouvelle valeur pour @value.