Partilhar via


sp_droparticle (Transact-SQL)

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

Descarta um artigo de uma publicação de instantâneo ou transacional. Um artigo não pode ser removido se houver uma ou mais assinaturas dele. Esse procedimento armazenado é executado no Publicador, no banco de dados publicador.

Convenções de sintaxe de Transact-SQL

Sintaxe

sp_droparticle
    [ @publication = ] N'publication'
    , [ @article = ] N'article'
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @force_invalidate_snapshot = ] force_invalidate_snapshot ]
    [ , [ @publisher = ] N'publisher' ]
    [ , [ @from_drop_publication = ] from_drop_publication ]
[ ; ]

Argumentos

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

O nome da publicação que contém o artigo a ser descartado. @publication é sysname, sem padrão.

@article [ = ] N'artigo'

O nome do artigo a ser descartado. @article é sysname, sem padrão.

@ignore_distributor [ = ] ignore_distributor

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

@force_invalidate_snapshot [ = ] force_invalidate_snapshot

Confirma que a ação executada por esse procedimento armazenado pode invalidar um instantâneo existente. @force_invalidate_snapshot é bit, com um padrão de 0.

  • 0 Especifica que as alterações no artigo não fazem com que o instantâneo seja inválido. Se o procedimento armazenado detectar que a alteração requer um novo instantâneo, ocorrerá um erro e nenhuma alteração será feita.

  • 1 Especifica que as alterações no artigo podem fazer com que o instantâneo seja inválido e, se houver assinaturas existentes que exijam um novo instantâneo, dá permissão para que o instantâneo existente seja marcado como obsoleto e um novo instantâneo seja gerado.

@publisher [ = ] N'editor'

Especifica um Publicador não-SQL Server. @publisher é sysname, com um padrão de NULL.

Esse parâmetro não deve ser usado ao alterar as propriedades do artigo em um Publicador do SQL Server.

@from_drop_publication [ = ] from_drop_publication

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_droparticle é usado na replicação de instantâneo e transacional.

Para artigos filtrados horizontalmente, sp_droparticle verifica a type coluna do artigo na tabela sysarticles (Transact-SQL) para determinar se uma exibição ou filtro também deve ser descartado. Se uma visualização ou filtro foi gerado automaticamente, ele será descartado com o artigo. Se ele foi criado manualmente, ele não será descartado.

A execução sp_droparticle para descartar um artigo de uma publicação não remove o objeto do banco de dados de publicação ou o objeto correspondente do banco de dados de assinatura. Use DROP <object> para remover esses objetos manualmente, se necessário.

Exemplos

DECLARE @publication AS sysname;
DECLARE @article AS sysname;
SET @publication = N'AdvWorksProductTran'; 
SET @article = N'Product'; 

-- Drop the transactional article.
USE [AdventureWorks2022]
EXEC sp_droparticle 
  @publication = @publication, 
  @article = @article,
  @force_invalidate_snapshot = 1;
GO

Permissões

Somente membros da função de servidor fixa sysadmin ou db_owner função de banco de dados fixa podem executar sp_droparticle.