sys.sp_cdc_generate_wrapper_function (Transact-SQL)

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

Значок ссылки на разделСоглашение о синтаксисе в Transact-SQL

Синтаксис

sys.sp_cdc_generate_wrapper_function
    [ [ @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'
    Экземпляр отслеживания, для которого необходимо сформировать сценарии. Аргумент capture_instance имеет тип данных sysname и значение по умолчанию NULL. Если его значение пропущено либо явно определено как NULL, сценарии оболочки формируются для всех экземпляров отслеживания.

  • [ @closed\_high\_end\_point = ] high_end_pt_flag
    Битовый флаг, указывающий, подлежат ли изменения, зафиксированные в момент времени, совпадающий с верхней конечной точкой, включению сформированной процедурой в интервал извлечения. Аргумент high_end_pt_flag имеет тип данных bit и значение по умолчанию 1, означающее, что конечная точка должна быть включена. Значение 0 указывает на то, что все значения времени фиксации должны быть строго меньше верхней конечной точки.

  • [ @column\_list = ] 'column_list'
    Список отслеживаемых столбцов, подлежащих включению в результирующий набор, возвращаемый функцией-оболочкой. Аргумент column_list имеет тип данных nvarchar(max) и значение по умолчанию NULL. При значении NULL включаются все отслеживаемые столбцы.

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

Возвращаемые значения

0 (успешное завершение) или 1 (неуспешное завершение)

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

Имя столбца

Тип столбца

Описание

function_name

nvarchar(145)

Имя формируемой функции.

create_script

nvarchar(max)

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

Замечания

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

Примеры

В следующем примере показано, как использовать системную хранимую процедуру 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;