sp_removedbreplication (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

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

注意

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

Transact-SQL 語法慣例

語法

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

引數

[ @dbname = ] 'dbname' 這是資料庫的名稱。 dbname 是 sysname,預設值為 NULL。 當 NULL 時,將會使用目前的資料庫。

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

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

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_removedbreplication用於所有類型的複寫。

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

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

權限

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

範例

A. 拿掉複寫物件、AdventureWorks 複本訂閱資料庫

-- 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

B. 拿掉複寫物件、AdventureWorks 複本訂閱資料庫

-- 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)