sp_droppublication (Transact-SQL)

S’applique à :SQL ServerAzure SQL Managed Instance

Supprime une publication et l'Agent d'instantané qui lui est associé. Tous les abonnements doivent être supprimés avant de pouvoir supprimer une publication. 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.

Conventions de la syntaxe Transact-SQL

Syntaxe

sp_droppublication
    [ @publication = ] N'publication'
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @publisher = ] N'publisher' ]
    [ , [ @from_backup = ] from_backup ]
[ ; ]

Arguments

[ @publication = ] N’publication'

Nom de la composition à supprimer. @publication est sysname, sans valeur par défaut. Si all elle est spécifiée, toutes les publications sont supprimées de la base de données de publication, à l’exception des publications avec des abonnements.

[ @ignore_distributor = ] ignore_distributor

Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

[ @publisher = ] N’publisher'

Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

[ @from_backup = ] from_backup

Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie.

Valeurs des codes de retour

0 (réussite) ou 1 (échec).

Notes

sp_droppublicationest utilisé dans instantané réplication et la réplication transactionnelle.

sp_droppublication Supprime de manière récursive tous les articles associés à une composition, puis supprime la composition elle-même. Une publication ne peut pas être supprimée s’il s’agit d’un ou de plusieurs abonnements. Pour plus d’informations sur la suppression d’abonnements, consultez Supprimer un abonnement Push et Supprimer un abonnement par extraction.

L’exécution sp_droppublication pour supprimer une publication ne supprime pas les objets publiés de la base de données de publication ou les objets correspondants de la base de données d’abonnement. Utilisez DROP <object> pour supprimer manuellement ces objets le cas échéant.

Autorisations

Seuls les membres du rôle serveur fixe sysadmin peuvent s’exécuter.sp_droppublication

Exemples

DECLARE @publicationDB AS sysname;
DECLARE @publication AS sysname;
SET @publicationDB = N'AdventureWorks'; 
SET @publication = N'AdvWorksProductTran'; 

-- Remove a transactional publication.
USE [AdventureWorks2022]
EXEC sp_droppublication @publication = @publication;

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