sp_droparticle (Transact-SQL)

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

Descarta um artigo de uma publicação de instantâneo ou transacional. Um artigo não pode ser removido se existir uma ou mais assinaturas para ele. 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 snapshot seja inválido e, se houver assinaturas existentes que exijam um novo snapshot, dá permissão para que o snapshot existente seja marcado como obsoleto e um novo snapshot gerado.

@publisher [ = ] N'editor'

Especifica um Publicador que não seja do 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 SQL Server Publisher.

@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 em snapshot e replicação 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 exibição ou filtro foi gerado automaticamente, ele é descartado com o artigo. Se ele foi criado manualmente, ele não é descartado.

A execução sp_droparticle para retirar 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.