Partilhar via


sys.sp_cdc_help_change_data_capture (Transact-SQL)

Aplica-se a:SQL ServerAzure SQL Managed Instance

Devolve a configuração de captura de dados de alteração para cada tabela habilitada para captura de dados de alteração na base de dados atual. Podem ser devolvidas até duas linhas para cada tabela de origem, uma linha para cada instância de captura. A captura de dados de alterações não está disponível em todas as edições do SQL Server. Para obter uma lista de funcionalidades suportadas pelas edições do SQL Server, consulte Edições e funcionalidades suportadas do SQL Server 2022.

Transact-SQL convenções de sintaxe

Sintaxe

sys.sp_cdc_help_change_data_capture
    [ [ @source_schema = ] 'source_schema' ]
    [ , [ @source_name = ] 'source_name' ]
[ ; ]

Arguments

[ @source_schema = ] 'source_schema'

O nome do esquema ao qual pertence a tabela fonte. @source_schema é sysname, com um padrão de NULL. Quando @source_schema é especificado, @source_name também deve ser especificado.

Se não for nulo, @source_schema deve existir na base de dados atual.

Se @source_schema for não-nulo, @source_name também deve ser não-nulo.

[ @source_name = ] 'source_name'

O nome da tabela de origem. @source_name é sysname, com um padrão de NULL. Quando @source_name é especificado, @source_schema também deve ser especificado.

Se não for nulo, @source_name deve existir na base de dados atual.

Se @source_name não for nulo, @source_schema também deve ser não-nulo.

Valores de código de retorno

0 (sucesso) ou 1 (fracasso).

Conjunto de resultados

Nome da coluna Tipo de dados Description
source_schema sysname Nome do esquema da tabela fonte.
source_table sysname Nome da tabela fonte.
capture_instance sysname Nome da instância de captura.
object_id int ID da tabela de alterações associada à tabela de origem.
source_object_id int ID da tabela de origem.
start_lsn binary(10) Número de sequência logarítmica (LSN) que representa o ponto final mais baixo para consultar a tabela de alterações.

NULL = o ponto final mais baixo ainda não foi estabelecido.
end_lsn binary(10) LSN representa o ponto final superior para consultar a tabela de alterações. No SQL Server 2012 (11.x), esta coluna é sempre NULL.
supports_net_changes bit O suporte para alterações de rede está ativado.
has_drop_pending bit Não utilizado no SQL Server 2012 (11.x).
role_name sysname Nome do papel da base de dados usado para controlar o acesso aos dados de alteração.

NULL = um papel não é usado.
index_name sysname Nome do índice usado para identificar de forma única as linhas na tabela de origem.
filegroup_name sysname Nome do grupo de ficheiros onde reside a tabela de alterações.

NULL = tabela de alterações está no grupo de ficheiros predefinido da base de dados.
create_date datetime Data em que a instância de captura foi ativada.
index_column_list nvarchar(max) Lista de colunas de índice usadas para identificar de forma única as linhas na tabela de origem.
captured_column_list nvarchar(max) Lista de colunas de origem capturadas.

Observações

Quando tanto @source_schema como @source_name têm por defeito , NULLou estão explicitamente definidos com , NULLeste procedimento armazenado devolve informação para todas as instâncias de captura da base de dados às quais o chamador tem acesso SELECT. Quando @source_schema e @source_name não são nulas, apenas a informação na tabela habilitada nomeada específica é devolvida.

Permissions

Quando @source_schema e @source_name são NULL, a autorização do chamador determina quais as tabelas habilitadas incluídas no conjunto de resultados. Os chamadores devem ter permissão SELECT em todas as colunas capturadas da instância de captura e também pertença a quaisquer funções de gate definidas para que a informação da tabela seja incluída.

Os membros do papel de base de dados db_owner podem visualizar informações sobre todas as instâncias de captura definidas. Quando é solicitada informação para uma tabela habilitada específica, aplicam-se os mesmos critérios SELECT e de pertença à tabela nomeada.

Examples

A. Retorno de dados de alteração, captura de informação de configuração para uma tabela especificada

O exemplo seguinte devolve a configuração de captura de dados de alteração para a HumanResources.Employee tabela.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_help_change_data_capture
    @source_schema = N'HumanResources',
    @source_name = N'Employee';
GO

B. Devolver dados de alteração, captura de informação de configuração para todas as tabelas

O exemplo seguinte devolve informação de configuração para todas as tabelas ativadas na base de dados que contêm dados de alteração aos quais o chamador está autorizado a aceder.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_help_change_data_capture;
GO