sp_dropsubscription (Transact-SQL)

Quita las suscripciones a un artículo, publicación o conjunto de suscripciones específico del publicador. 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_dropsubscription [ [ @publication= ] 'publication' ]
    [ , [ @article= ] 'article' ]
        , [ @subscriber= ] 'subscriber'
    [ , [ @destination_db= ] 'destination_db' ]
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @reserved= ] 'reserved' ]

Argumentos

  • [ @publication= ] 'publication'
    Es el nombre de la publicación asociada. publication es de tipo sysname y su valor predeterminado es NULL. Si es all, se cancelarán todas las suscripciones a todas las publicaciones del suscriptor indicado. publication es un parámetro necesario.

  • [ @article= ] 'article'
    Es el nombre del artículo. article es de tipo sysname y su valor predeterminado es NULL. Si se especifica all, se quitarán todos los artículos de cada publicación y suscriptor especificados. Use all en las publicaciones que permiten la actualización inmediata.

  • [ @subscriber= ] 'subscriber'
    Es el nombre del suscriptor cuyas suscripciones se van a quitar. subscriber es de tipo sysname y no tiene valor predeterminado. Si se especifica all, se quitarán todas las suscripciones de todos los Suscriptores.

  • [ @destination_db= ] 'destination_db'
    Es el nombre de la base de datos de destino. destination_db es de tipo sysname y su valor predeterminado es NULL. Cuando es NULL, se quitan todas las suscripciones del suscriptor indicado.

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

  • [ @reserved= ] 'reserved'
    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_dropsubscription se utiliza en la replicación transaccional y de instantáneas.

Si quita la suscripción a un artículo de una publicación de sincronización inmediata, no podrá volverla a agregar, a menos que quite las suscripciones a todos los artículos de la publicación y las agregue de nuevo todas a la vez.

Ejemplo

-- This script uses sqlcmd scripting variables. They are in the form
-- $(MyVariable). For information about how to use scripting variables  
-- on the command line and in SQL Server Management Studio, see the 
-- "Executing Replication Scripts" section in the topic
-- "Programming Replication Using System Stored Procedures".

-- This batch is executed at the Publisher to remove 
-- a pull or push subscription to a transactional publication.
DECLARE @publication AS sysname;
DECLARE @subscriber AS sysname;
SET @publication = N'AdvWorksProductTran';
SET @subscriber = $(SubServer);

USE [AdventureWorks]
EXEC sp_dropsubscription 
  @publication = @publication, 
  @article = N'all',
  @subscriber = @subscriber;
GO

Permisos

Sólo los miembros de la función fija de servidor sysadmin, los de la función fija de base de datos db_owner o el usuario que creó la suscripción pueden ejecutar sp_dropsubscription.