分享方式:


sp_removedbreplication (Transact-SQL)

適用於:SQL Server Azure SQL 受控執行個體

這個預存程式會移除 SQL Server 發行者實例上發行集資料庫上的所有複寫物件,或 SQL Server 訂閱實例上的訂閱資料庫。 在適當的資料庫中執行 sp_removedbreplication ,或者,如果執行位於相同實例上另一個資料庫的內容中,請指定應該移除複寫對象的資料庫。 此程式不會從其他資料庫移除物件,例如散發資料庫。

只有在移除複寫物件的其他方法失敗時,才應該使用此程式。

Transact-SQL 語法慣例

語法

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

引數

[ @dbname = ] N'dbname'

資料庫的名稱。 @dbname為 sysname,預設值為 NULL。 當 為 時 NULL,會使用目前的資料庫。

[ @type = ] N'type'

要移除資料庫對象的復寫類型。 @type為 nvarchar(5),可以是下列其中一個值。

Description
tran 拿掉事務複製發行物件。
merge 拿掉合併式複寫發行物件。
both (預設值) 拿掉所有復寫發行物件。

傳回碼值

0 (成功) 或 1 (失敗)。

備註

sp_removedbreplication 用於所有類型的複寫。

sp_removedbreplication 還原不需要還原復寫對象的復寫資料庫時很有用。

sp_removedbreplication 無法針對標示為唯讀的資料庫使用。

權限

只有系統管理員固定伺服器角色的成員才能執行 sp_removedbreplication

範例

拿掉複本訂閱資料庫中的複寫 AdventureWorks2022 物件。

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

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