sp_droppullsubscription (Transact-SQL)
Gilt für: SQL Server Azure SQL Managed Instance
Löscht ein Abonnement in der aktuellen Datenbank des Abonnenten. Diese gespeicherte Prozedur wird auf dem Abonnenten für die Pullabonnementdatenbank ausgeführt.
Transact-SQL-Syntaxkonventionen
Syntax
sp_droppullsubscription
[ @publisher = ] N'publisher'
[ , [ @publisher_db = ] N'publisher_db' ]
, [ @publication = ] N'publication'
[ , [ @reserved = ] reserved ]
[ , [ @from_backup = ] from_backup ]
[ ; ]
Argumente
[ @publisher = ] N'publisher'
Der Name des Remoteservers. @publisher ist "sysname" ohne Standard. Wenn all
das Abonnement bei allen Herausgebern verworfen wird.
[ @publisher_db = ] N'publisher_db'
Der Name der Verlegerdatenbank. @publisher_db ist "sysname" mit der Standardeinstellung "NULL
. all
bedeutet, dass alle Publisher-Datenbanken.
[ @publication = ] N'Publikation'
Der Name der Veröffentlichung. @publication ist "sysname" ohne Standard. Wenn all
das Abonnement für alle Publikationen verworfen wird.
[ @reserved = ] reserviert
Nur für Informationszwecke identifiziert. Wird nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt.
[ @from_backup = ] from_backup
Nur für Informationszwecke identifiziert. Wird nicht unterstützt. Zukünftige Kompatibilität wird nicht sichergestellt.
Rückgabecodewerte
0
(erfolgreich) oder 1
Fehler.
Hinweise
sp_droppullsubscription
wird in der Momentaufnahmereplikation und Transaktionsreplikation verwendet.
sp_droppullsubscription
löscht die entsprechende Zeile in der tabelle MSreplication_subscriptions und den entsprechenden Distributor-Agent am Abonnenten. Wenn in MSreplication_subscriptions keine Zeilen verbleiben, wird die Tabelle abgelegt.
Beispiele
-- 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
Berechtigungen
Nur Mitglieder der festen Serverrolle sysadmin oder der Benutzer, der das Pullabonnement erstellt hat, können ausgeführt werden sp_droppullsubscription
. Die db_owner festen Datenbankrolle kann nur ausgeführt werden sp_droppullsubscription
, wenn der Benutzer, der das Pullabonnement erstellt hat, zu dieser Rolle gehört.