sys.sp_dropsubscription (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL Managed Instance

Sluit abonnementen op een bepaald artikel, publicatie of set abonnementen op de Publisher af. Deze opgeslagen procedure wordt uitgevoerd bij Publisher in de publicatiedatabase.

Transact-SQL syntaxis-conventies

Syntax

sys.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' ]
[ ; ]

Arguments

[ @publication = ] N'publicatie'

De naam van de bijbehorende publicatie. @publication is een systeemnaam, met als standaard .NULL Als all, worden alle abonnementen voor alle publicaties van de opgegeven abonnee geannuleerd. @publication is een vereiste parameter.

[ @article = ] N'artikel'

De naam van het artikel. @article is een systeemnaam, met als standaard .NULL Als all, worden abonnementen op alle artikelen van elke opgegeven publicatie en abonnee vervallen. Gebruik all boeken die directe updates mogelijk maken.

[ @subscriber = ] N'abonnee'

De naam van de abonnee die zijn abonnementen zal laten vallen. @subscriber is een systeemnaam, zonder standaard. Als all, worden alle abonnementen voor alle abonnees beëindigd.

[ @destination_db = ] N'destination_db'

De naam van de bestemmingsdatabase. @destination_db is een systeemnaam, met standaard .NULL Als NULL, worden alle abonnementen van die abonnee beëindigd.

[ @ignore_distributor = ] ignore_distributor

Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.

[ @reserved = ] Niet gereserveerd'

Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.

[ @publisher = ] N'uitgever'

Alleen ter informatie geïdentificeerd. Wordt niet ondersteund. Toekomstige compatibiliteit is niet gegarandeerd.

Codewaarden retourneren

0 (geslaagd) of 1 (mislukt).

Remarks

sp_dropsubscription wordt gebruikt in momentopnamen en transactionele replicatie.

Als je het abonnement op een artikel in een immediate-sync publicatie opgeeft, kun je het niet weer toevoegen tenzij je de abonnementen op alle artikelen in de publicatie opheft en ze allemaal tegelijk weer toevoegt.

Examples

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

Permissions

Alleen leden van de sysadmin-fixedserverrol , de db_owner fixed database-rol, of de gebruiker die het abonnement heeft aangemaakt, kunnen uitvoeren sp_dropsubscription.