sys.sp_cdc_disable_table (Transact-SQL)

适用于SQL Server

对当前数据库中指定的源表和捕获实例禁用变更数据捕获。 更改数据捕获在 SQL Server 的每个版本中都不可用。 有关 SQL Server 各个版次支持的功能列表,请参阅 SQL Server 2022 的各个版次及其支持的功能

Transact-SQL 语法约定

语法

sys.sp_cdc_disable_table
    [ @source_schema = ] 'source_schema'
      , [ @source_name = ] 'source_name'
    [ , [ @capture_instance = ] { 'capture_instance' | 'all' } ]
[ ; ]

参数

[ @source_schema = ] 'source_schema'

包含源表的架构的名称。 @source_schema是 sysname,没有默认值,不能NULL

当前数据库中必须存在@source_schema

[ @source_name = ] 'source_name'

要从中禁用更改数据捕获的源表的名称。 @source_name是 sysname,没有默认值,不能NULL

当前数据库中必须存在@source_name。

[ @capture_instance = ] { 'capture_instance' |“all” }

要为指定的源表禁用的捕获实例的名称。 @capture_instance是 sysname,不能NULL

指定后 all ,将禁用为 @source_name 定义的所有捕获实例。

返回代码值

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

结果集

无。

注解

sys.sp_cdc_disable_table 删除与指定源表和捕获实例关联的更改数据捕获更改表和系统函数。 它将从更改数据捕获系统表中删除与指定捕获实例关联的任何行,并将 sys.tables 目录视图中表项的列设置为 is_tracked_by_cdc 0

权限

要求具有 db_owner 固定数据库角色中的成员资格。

示例

下例对 HumanResources.Employee 表禁用了变更数据捕获。

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_disable_table
    @source_schema = N'HumanResources',
    @source_name = N'Employee',
    @capture_instance = N'HumanResources_Employee';