sp_dropmergesubscription (Transact-SQL)

删除对合并发布的订阅及其关联的合并代理。 此存储过程在发布服务器的发布数据库中执行。

主题链接图标 Transact-SQL 语法约定

语法

sp_dropmergesubscription [ [ @publication= ] 'publication' ] 
    [ , [ @subscriber= ] 'subscriber'  
    [ , [ @subscriber_db= ] 'subscriber_db' ] 
    [ , [ @subscription_type= ] 'subscription_type' ] 
    [ , [ @ignore_distributor = ] ignore_distributor ] 
    [ , [ @reserved = ] reserved ]

参数

  • [ @publication= ] 'publication'
    发布名。 publication 的数据类型为 sysname,默认值为 NULL。 该发布必须已经存在,并符合标识符的相关规则。

  • [ @subscriber=] 'subscriber'
    订阅服务器的名称。 subscriber 的数据类型为 sysname,默认值为 NULL。

  • [ @subscriber_db= ] 'subscriber_db'
    订阅数据库的名称。 subscription_database的数据类型为 sysname,默认值为 NULL。

  • [ @subscription_type= ] 'subscription_type'
    订阅的类型。 subscription_type的数据类型为 nvarchar(15),可以为以下值之一。

    说明

    all

    推送订阅、请求订阅和匿名订阅

    anonymous

    匿名订阅。

    push

    推送订阅。

    pull

    请求订阅。

    both (默认值)

    推送订阅和请求订阅。

  • [ @ignore_distributor = ] ignore_distributor
    指示是否在未连接到分发服务器的情况下执行此存储过程。 ignore_distributor 的数据类型为 bit,默认值为 0。 该参数可用于删除订阅,但不清除分发服务器上的任务。 在必须重新安装分发服务器的情况下,该参数也很有用。

  • [ @reserved= ] reserved
    供将来使用的保留参数。 reserved 的数据类型为 bit,默认值为 0

返回代码值

0(成功)或 1(失败)

注释

sp_dropmergesubscription 用于合并复制。

示例

-- 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 merge publication.
DECLARE @publication AS sysname;
DECLARE @subscriber AS sysname;
DECLARE @subscriptionDB AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
SET @subscriber = $(SubServer);
SET @subscriptionDB = N'AdventureWorks2012Replica';

USE [AdventureWorks2012]
EXEC sp_dropmergesubscription 
  @publication = @publication, 
  @subscriber = @subscriber, 
  @subscriber_db = @subscriptionDB;
GO

权限

只有 sysadmin 固定服务器角色的成员或 db_owner 固定数据库角色的成员才能执行 sp_dropmergesubscription

请参阅

参考

sp_addmergesubscription (Transact-SQL)

sp_changemergesubscription (Transact-SQL)

sp_helpmergesubscription (Transact-SQL)

概念

删除推送订阅

删除请求订阅