sp_dropmergepullsubscription (Transact-SQL)
Область применения: SQL Server
Удаляет подписку слиянием по запросу. Эта хранимая процедура выполняется на подписчике в базе данных подписки.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_dropmergepullsubscription
[ [ @publication = ] N'publication' ]
[ , [ @publisher = ] N'publisher' ]
[ , [ @publisher_db = ] N'publisher_db' ]
[ , [ @reserved = ] reserved ]
[ ; ]
Аргументы
[ @publication = ] N'publication'
Имя публикации. @publication — sysname с значением по умолчаниюNULL
. Этот параметр является обязательным. Укажите значение all
для удаления подписок на все публикации.
[ @publisher = ] N'publisher'
Имя издателя. @publisher — sysname с значением по умолчаниюNULL
. Этот параметр является обязательным.
[ @publisher_db = ] N'publisher_db'
Имя базы данных издателя. @publisher_db имеет имя sysname с значением по умолчаниюNULL
. Этот параметр является обязательным.
[ @reserved = ] зарезервировано
Зарезервировано для последующего использования. @reserved бит с значением по умолчанию0
.
Значения кода возврата
0
(успешно) или 1
(сбой).
Замечания
sp_dropmergepullsubscription
используется в репликации слиянием.
sp_dropmergepullsubscription
удаляет агент слияния для этой подписки на вытягивание слиянием, хотя агент слияния не создаетсяsp_addmergepullsubscription
.
Примеры
-- 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 Subscriber to remove
-- a merge pull subscription.
DECLARE @publication AS sysname;
DECLARE @publisher AS sysname;
DECLARE @publication_db AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
SET @publisher = $(PubServer);
SET @publication_db = N'AdventureWorks2022';
USE [AdventureWorks2022Replica]
EXEC sp_dropmergepullsubscription
@publisher = @publisher,
@publisher_db = @publication_db,
@publication = @publication;
GO
Разрешения
Могут выполняться sp_dropmergepullsubscription
только члены предопределенных ролей сервера sysadmin или пользователя, создавшего подписку на слияние. Роль фиксированной базы данных db_owner может выполняться sp_dropmergepullsubscription
только в том случае, если пользователь, создавший подписку на вытягивание слиянием, принадлежит этой роли.