sp_removedbreplication (Transact-SQL)

このストアド プロシージャは、パブリッシャ側でパブリケーション データベースについて実行されるか、サブスクライバ側でサブスクリプション データベースについて実行されます。このプロシージャを実行するデータベースからは、すべてのレプリケーション オブジェクトが削除されますが、ディストリビューション データベースなどその他のデータベースからオブジェクトが削除されることはありません。

注意

このプロシージャは、他の方法でレプリケーション オブジェクトを削除できなかった場合にのみ使用してください。これらの方法の詳細については、「レプリケーションの削除」を参照してください。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

sp_removedbreplication [ [ @dbname = ] 'dbname' ]
    [ , [ @type = ] type ] 

引数

  • [ @dbname = ] 'dbname'
    データベースの名前を指定します。dbname のデータ型は sysname で、既定値は NULL です。NULL の場合は、現在のデータベースが使用されます。

  • [ @type = ] type
    データベース オブジェクトを削除するレプリケーションの種類を指定します。type のデータ型は nvarchar(5) で、次のいずれかの値を指定できます。

    tran

    トランザクション レプリケーション パブリッシング オブジェクトを削除。

    merge

    マージ レプリケーション パブリッシング オブジェクトを削除。

    both (既定値)

    すべてのレプリケーション パブリッシング オブジェクトを削除。

リターン コードの値

0 (成功) または 1 (失敗)

説明

sp_removedbreplication は、すべての種類のレプリケーションで使用できます。

sp_removedbreplication は、レプリケートされたデータベースを復元するとき、復元が必要なレプリケーション オブジェクトがない場合に利用できます。

sp_removedbreplication は、読み取り専用とマークされているデータベースには使用できません。

使用例

-- Remove replication objects from the subscription database on MYSUB.
DECLARE @subscriptionDB AS sysname
SET @subscriptionDB = N'AdventureWorks2008R2Replica'

-- Remove replication objects from a subscription database (if necessary).
USE master
EXEC sp_removedbreplication @subscriptionDB
GO

権限

sp_removedbreplication を実行できるのは、sysadmin 固定サーバー ロールのメンバだけです。