sys.sp_dropmergepublication (Transact-SQL)

Aplica-se a: SQL Server

Elimina uma publicação de fusão e o seu Snapshot Agent associado. Todas as subscrições devem ser canceladas antes de uma publicação de fusão. Os artigos da publicação são automaticamente retirados. Este procedimento armazenado é executado no Publisher no banco de dados de publicação.

Transact-SQL convenções de sintaxe

Sintaxe

sys.sp_dropmergepublication
    [ @publication = ] N'publication'
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @reserved = ] reserved ]
    [ , [ @ignore_merge_metadata = ] ignore_merge_metadata ]
[ ; ]

Arguments

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

O nome da publicação a mencionar. @publication é sysname, sem padrão. Se all, todas as publicações de fusão existentes são removidas, bem como o trabalho Snapshot Agent associado a elas. Se especificar um valor específico para @publication, apenas essa publicação e o trabalho Snapshot Agent associado são eliminados.

[ @ignore_distributor = ] ignore_distributor

Costumava largar uma publicação sem fazer tarefas de limpeza no Distribuidor. @ignore_distributor é bit, com um padrão de 0. Este parâmetro também é usado na reinstalação do Distribuidor.

[ @reserved = ] reservado

Reservado para uso futuro. @reserved é bit, com um padrão de 0.

[ @ignore_merge_metadata = ] ignore_merge_metadata

Identificado apenas para fins informativos. Não suportado. A compatibilidade futura não é garantida.

Valores de código de retorno

0 (sucesso) ou 1 (fracasso).

Remarks

sp_dropmergepublication é usado na replicação por fusão.

sp_dropmergepublication remove recursivamente todos os artigos associados a uma publicação e depois elimina a própria publicação. Uma publicação não pode ser removida se for uma ou mais assinaturas. Para informações sobre como remover subscrições, consulte Eliminar uma Subscrição Push e Eliminar uma Subscrição Pull.

Executar sp_dropmergepublication o cancelamento de uma publicação não remove objetos publicados da base de dados de publicações nem os objetos correspondentes da base de dados por subscrição. Use DROP <object> para remover estes objetos manualmente, se necessário.

Examples

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

Permissions

Apenas os membros do papel de servidor fixo de sysadmin ou do papel de base de dados fixa db_owner podem executar sp_dropmergepublication.