sys.sp_cdc_disable_db (Transact-SQL)

適用対象: SQL サーバー

現在のデータベースの変更データ キャプチャ (CDC) を無効にします。 変更データ キャプチャは、SQL Server のすべてのエディションで使用できるわけではありません。 SQL Server の各エディションでサポートされる機能の一覧については、「SQL Server 2022 の各エディションとサポートされている機能」を参照してください。

Transact-SQL 構文表記規則

構文

sys.sp_cdc_disable_db
[ ; ]

リターン コードの値

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

結果セット

ありません。

解説

sys.sp_cdc_disable_db は、現在有効になっているデータベース内のすべてのテーブルの変更データ キャプチャを無効にします。 変更テーブル、ジョブ、ストアド プロシージャ、関数など、変更データ キャプチャに関連するすべてのシステム オブジェクトが削除されます。 sys.databases カタログ ビューのデータベース エントリのis_cdc_enabled列が0に設定されます。

変更データ キャプチャを無効にした時点でデータベースに対して多数のキャプチャ インスタンスが定義されている場合、実行時間の長いトランザクションによって sys.sp_cdc_disable_db の実行が失敗する可能性があります。 この問題は、sys.sp_cdc_disable_dbを実行する前にsys.sp_cdc_disable_tableを使用して個々のキャプチャ インスタンスを無効にすることで回避できます。

アクセス許可

Azure SQL Managed Instance または SQL Server で変更データ キャプチャを行うには、 sysadmin 固定サーバー ロールのメンバーシップが必要です。 Azure SQL Database の Change Data Capture の db_owner のメンバーシップが必要です。

次の例では、AdventureWorks2022 データベースで変更データ キャプチャを無効にします。

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_disable_db;
GO