sp_droppullsubscription (Transact-SQL)

Quita una suscripción de la base de datos actual del suscriptor. Este procedimiento almacenado se ejecuta en el suscriptor de la base de datos de suscripciones de extracción.

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

Sintaxis

sp_droppullsubscription [ @publisher= ] 'publisher'
        , [ @publisher_db= ] 'publisher_db'
        , [ @publication= ] 'publication'
    [ , [ @reserved= ] reserved ]

Argumentos

  • [ @publisher= ] 'publisher'
    Es el nombre del servidor remoto. publisher es de tipo sysname y no tiene ningún valor predeterminado. Si se especifica all, la suscripción se quita de todos los publicadores.

  • [ @publisher_db= ] 'publisher_db'
    Es el nombre de la base de datos del publicador. publisher_db es de tipo sysname y no tiene ningún valor predeterminado. all se refiere a todas las bases de datos del publicador.

  • [ @publication= ] 'publication'
    Es el nombre de la publicación. publication es de tipo sysname y no tiene ningún valor predeterminado. Si se especifica all, se quita la suscripción a todas las publicaciones.

  • [ @reserved= ] reserved
    Solamente 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)

Comentarios

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

sp_droppullsubscription elimina la fila correspondiente en la tabla MSreplication_subscriptions (Transact-SQL) y el Agente de distribución correspondiente del suscriptor.Si no quedan filas en MSreplication_subscriptions (Transact-SQL), quita la tabla.

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 is the batch executed at the Subscriber to drop 
-- a pull subscription to a transactional publication.
DECLARE @publication AS sysname;
DECLARE @publisher AS sysname;
DECLARE @publicationDB     AS sysname;
SET @publication = N'AdvWorksProductTran';
SET @publisher = $(PubServer);
SET @publicationDB = N'AdventureWorks2008R2';

USE [AdventureWorks2008R2Replica]
EXEC sp_droppullsubscription 
  @publisher = @publisher, 
  @publisher_db = @publicationDB, 
  @publication = @publication;
GO

Permisos

Solamente los miembros de la función fija de servidor sysadmin o el usuario que creó la suscripción de extracción pueden ejecutar sp_droppullsubscription. La función fija de base de datos db_owner sólo puede ejecutar sp_droppullsubscription si el usuario que creó la suscripción de extracción pertenece a esta función.