Share via


sys.sp_cdc_generate_wrapper_function (Transact-SQL)

Génère des scripts qui permettent de créer des fonctions wrapper pour les fonctions de requête de capture de données modifiées disponibles dans SQL Server. L'API prise en charge dans les wrappers générés permet de spécifier l'intervalle de requête en tant qu'intervalle datetime. La fonction peut ainsi être utilisée dans de nombreuses applications d'entreposage, y compris celles que développent les concepteurs de packages Integration Services qui utilisent la technologie de capture de données modifiées pour déterminer la charge incrémentielle.

Icône Lien de rubriqueConventions de syntaxe Transact-SQL

Syntaxe

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'

Arguments

  • [ @capture\_instance = ] 'capture_instance'
    Instance de capture pour laquelle les scripts seront générés. capture_instance est de type sysname et a la valeur NULL par défaut. Si une valeur est omise ou définie explicitement sur NULL, des scripts wrapper sont générés pour toutes les instances de capture.

  • [ @closed\_high\_end\_point = ] high_end_pt_flag
    Bit indicateur qui indique si les modifications dont l'heure de validation est égale au point de terminaison supérieur doivent être incluses dans l'intervalle d'extraction par la procédure générée. high_end_pt_flag est de type bit et a la valeur 1 par défaut, qui indique que le point de terminaison doit être inclus. La valeur 0 indique que toutes les heures de validation seront strictement inférieures au point de terminaison supérieur.

  • [ @column\_list = ] 'column_list'
    Liste de colonnes capturées à inclure dans le jeu de résultats retourné par la fonction wrapper. column_list est de type nvarchar(max) et a la valeur NULL par défaut. Lorsque la valeur NULL est spécifiée, toutes les colonnes capturées sont incluses.

  • [ @update\_flag\_list = ] 'update_flag_list'
    Liste de colonnes incluses pour lesquelles un indicateur de mise à jour est inclus dans le jeu de résultats retourné par la fonction wrapper. update_flag_list est de type nvarchar(max) et a la valeur NULL par défaut. Lorsque la valeur NULL est spécifiée, aucun indicateur de mise à jour n'est inclus.

Valeurs de code de retour

0 (réussite) ou 1 (échec)

Jeux de résultats

Nom de la colonne

Type de la colonne

Description

function_name

nvarchar(145)

Nom de la fonction générée.

create_script

nvarchar(max)

Script qui crée la fonction wrapper de l'instance de capture.

Notes

Le script qui crée la fonction permettant d'encapsuler la requête all-changes pour une instance de capture est toujours généré. Si l'instance de capture prend en charge des requêtes net-changes, le script permettant de générer un wrapper pour cette requête est également généré.

Exemples

L'exemple suivant montre comment utiliser sys.sp_cdc_generate_wrapper_function pour créer des wrappers pour toutes les fonctions de capture de données modifiées.

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;