共用方式為


sp_dropmergepublication (Transact-SQL)

卸除合併式發行集及其相關快照集代理程式。 在卸除合併式發行集之前,必須先卸除所有訂閱。 發行集中的發行項會自動卸除。 這個預存程序執行於發行集資料庫的發行者端。

主題連結圖示 Transact-SQL 語法慣例

語法

sp_dropmergepublication [ @publication= ] 'publication' 
    [ , [ @ignore_distributor = ] ignore_distributor ] 
    [ , [ @reserved = ] reserved ]
    [ , [ @ignore_merge_metadata = ] ignore_merge_metadata ]

引數

  • [ @publication=] 'publication'
    這是要卸除的發行集名稱。 publication 是 sysname,沒有預設值。 如果是 all,便會移除所有現有的合併式發行集及其相關快照集代理程式作業。 如果您指定特定的 publication 值,便只能卸除這個發行集及其相關快照集代理程式。

  • [ @ignore_distributor =] ignore_distributor
    用來卸除發行集,且不在散發者端執行清除作業。 ignore_distributor 是 bit,預設值是 0。 當重新安裝散發者時,也會使用這個參數。

  • [ @reserved=] reserved
    保留供日後使用。 reserved 是 bit,預設值是 0

  • [ @ignore_merge_metadata= ] ignore_merge_metadata
    僅供內部使用。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_dropmergepublication 用於合併式複寫中。

sp_dropmergepublication 會遞迴卸除所有與發行集相關聯的發行項,然後再卸除發行集本身。 如果發行集有一或多項訂閱,便不能移除它。 如需有關如何移除訂閱的詳細資訊,請參閱<刪除發送訂閱>和<刪除提取訂閱>。

執行 sp_dropmergepublication 來卸除發行集,並不會從發行集資料庫中移除發行的物件,也不會從訂閱資料庫中移除對應的物件。 必要時,請使用 DROP <object> 來手動移除這些物件。

範例

DECLARE @publication AS sysname
DECLARE @publicationDB    AS sysname
SET @publication = N'AdvWorksSalesOrdersMerge' 
SET @publicationDB = N'AdventureWorks'

-- Remove the merge publication.
USE [AdventureWorks]
EXEC sp_dropmergepublication @publication = @publication;

-- Remove replication objects from the database.
USE master
EXEC sp_replicationdboption 
  @dbname = @publicationDB, 
  @optname = N'merge publish', 
  @value = N'false'
GO

權限

只有系統管理員 (sysadmin) 固定伺服器角色或 db_owner 固定資料庫角色的成員,才能夠執行 sp_dropmergepublication

請參閱

參考

sp_addmergepublication (Transact-SQL)

sp_changemergepublication (Transact-SQL)

sp_helpmergepublication (Transact-SQL)

複寫預存程序 (Transact-SQL)

概念

刪除發行集