sp_dropmergepublication (Transact-SQL)

Supprime une publication de fusion et l'Agent de capture instantanée qui lui est associé. Tous les abonnements doivent être supprimés avant de supprimer une publication de fusion. Les articles de la publication sont supprimés automatiquement. Cette procédure stockée est exécutée sur le serveur de publication dans la base de données de publication.

Icône Lien de rubriqueConventions de la syntaxe de Transact-SQL

Syntaxe

sp_dropmergepublication [ @publication= ] 'publication' 
    [ , [ @ignore_distributor = ] ignore_distributor ] 
    [ , [ @reserved = ] reserved ]
    [ , [ @ignore_merge_metadata = ] ignore_merge_metadata ]

Arguments

  • [ @publication=] 'publication'
    Nom de la publication à supprimer. publication est de type sysname et n'a pas de valeur par défaut. Si la valeur est all, toutes les publications de fusion sont supprimées, de même que le travail d'Agent de capture instantanée associé à celles-ci. Si vous spécifiez une valeur particulière pour publication, seuls cette publication et le travail d'Agent de capture instantanée associé à celle-ci sont supprimés.

  • [ @ignore_distributor =] ignore_distributor
    Permet de supprimer une publication sans effectuer de tâches de nettoyage au niveau du serveur de distribution. ignore_distributor est de type bit, avec 0 comme valeur par défaut. Ce paramètre est également utilisé lors de la réinstallation du serveur de distribution.

  • [ @reserved=] reserved
    Réservé à un usage futur. reserved est de type bit, avec 0 comme valeur par défaut.

  • [ @ignore_merge_metadata= ] ignore_merge_metadata
    À usage interne uniquement

Valeurs des codes renvoyés

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

Notes

La procédure sp_dropmergepublication est utilisée dans la réplication de fusion.

sp_dropmergepublication supprime de manière récursive tous les articles associés à une publication, puis supprime la publication en elle-même. Une publication ne peut pas être supprimée si elle est associée à un ou plusieurs abonnements. Pour plus d'informations sur la suppression des abonnements, consultez Procédure : supprimer un abonnement par émission de données (programmation Transact-SQL de la réplication) et Procédure : supprimer un abonnement par extraction (programmation Transact-SQL de la réplication).

L'exécution de sp_dropmergepublication pour supprimer une publication n'entraîne pas la suppression des objets publiés de la base de données de publication ou des objets correspondants de la base de données d'abonnement. Si nécessaire, utilisez DROP <objet> pour supprimer manuellement ces objets.

Exemple

DECLARE @publication AS sysname
DECLARE @publicationDB    AS sysname
SET @publication = N'AdvWorksSalesOrdersMerge' 
SET @publicationDB = N'AdventureWorks'

-- Remove the merge publication.
USE [AdventureWorks]
EXEC sp_dropmergepublication @publication = @publication;

-- Remove replication objects from the database.
USE master
EXEC sp_replicationdboption 
  @dbname = @publicationDB, 
  @optname = N'merge publish', 
  @value = N'false'
GO

Autorisations

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_dropmergepublication.