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 用于合并复制。

权限

只有 sysadmin 固定服务器角色的成员或 db_owner 固定数据库角色的成员才能执行 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'AdventureWorksReplica';

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

请参阅

参考

sp_addmergesubscription (Transact-SQL)
sp_changemergesubscription (Transact-SQL)
sp_helpmergesubscription (Transact-SQL)

其他资源

How to: Delete a Push Subscription (Replication Transact-SQL Programming)
How to: Delete a Pull Subscription (Replication Transact-SQL Programming)

帮助和信息

获取 SQL Server 2005 帮助