次の方法で共有


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 では、パブリケーションに関連付けられたすべてのアーティクルが反復的に削除された後、パブリケーション自体が削除されます。 1 つでもサブスクリプションがあると、パブリケーションを削除することはできません。 サブスクリプションを削除する方法については、「プッシュ サブスクリプションの削除」および「プル サブスクリプションの削除」を参照してください。

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

権限

sp_dropmergepublication を実行できるのは、固定サーバー ロール sysadmin または固定データベース ロール db_owner のメンバーだけです。

関連項目

参照

sp_addmergepublication (Transact-SQL)

sp_changemergepublication (Transact-SQL)

sp_helpmergepublication (Transact-SQL)

レプリケーション ストアド プロシージャ (Transact-SQL)

概念

パブリケーションの削除