Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Genereert scripts om wrapperfuncties te creëren voor de change data capture-queryfuncties die beschikbaar zijn in SQL Server. De API die in de gegenereerde wrappers wordt ondersteund, maakt het mogelijk het queryinterval als een datetime-interval te specificeren. Deze specificatie maakt de functie geschikt voor gebruik in veel opslagapplicaties, waaronder applicaties ontwikkeld door Integration Services-pakketontwerpers die change data capture-technologie gebruiken om de incrementele belasting te bepalen.
Voor meer informatie over de functies die door sys.sp_cdc_generate_wrapper_functionworden gegenereerd, zie sys.fn_all_changes_<capture_instance> en sys.fn_net_changes_<capture_instance>.
Transact-SQL syntaxis-conventies
Syntax
sys.sp_cdc_generate_wrapper_function
[ [ @capture_instance = ] N'capture_instance' ]
[ , [ @closed_high_end_point = ] closed_high_end_point ]
[ , [ @column_list = ] N'column_list' ]
[ , [ @update_flag_list = ] N'update_flag_list' ]
[ ; ]
Arguments
[ @capture_instance = ] N'capture_instance'
De capture-instantie waarvoor scripts worden gegenereerd @capture_instance is sysname en heeft een standaardwaarde van NULL. Als een waarde wordt weggelaten of expliciet op NULLwordt gezet, worden wrapper-scripts gegenereerd voor alle capture-instanties.
[ @closed_high_end_point = ] closed_high_end_point
De vlagbit die aangeeft of wijzigingen met een commit time gelijk aan het hoge eindpunt worden opgenomen in het extractieinterval door de gegenereerde procedure.
@closed_high_end_point is bit en heeft een standaardwaarde van 1, wat aangeeft dat het eindpunt moet worden opgenomen. Een waarde van 0 geeft aan dat alle commit-tijden strikt kleiner zijn dan het hoge eindpunt.
[ @column_list = ] N'column_list'
Een lijst van gevangen kolommen die zijn opgenomen in de resultaatset en die wordt teruggegeven door de wrapperfunctie.
@column_list is nvarchar(max) en heeft een standaardwaarde van NULL. Wanneer NULL gespecificeerd, worden alle gevangen kolommen opgenomen.
[ @update_flag_list = ] N'update_flag_list'
Een lijst van opgenomen kolommen waarvoor een update-vlag is opgenomen in de resultaatset die door de wrapperfunctie wordt teruggegeven.
@update_flag_list is nvarchar(max) en heeft een standaardwaarde van NULL. Wanneer NULL gespecificeerd, zijn er geen update-vlaggen inbegrepen.
Codewaarden retourneren
0 (geslaagd) of 1 (mislukt).
Resultaatset
| Kolomnaam | Kolomtype | Description |
|---|---|---|
function_name |
Nvarchar(145) | Naam van de gegenereerde functie. |
create_script |
nvarchar(max) | Het script dat de capture-instance wrapper-functie creëert. |
Remarks
Het script dat de functie maakt om de all-changes query voor een capture-instantie te wrappen, wordt altijd gegenereerd. Als de capture-instantie net-change-queries ondersteunt, wordt ook het script om een wrapper voor deze query te genereren gegenereerd.
Examples
Het volgende voorbeeld laat zien hoe je wrappers kunt sys.sp_cdc_generate_wrapper_function maken voor alle wijzigingsdata-capturefuncties.
DECLARE @wrapper_functions TABLE (
function_name SYSNAME,
create_script NVARCHAR (MAX));
INSERT INTO @wrapper_functions
EXECUTE sys.sp_cdc_generate_wrapper_function;
DECLARE @create_script AS 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
EXECUTE sp_executesql @create_script;
FETCH #hfunctions INTO @create_script;
END
CLOSE #hfunctions;
DEALLOCATE #hfunctions;