sys.sp_cdc_get_captured_columns (Transact-SQL)
Retorna informações de metadados de captura de dados de alteração das colunas de origem capturadas, localizadas pela instância de captura especificada. A captura de dados de alteração está disponível somente nas edições Enterprise, Developer e Evaluation do SQL Server 2008.
Sintaxe
sys.sp_cdc_get_captured_columns
[ @capture_instance = ] 'capture_instance'
Argumentos
[ @capture\_instance = ] 'capture_instance'
É o nome da instância de captura associada à tabela de origem. capture_instance é sysname e não pode ser NULL.Para fazer relatório nas instâncias de captura da tabela, execute o procedimento armazenado sys.sp_cdc_help_change_data_capture.
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. |
column_name |
sysname |
Nome da coluna de origem capturada. |
column_id |
int |
ID da coluna na tabela de origem. |
ordinal_position |
int |
Posição da coluna na tabela de origem. |
data_type |
sysname |
Tipo de dados da coluna. |
character_maximum_length |
int |
Comprimento de máximo de caractere da coluna com base em caractere, caso contrário é NULL. |
NUMERIC_PRECISION |
tinyint |
Precisão da coluna com base numérica, caso contrário é NULL. |
numeric_precision_radix |
smallint |
Precisão base da coluna com base numérica, caso contrário é NULL. |
numeric_scale |
int |
Escala coluna com base numérica, caso contrário é NULL. |
datetime_precision |
smallint |
Precisão da coluna com base em data e hora, caso contrário é NULL. |
Comentários
Use sys.sp_cdc_get_captured_columns para obter informações de coluna sobre as colunas capturadas retornadas ao consultar as funções de instância de captura cdc.fn_cdc_get_all_changes_<capture_instance> ou cdc.fn_cdc_get_net_changes_<capture_instance> Os nomes de coluna, ID e posição permanecem constantes durante a duração da instância de captura. Somente o tipo de dados de coluna é alterado quando o tipo de dados da coluna de origem subjacente na tabela controlada é alterado. Colunas adicionadas ou excluídas de uma tabela de origem não têm nenhum impacto nas colunas capturadas de instâncias de captura existentes. Para obter mais informações, consulte Configurando o Change Data Capture.
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 de origem. Qualquer mudança de DDL que modificou a estrutura de uma coluna de origem localizada é retornada no conjunto de resultados.
Permissões
Requer associação na função de banco de dados fixa 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 associada para a instância de captura tiver sido definida, faça associação nessa função de banco de dados. Quando o chamador não tiver permissão para exibir os dados de origem, a função retornará o erro 22981 (O objeto não existe ou o acesso a ele é negado).
Exemplos
O exemplo a seguir retorna informações sobre as colunas capturadas na instância de captura HumanResources_Employee.
USE AdventureWorks;
GO
EXECUTE sys.sp_cdc_get_captured_columns
@capture_instance = N'HumanResources_Employee';
GO
Consulte também