sys.sp_cdc_get_captured_columns (Transact-SQL)

Aplica-se a: SQL Server

Os retornos alteram a informação de metadados de captura de dados para as colunas de origem capturadas acompanhadas pela instância de captura especificada. 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

Syntax

sys.sp_cdc_get_captured_columns [ @capture_instance = ] N'capture_instance'
[ ; ]

Arguments

[ @capture_instance = ] N'capture_instance'

O nome da instância de captura associada a uma tabela de origem. @capture_instance é sysname e não pode ser NULL.

Para reportar as instâncias de captura para a tabela, execute o procedimento sys.sp_cdc_help_change_data_capture armazenado.

Valores de código de retorno

0 (sucesso) ou 1 (fracasso).

Conjunto de resultados

Nome da coluna Tipo de dados Descrição
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.
column_name sysname Nome da coluna de origem capturada.
column_id int ID da coluna na tabela de origem.
column_ordinal int Posição da coluna dentro da tabela fonte.
data_type sysname Tipo de dados da coluna.
character_maximum_length int Comprimento máximo de caracteres da coluna baseada em caracteres; caso contrário, NULL.
numeric_precision tinyint Precisão da coluna, se for numérica; caso contrário, NULL.
numeric_precision_radix smallint Radix de precisão da coluna se for baseada em números; caso contrário, NULL.
numeric_scale int Escala da coluna se baseada em números; caso contrário, NULL.
datetime_precision smallint Precisão da coluna se baseada em data-hora; caso contrário, NULL.

Remarks

Use sys.sp_cdc_get_captured_columns para obter informações sobre as colunas capturadas retornadas consultando as funções de consulta de instância de captura cdc.fn_cdc_get_all_changes_<capture_instance> ou cdc.fn_cdc_get_net_changes_<capture_instance>. Os nomes das colunas, IDs e posição mantêm-se constantes durante toda a vida útil da instância de captura. Apenas o tipo de dados da coluna muda quando o tipo de dados da coluna fonte subjacente na tabela acompanhada muda. Colunas que são adicionadas ou retiradas de uma tabela de origem não têm efeito sobre as colunas capturadas das instâncias de captura existentes.

Use sys.sp_cdc_get_ddl_history para obter informações sobre instruções de linguagem de definição de dados (DDL) aplicadas a uma tabela fonte. Quaisquer alterações DDL que tenham modificado a estrutura de uma coluna fonte rastreada são devolvidas no conjunto de resultados.

Permissions

Requer associação à função fixa de base de dados db_owner. Para todos os outros usuários, requer a permissão SELECT em todas as colunas capturadas na tabela de origem e, se uma função de seleção para a instância de captura foi definida, a associação a essa função de banco de dados. Quando o chamador não tem permissão para visualizar os dados de origem, a função devolve o Erro 22981 (Object doesn't exist or access is denied.).

Examples

O exemplo seguinte devolve informações sobre as colunas capturadas na HumanResources_Employee instância de captura.

USE AdventureWorks2022;
GO

EXECUTE sys.sp_cdc_get_captured_columns @capture_instance = N'HumanResources_Employee';
GO