Compartilhar via


sys.sp_cdc_help_change_data_capture (Transact-SQL)

Retorna a configuração de captura dos dados de alteração para cada tabela habilitada para a captura de dados de alteração no banco de dados atual. Podem ser retornadas 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 Microsoft SQL Server. Para obter uma lista de recursos com suporte nas edições do SQL Server, consulte Recursos compatíveis com as edições do SQL Server 2012.

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

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

Argumentos

  • [ @source\_schema = ] 'source_schema'
    É o nome do esquema ao qual a tabela de origem pertence. source_schema é sysname, com um padrão de NULL. Quando source_schema for especificado, também deve ser especificado source_name.

    Se for não NULL, source_schema deverá existir no banco de dados atual.

    Se source_schema for não NULL, source_name também deverá ser não NULL.

  • [ @source\_name = ] 'source_name'
    É o nome da tabela de origem. source_name é sysname, com um padrão de NULL. Quando source_name for especificado, também deve ser especificado source_schema.

    Se for não NULL, source_name deverá existir no banco de dados atual.

    Se source_name for não NULL, source_schema também deverá ser não NULL.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Conjuntos de resultados

Nome da coluna

Tipo de dados

Descrição

source_schema

sysname

Nome do esquema de tabela de origem.

source_table

sysname

Nome da tabela de origem.

capture_instance

sysname

Nome da instância de captura.

object_id

int

ID da tabela de alteração associada à tabela de origem.

source_object_id

int

ID da tabela de origem.

start_lsn

binary(10)

LSN (Número de Sequência de Log) representando o ponto de extremidade inferior para consulta da tabela de alteração.

NULL = o ponto de extremidade inferior não foi definido.

end_lsn

binary(10)

LSN representando o ponto de extremidade superior para consulta da tabela de alteração. No SQL Server 2012, esta coluna é sempre NULL.

supports_net_changes

bit

O suporte à alteração de rede está habilitado.

has_drop_pending

bit

Não é usado no SQL Server 2012.

role_name

sysname

Nome da função de banco de dados usada para controlar o acesso aos dados de alteração.

NULL = uma função não é usada.

index_name

sysname

Nome do índice usado para identificar exclusivamente linhas na tabela de origem.

filegroup_name

sysname

Nome do grupo de arquivos no qual a tabela de alteração reside.

NULL = tabela de alteração no grupo de arquivos padrão do banco de dados

create_date

datetime

Data em que a instância de captura foi habilitada.

index_column_list

nvarchar(max)

Lista de colunas de índice usadas para identificar exclusivamente linhas na tabela de origem.

captured_column_list

nvarchar(max)

Lista de colunas de origem capturadas.

Comentários

Quando source_schema e source_name são padronizados como NULL ou são definidos explicitamente como NULL, esse procedimento armazenado retornará informações para todas as instâncias de captura de banco de dados às quais o chamador possui acesso de SELECT. Quando source_schema e source_name são não NULL, somente as informações na tabela habilitada nomeada específica serão retornadas.

Permissões

Quando source_schema e source_name são NULL, a autorização do chamador determinará quais tabelas habilitadas serão incluídas na conjunto de resultados. Os chamadores devem ter a permissão SELECT em todas as colunas capturadas da instância de captura e também a associação em todas as funções associadas definidas para as informações sobre a tabela a serem incluídas. Os membros da função de banco de dados db_owner podem exibir informações sobre todas as instâncias de captura definidas. Quando informações para uma tabela habilitada específica são solicitadas, os mesmos critérios de associação e de SELECT são aplicados para a tabela nomeada.

Exemplos

A.Retornando informações de configuração da captura de dados de alteração de uma tabela específica

O exemplo a seguir retorna a configuração da captura de dados de alteração da tabela HumanResources.Employee.

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

B.Retornando informações de configuração da captura de dados de alteração de todas as tabelas

O exemplo a seguir retorna informações de configuração de todas as tabelas habilitadas no banco de dados que contêm dados de alteração que o chamador está autorizado a acessar.

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_help_change_data_capture;
GO