Condividi tramite


sp_dropsubscription (Transact-SQL)

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

Elimina le sottoscrizioni di un determinato articolo, pubblicazione o set di sottoscrizioni nel server di pubblicazione. Questa stored procedure viene eseguita nel database di pubblicazione del server di pubblicazione.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

sp_dropsubscription
    [ [ @publication = ] N'publication' ]
    [ , [ @article = ] N'article' ]
    , [ @subscriber = ] N'subscriber'
    [ , [ @destination_db = ] N'destination_db' ]
    [ , [ @ignore_distributor = ] ignore_distributor ]
    [ , [ @reserved = ] N'reserved' ]
    [ , [ @publisher = ] N'publisher' ]
[ ; ]

Argomenti

[ @publication = ] N'publication'

Nome della pubblicazione associata. @publication è sysname, con il valore predefinito NULL. Se all, tutte le sottoscrizioni per tutte le pubblicazioni per il Sottoscrittore specificato vengono annullate. publication è un parametro obbligatorio.

[ @article = ] N'article'

Nome dell'articolo. @article è sysname, con un valore predefinito .NULL Se all, le sottoscrizioni a tutti gli articoli per ogni pubblicazione e Sottoscrittore specificati vengono eliminate. Utilizzare all per le pubblicazioni che consentono l'aggiornamento immediato.

[ @subscriber = ] N'subscriber'

Nome del Sottoscrittore che avrà le relative sottoscrizioni eliminate. @subscriber è sysname, senza impostazione predefinita. Se all, tutte le sottoscrizioni per tutti i Sottoscrittori vengono eliminate.

[ @destination_db = ] N'destination_db'

Nome del database di destinazione. @destination_db è sysname, con il valore predefinito NULL. Se NULL, tutte le sottoscrizioni del Sottoscrittore vengono eliminate.

[ @ignore_distributor = ] ignore_distributor

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

[ @reserved = ] N'reserved'

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

[ @publisher = ] N'publisher'

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_dropsubscription viene usato nella replica snapshot e transazionale.

Se si elimina la sottoscrizione in un articolo di una pubblicazione di sincronizzazione immediata, non è possibile aggiungerla di nuovo, a meno che non si eliminano le sottoscrizioni in tutti gli articoli della pubblicazione e le si riaggiunga tutte contemporaneamente.

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 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 [AdventureWorks2022]
EXEC sp_dropsubscription 
  @publication = @publication, 
  @article = N'all',
  @subscriber = @subscriber;
GO

Autorizzazioni

Solo i membri del ruolo predefinito del server sysadmin , il ruolo predefinito del database db_owner o l'utente che ha creato la sottoscrizione può eseguire sp_dropsubscription.