Condividi tramite


sp_droppullsubscription (Transact-SQL)

Si applica a: SQL Server Istanza gestita di SQL di Azure

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

Convenzioni relative alla sintassi Transact-SQL

Sintassi

sp_droppullsubscription
    [ @publisher = ] N'publisher'
    [ , [ @publisher_db = ] N'publisher_db' ]
    , [ @publication = ] N'publication'
    [ , [ @reserved = ] reserved ]
    [ , [ @from_backup = ] from_backup ]
[ ; ]

Argomenti

[ @publisher = ] N'publisher'

Nome del server remoto. @publisher è sysname, senza impostazione predefinita. Se all, la sottoscrizione viene eliminata in tutti i server di pubblicazione.

[ @publisher_db = ] N'publisher_db'

Nome del database del server di pubblicazione. @publisher_db è sysname, con il valore predefinito NULL. all indica tutti i database del server di pubblicazione.

[ @publication = ] N'publication'

Nome della pubblicazione. @publication è sysname, senza impostazione predefinita. Se all, la sottoscrizione viene eliminata in tutte le pubblicazioni.

[ @reserved = ] riservato

Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

[ @from_backup = ] from_backup

Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Osservazioni:

sp_droppullsubscription viene usato nella replica snapshot e nella replica transazionale.

sp_droppullsubscription elimina la riga corrispondente nella tabella MSreplication_subscriptions e l'agente di distribuzione corrispondente nel Sottoscrittore. Se non viene lasciata alcuna riga in MSreplication_subscriptions, la tabella viene eliminata.

Esempi

-- 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'AdventureWorks2022';

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

Autorizzazioni

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