Partager via


sp_droppullsubscription (Transact-SQL)

Supprime un abonnement à la base de données en cours de l'Abonné. Cette procédure stockée est exécutée sur la base de données d'abonnement par extraction de données (pull) de l'Abonné.

Icône Lien de rubrique Conventions de la syntaxe de Transact-SQL

Syntaxe

sp_droppullsubscription [ @publisher= ] 'publisher' 
        , [ @publisher_db= ] 'publisher_db' 
        , [ @publication= ] 'publication'
    [ , [ @reserved= ] reserved ]

Arguments

  • [ @publisher= ] 'publisher'
    Nom du serveur distant. publisher est de type sysname, sans valeur par défaut. Si all est spécifié, l'abonnement est supprimé sur tous les serveurs de publication.

  • [ @publisher_db= ] 'publisher_db'
    Nom de la base de données du serveur de publication. publisher_db est de type sysname, sans valeur par défaut. all représente toutes les bases de données de serveur de publication.

  • [ @publication= ] 'publication'
    Nom de la publication. publication est de type sysname, sans valeur par défaut. Si all est spécifié, l'abonnement est supprimé dans toutes les publications.

  • [ @reserved= ] reserved
    Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

Valeurs des codes de retour

0 (succès) ou 1 (échec)

Notes

La procédure sp_droppullsubscription est utilisée dans les réplications transactionnelles et d'instantané.

sp_droppullsubscription supprime la ligne correspondante dans la table MSreplication_subscriptions (Transact-SQL) et l'Agent de distribution correspondant sur l'Abonné. La table MSreplication_subscriptions (Transact-SQL) est supprimée si elle ne contient plus aucune ligne.

Exemple

-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables  
-- on the command line and in SQL Server Management Studio, see the 
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".

-- This is the batch executed at the Subscriber to drop 
-- a pull subscription to a transactional publication.
DECLARE @publication AS sysname;
DECLARE @publisher AS sysname;
DECLARE @publicationDB     AS sysname;
SET @publication = N'AdvWorksProductTran';
SET @publisher = $(PubServer);
SET @publicationDB = N'AdventureWorks2012';

USE [AdventureWorks2012Replica]
EXEC sp_droppullsubscription 
  @publisher = @publisher, 
  @publisher_db = @publicationDB, 
  @publication = @publication;
GO

Autorisations

Seuls les membres du rôle serveur fixe sysadmin ou l'utilisateur qui a créé l'abonnement par extraction de données (pull) sont habilités à exécuter la procédure sp_reinitpullsubscription. Le rôle de base de données fixe db_owner ne peut exécuter sp_droppullsubscription que si l'utilisateur qui a créé l'abonnement par extraction de données appartient à ce rôle.

Voir aussi

Référence

sp_addpullsubscription (Transact-SQL)

sp_change_subscription_properties (Transact-SQL)

sp_helppullsubscription (Transact-SQL)

sp_dropsubscription (Transact-SQL)

Concepts

Supprimer un abonnement par extraction (pull)