sys.sp_cdc_generate_wrapper_function (Transact-SQL)

Generiert Skripts zur Erstellung von Wrapperfunktionen für die in SQL Server verfügbaren Change Data Capture-Abfragefunktionen. Die in den generierten Wrappern unterstützte API ermöglicht die Angabe des Abfrageintervalls als datetime-Intervall. Aus diesem Grund eignet sich die Funktion ideal in vielen Warehousinganwendungen, einschließlich der Anwendungen, die von Integration Services-Paketdesignern entwickelt werden, die Change Data Capture-Technologie zur Bestimmung inkrementeller Ladevorgänge verwenden.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

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'

Argumente

  • [ @capture\_instance = ] 'capture_instance'
    Die Aufzeichnungsinstanz, für die Skripts generiert werden sollen. capture_instance ist vom Datentyp sysname; der Standardwert ist NULL. Wenn ein Wert weggelassen oder explizit auf NULL gesetzt wird, werden Wrapperskripts für alle Aufzeichnungsinstanzen generiert.

  • [@ closed_high_end_point =] high_end_pt_flag
    Das Flagbit, das kennzeichnet, ob Änderungen, deren Commitzeit mit dem oberen Endpunkt übereinstimmt, von der generierten Prozedur in das Extrahierungsintervall eingeschlossen werden. high_end_pt_flag ist vom Datentyp bit und hat den Standardwert 1, der angibt, dass der Endpunkt eingeschlossen wird. Ein Wert von 0 gibt an, dass alle Commitzeiten unter dem oberen Endpunkt liegen müssen.

  • [ @column\_list = ] 'column_list'
    Eine Liste mit aufgezeichneten Spalten, die in das von der Wrapperfunktion zurückgegebene Resultset eingeschlossen werden müssen. column_list ist vom Datentyp nvarchar(max); der Standardwert ist NULL. Bei Angabe von NULL werden alle aufgezeichneten Spalten eingeschlossen.

  • [ @update\_flag\_list = ] 'update_flag_list'
    Eine Liste mit aufgenommenen Spalten, für die ein Aktualisierungsflag in das von der Wrapperfunktion zurückgegebene Resultset eingeschlossenen wird. update_flag_list ist vom Datentyp nvarchar(max); der Standardwert ist NULL. Bei Angabe von NULL werden keine Aktualisierungsflags eingeschlossen.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Spaltenname

Spaltentyp

Beschreibung

function_name

nvarchar(145)

Name der generierten Funktion.

create_script

nvarchar(max)

Das Skript, mit dem die Wrapperfunktion der Aufzeichnungsinstanz erstellt wird.

Hinweise

Das Skript zur Erstellung der Wrapperfunktion für eine Abfrage aller Änderungen für eine Aufzeichnungsinstanz wird immer generiert. Wenn die Aufzeichnungsinstanz Abfragen für Nettoänderungen unterstützt, wird auch das Skript zur Generierung einer Wrapperfunktion für diese Abfrage generiert1.

Beispiele

Das folgende Beispiel zeigt, wie Sie mit sys.sp_cdc_generate_wrapper_function Wrapper für alle Change Data Capture-Funktionen erstellen.

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;