sys.sp_cdc_generate_wrapper_function (Transact-SQL)

Применимо к:SQL Server

Создает скрипты для создания функций-оболочки для функций запросов отслеживания измененных данных, доступных в SQL Server. API, поддерживаемый в созданных оболочках, позволяет указывать интервал запроса в качестве интервала даты и времени. Эта спецификация позволяет использовать функцию во многих хранилищах приложений, включая те приложения, разработанные конструкторами пакетов Служб Integration Services, которые используют технологию отслеживания измененных данных для определения добавочной нагрузки.

Дополнительные сведения о функциях, <созданных sys.fn_all_changes_sys.sp_cdc_generate_wrapper_functioncapture_instance> (Transact-SQL) и sys.fn_net_changes_<capture_instance> (Transact-SQL).

Соглашения о синтаксисе Transact-SQL

Синтаксис

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' ]
[ ; ]

Аргументы

[ @capture_instance = ] 'capture_instance'

Экземпляр записи, создаваемый для @capture_instance , является sysname и имеет значение NULL по умолчанию. Если значение опущено или явно задано значение NULL, скрипты оболочки создаются для всех экземпляров записи.

[ @closed_high_end_point = ] high_end_pt_flag

Бит флага, указывающий, включены ли изменения, которые имеют время фиксации, равное высокой конечной точке, в интервал извлечения с помощью созданной процедуры. @closed_high_end_point имеет значение1по умолчанию, указывающее, что конечная точка должна быть включена. Значение указывает, что все время фиксации 0 строго меньше, чем высокая конечная точка.

[ @column_list = ] N'column_list'

Список захваченных столбцов, включенных в результирующий набор, возвращаемый функцией-оболочкой. @column_list имеет значение nvarchar(max) и имеет значение NULL по умолчанию. При значении NULL включаются все отслеживаемые столбцы.

[ @update_flag_list = ] N'update_flag_list'

Список включенных столбцов, для которых флаг обновления включен в результирующий набор, возвращаемый функцией-оболочкой. @update_flag_list имеет значение nvarchar(max) и имеет значение NULL по умолчанию. При значении NULL флаги обновления не включаются.

Значения кода возврата

0 (успешно) или 1 (сбой).

Результирующий набор

Имя столбца Тип столбца Description
function_name nvarchar(145) Имя формируемой функции.
create_script nvarchar(max) Скрипт, создающий функцию оболочки экземпляра записи.

Замечания

Скрипт, создающий функцию-оболочку для запроса всех изменений на экземпляре отслеживания, формируется обязательно. Если экземпляр записи поддерживает запросы net-changes, скрипт для создания оболочки для этого запроса также создается.

Примеры

В следующем примере показано, как использовать системную хранимую процедуру sys.sp_cdc_generate_wrapper_function для создания оболочек для всех функций системы отслеживания измененных данных.

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;