次の方法で共有


sp_removedbreplication (Transact-SQL)

 

このストアド プロシージャにより、SQL Server のパブリッシャー インスタンス側のパブリケーション データベース、または SQL Server のサブスクライバー インスタンス側のサブスクリプション データベースから、すべてのレプリケーション オブジェクトが削除されます。適切なデータベースで実行するか、または同じインスタンスにある別のデータベースのコンテキストで実行する場合は、レプリケーション オブジェクトを削除するデータベースを指定します。このプロシージャでは、ディストリビューション データベースなどその他のデータベースからオブジェクトが削除されることはありません。

注意

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

トピック リンク アイコン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 は、読み取り専用とマークされているデータベースには使用できません。

権限

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

次の例では、レプリケーション オブジェクトを削除します。

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

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

参照

パブリッシングおよびディストリビューションの無効化
システム ストアド プロシージャ (Transact-SQL)