Partilhar via


sp_droppublication (Transact-SQL)

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Descarta uma publicação e seu Snapshot Agent associado. Todas as assinaturas devem ser descartadas antes de descartar uma publicação. Os artigos na publicação são descartados automaticamente. Esse procedimento armazenado é executado no Publicador, no banco de dados publicador.

Convenções de sintaxe de Transact-SQL

Sintaxe

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

Argumentos

@publication [ = ] N'publicação'

O nome da publicação a ser descartada. @publication é sysname, sem padrão. Se all for especificado, todas as publicações serão descartadas do banco de dados de publicação, exceto as publicações com assinaturas.

@ignore_distributor [ = ] ignore_distributor

Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.

@publisher [ = ] N'editor'

Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.

@from_backup [ = ] from_backup

Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Comentários

sp_droppublication é usado na replicação de instantâneo e na replicação transacional.

sp_droppublication recursivamente descarta todos os artigos associados a uma publicação e, em seguida, descarta a própria publicação. Uma publicação não poderá ser removida se for uma ou mais assinaturas dela. Para obter informações sobre como remover assinaturas, consulte Excluir uma assinatura push e Excluir uma assinatura pull.

A execução sp_droppublication para descartar uma publicação não remove objetos publicados do banco de dados de publicação ou os objetos correspondentes do banco de dados de assinatura. Use DROP <object> para remover esses objetos manualmente, se necessário.

Permissões

Somente membros da função de servidor fixa sysadmin podem executar sp_droppublication.

Exemplos

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