sys.sp_cdc_generate_wrapper_function (Transact-SQL)
Aplica-se: SQL Server
Gera scripts para criar funções de wrapper para as funções de consulta de captura de dados de alteração que estão disponíveis no SQL Server. A API suportada nos wrappers gerados permite especificar o intervalo de consulta como um intervalo de data e hora. Essa especificação torna a função boa para uso em muitos aplicativos de armazenamento, incluindo os aplicativos desenvolvidos por designers de pacotes do Integration Services que estão usando a tecnologia de captura de dados de alterações para determinar a carga incremental.
Para obter mais informações sobre as funções geradas pelo sys.sp_cdc_generate_wrapper_function
, consulte sys.fn_all_changes_<capture_instance> e sys.fn_net_changes_<capture_instance>.
Convenções de sintaxe de Transact-SQL
Sintaxe
sys.sp_cdc_generate_wrapper_function
[ [ @capture_instance sysname = ] 'capture_instance' ]
[ , [ @closed_high_end_point = ] closed_high_end_pt ]
[ , [ @column_list = ] N'column_list' ]
[ , [ @update_flag_list = ] N'update_flag_list' ]
[ ; ]
Argumentos
@capture_instance [ = ] 'capture_instance'
A instância de captura para a qual os scripts são gerados @capture_instance é sysname e tem um valor padrão de NULL
. Se um valor for omitido ou definido explicitamente como NULL
, scripts de wrapper serão gerados para todas as instâncias de captura.
@closed_high_end_point [ = ] high_end_pt_flag
O bit de sinalizador que indica se as alterações que têm um tempo de confirmação igual ao ponto de extremidade alto são incluídas no intervalo de extração pelo procedimento gerado. @closed_high_end_point é bit e tem um valor padrão de , o que indica que o ponto de 1
extremidade deve ser incluído. Um valor de indica que todos os tempos de 0
confirmação são estritamente menores que o ponto de extremidade alto.
@column_list [ = ] N'column_list'
Uma lista de colunas capturadas incluídas no conjunto de resultados que é retornada pela função wrapper. @column_list é nvarchar(max) e tem um valor padrão de NULL
. Quando NULL
for especificado, todas as colunas capturadas serão incluídas.
@update_flag_list [ = ] N'update_flag_list'
Uma lista de colunas incluídas para as quais um sinalizador de atualização está incluído no conjunto de resultados retornado pela função wrapper. @update_flag_list é nvarchar(max) e tem um valor padrão de NULL
. Quando NULL
é especificado, nenhum sinalizador de atualização é incluído.
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Conjunto de resultados
Nome da coluna | Tipo de coluna | Descrição |
---|---|---|
function_name |
Nvarchar(145) | Nome da função gerada. |
create_script |
nvarchar(max) | O script que cria a função wrapper capture-instance. |
Comentários
O script que cria a função para incluir a consulta de todas as alterações para uma instância de captura sempre é gerado. Se a instância de captura der suporte a consultas net-changes, o script para gerar um wrapper para essa consulta também será gerado.
Exemplos
O exemplo a seguir mostra como é possível usar sys.sp_cdc_generate_wrapper_function
para criar wrappers para todas as funções de captura de dados de alteração.
DECLARE @wrapper_functions TABLE (
function_name SYSNAME,
create_script NVARCHAR(MAX)
);
INSERT INTO @wrapper_functions
EXEC sys.sp_cdc_generate_wrapper_function;
DECLARE @create_script NVARCHAR(MAX);
DECLARE #hfunctions CURSOR LOCAL FAST_FORWARD
FOR
SELECT create_script
FROM @wrapper_functions;
OPEN #hfunctions;
FETCH #hfunctions
INTO @create_script;
WHILE (@@fetch_status <> -1)
BEGIN
EXEC sp_executesql @create_script
FETCH #hfunctions
INTO @create_script
END;
CLOSE #hfunctions;
DEALLOCATE #hfunctions;