sp_dropmergepublication (Transact-SQL)
適用於:SQL Server
卸除合併式發行集及其相關聯的 快照集代理程式。 卸除合併式發行集之前,必須先卸除所有訂閱。 發行集中的文章會自動卸除。 這個預存程式會在發行集資料庫的發行者端執行。
語法
sp_dropmergepublication
[ @publication = ] N'publication'
[ , [ @ignore_distributor = ] ignore_distributor ]
[ , [ @reserved = ] reserved ]
[ , [ @ignore_merge_metadata = ] ignore_merge_metadata ]
[ ; ]
引數
[ @publication = ] N'publication'
要卸除之發行集的名稱。 @publication為 sysname,沒有預設值。 如果all
為 ,則會移除所有現有的合併式發行集,以及與其相關聯的 快照集代理程式 作業。 如果您為 @publication指定特定值,則只會卸除該發行集及其相關聯的 快照集代理程式 作業。
[ @ignore_distributor = ] ignore_distributor
用來卸除發行集,而不需在散發者端執行清除工作。 @ignore_distributor為 bit,預設值為 0
。 重新安裝散發者時也會使用此參數。
[ @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
權限
只有系統管理員固定伺服器角色或db_owner固定資料庫角色的成員才能執行 sp_dropmergepublication
。