sp_droparticle (Transact-SQL)

Quita un artículo de una publicación de instantáneas o transaccional. No se puede quitar un artículo si hay una o más suscripciones del mismo. Este procedimiento almacenado se ejecuta en el publicador de la base de datos de publicaciones.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

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

Argumentos

  • [ @publication=] 'publication'
    Es el nombre de la publicación que contiene el artículo que se va a quitar. publication es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @article=] 'article'
    Es el nombre del artículo que se va a quitar. article es de tipo sysname y no tiene ningún valor predeterminado.

  • [ @ignore_distributor =] ignore_distributor
    Solo se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.

  • [ @force_invalidate_snapshot = ] force_invalidate_snapshot
    Confirma que la acción realizada por este procedimiento almacenado puede invalidar una instantánea existente. force_invalidate_snapshot es de tipo bit y su valor predeterminado es 0.

    0 especifica que los cambios en el artículo no invalidan la instantánea. Si el procedimiento almacenado detecta que el cambio requiere una nueva instantánea, se produce un error y no se realizan cambios.

    1 especifica que los cambios realizados en el artículo pueden invalidar la instantánea y, si hay suscripciones existentes que necesiten una nueva instantánea, se conceda permiso para marcar como obsoleta la instantánea existente y generar una nueva.

  • [ @publisher= ] 'publisher'
    Especifica un publicador que no es de MicrosoftSQL Server. publisher es de tipo sysname y su valor predeterminado es NULL.

    [!NOTA]

    No se debe utilizar publisher al cambiar las propiedades de un artículo en un publicador de SQL Server.

  • [ @from_drop_publication= ] from_drop_publication
    Solo se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada.

Valores de código de retorno

0 (correcto) o 1 (error)

Notas

sp_droparticle se utiliza en la replicación de instantáneas y transaccional.

En artículos filtrados horizontalmente, sp_droparticle comprueba la columna type del artículo en la tabla sysarticles (Transact-SQL) para determinar si se debería quitar también una vista o un filtro.Si se ha generado automáticamente una vista o un filtro, también se quita con el artículo. Si se creó de forma manual, la vista o filtro no se quita.

Ejecutar sp_droparticle para quitar un artículo de una publicación no elimina el objeto de la base de datos de publicaciones o el objeto correspondiente de la base de datos de suscripciones. Use DROP <object> para quitar manualmente estos objetos, si es necesario.

Ejemplo

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

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

Permisos

Sólo los miembros de la función fija de servidor sysadmin o de la función fija de base de datos db_owner pueden ejecutar sp_droparticle.