Condividi tramite


sp_droppullsubscription (Transact-SQL)

Elimina una sottoscrizione nel database corrente del Sottoscrittore. Questa stored procedure viene eseguita nel database di sottoscrizione pull del Sottoscrittore.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

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

Argomenti

  • [ @publisher= ] 'publisher'
    Nome del server remoto. publisher è di tipo sysname e non prevede alcun valore predefinito. Se è uguale a all, la sottoscrizione viene eliminata in tutti i server di pubblicazione.

  • [ @publisher_db= ] 'publisher_db'
    Nome del database del server di pubblicazione. publisher_db è di tipo sysname e non prevede alcun valore predefinito. Il valore all indica tutti i database del server di pubblicazione.

  • [ @publication= ] 'publication'
    Nome della pubblicazione. publication è di tipo sysname e non prevede alcun valore predefinito. Se è uguale a all, la sottoscrizione viene eliminata in tutte le pubblicazioni.

  • [ @reserved= ] reserved
    Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Osservazioni

La stored procedure sp_droppullsubscription viene utilizzata per la replica snapshot e transazionale.

La stored procedure sp_droppullsubscription elimina la riga corrispondente nella tabella MSreplication_subscriptions (Transact-SQL) e l'agente di distribuzione corrispondente nel Sottoscrittore. Se nella tabella MSreplication_subscriptions (Transact-SQL) non rimane alcuna riga, viene eliminata anche la tabella.

Esempio

-- 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

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin e l'utente che ha creato la sottoscrizione pull può eseguire sp_droppullsubscription. Il ruolo predefinito del database db_owner può eseguire sp_droppullsubscription solo se l'utente che ha creato la sottoscrizione pull appartiene a questo ruolo.