Was this page helpful?
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

sys.sp_cdc_generate_wrapper_function (Transact-SQL)


Applies To: SQL Server 2014, SQL Server 2016 Preview

Generates scripts to create wrapper functions for the change data capture query functions that are available in SQL Server. The API that is supported in the generated wrappers enables the query interval to be specified as a datetime interval. This makes the function good for use in many warehousing applications, including those that are developed by Integration Services package designers who are using change data capture technology to determine incremental load.

Applies to: SQL Server (SQL Server 2008 through current version).

Topic link icon Transact-SQL Syntax Conventions

    [ [ @capture_instance sysname = ] 'capture_instance'
    [ , [ @closed_high_end_point = ] closed_high_end_pt
    [ , [ @column_list = ] 'column_list'

    [ , [ @update_flag_list = ] 'update_flag_list'

[ @capture_instance = ] 'capture_instance'

Is the capture instance that scripts are to be generated for. capture_instance is sysname and has a default value of NULL. If a value is omitted or explicitly set to NULL, wrapper scripts are generated for all capture instances

[ @closed_high_end_point = ] high_end_pt_flag

Is the flag bit that indicates whether changes that have a commit time equal to the high endpoint are to be included within the extraction interval by the generated procedure. high_end_pt_flag is bit and has a default value of 1, which indicates that the endpoint should be included. A value of 0 indicates that all commit times will be strictly less than the high endpoint.

[ @column_list = ] 'column_list'

Is a list of captured columns to be included in the result set that is returned by the wrapper function. column_list is nvarchar(max) and has a default value of NULL. When NULL is specified, all captured columns are included.

[ @update_flag_list = ] 'update_flag_list'

Is a list of included columns for which an update flag is included in the result set that is returned by the wrapper function. update_flag_list is nvarchar(max) and has a default value of NULL. When NULL is specified, no update flags are included.

0 (success) or 1 (failure)

Column name

Column type




Name of the generated function.



Is the script that creates the capture-instance wrapper function.

The script that creates the function to wrap the all-changes query for a capture instance is always generated. If the capture instance supports net-changes queries, the script to generate a wrapper for this query is also generatedl.

The following example show how you can use sys.sp_cdc_generate_wrapper_function to create wrappers for all the change data capture functions.

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
    SELECT create_script FROM @wrapper_functions;

OPEN #hfunctions;
FETCH #hfunctions INTO @create_script;
WHILE (@@fetch_status <> -1)
    EXEC sp_executesql @create_script
    FETCH #hfunctions INTO @create_script

CLOSE #hfunctions;
DEALLOCATE #hfunctions;
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2015 Microsoft