sys.sp_cdc_add_job (Transact-SQL)sys.sp_cdc_add_job (Transact-SQL)

DIESES THEMA GILT FÜR:jaSQL Server (ab 2008)neinAzure SQL-DatenbankneinAzure SQL Data Warehouse neinParallel Data Warehouse THIS TOPIC APPLIES TO:yesSQL Server (starting with 2008)noAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

Erstellt einen Cleanup- oder Aufzeichnungsauftrag für Change Data Capture in der aktuellen Datenbank.Creates a change data capture cleanup or capture job in the current database.

Themenlinksymbol Transact-SQL Syntax Conventions (Transact-SQL-Syntaxkonventionen)Topic link icon Transact-SQL Syntax Conventions

SyntaxSyntax


sys.sp_cdc_add_job [ @job_type = ] 'job_type'  
    [ , [ @start_job = ] start_job ]   
    [ , [ @maxtrans = ] max_trans ]   
    [ , [ @maxscans = ] max_scans ]   
    [ , [ @continuous = ] continuous ]   
    [ , [ @pollinginterval = ] polling_interval ]   
    [ , [ @retention ] = retention ]   
    [ , [ @threshold ] = 'delete_threshold' ]  

ArgumenteArguments

[ @job_type= ] "Job_type"[ @job_type= ] 'job_type'
Der Typ des hinzuzufügenden Auftrags.Type of job to add. Der Standardwert ist ist nvarchar(20) und darf nicht NULL sein.job_type is nvarchar(20) and cannot be NULL. Gültige Eingaben sind 'capture' und 'Cleanup'.Valid inputs are 'capture' and 'cleanup'.

[ @start_job= ] Start_job[ @start_job= ] start_job
Ein Flag, das angibt, ob der Auftrag sofort nach dem Hinzufügen gestartet werden soll.Flag indicating whether the job should be started immediately after it is added. Start_job ist Bit hat den Standardwert 1.start_job is bit with a default of 1.

[ @maxtrans ] = Max_trans[ @maxtrans ] = max_trans
Maximale Anzahl der in jedem Scanzyklus zu verarbeitenden Transaktionen.Maximum number of transactions to process in each scan cycle. Max_trans ist Int hat den Standardwert von 500.max_trans is int with a default of 500. Wenn dieser Wert angegeben ist, muss er eine positive ganze Zahl annehmen.If specified, the value must be a positive integer.

Max_trans ist nur für aufzeichnungsaufträge gültig.max_trans is valid only for capture jobs.

[ @maxscans ] = Max_scans[ @maxscans ] =max_scans
Maximale Anzahl der Scanzyklen, die ausgeführt werden sollen, um alle Zeilen aus dem Protokoll zu extrahieren.Maximum number of scan cycles to execute in order to extract all rows from the log. Max_scans ist Int hat den Standardwert 10.max_scans is int with a default of 10.

Max_scan ist nur für aufzeichnungsaufträge gültig.max_scan is valid only for capture jobs.

[ @continuous ] = fortlaufende[ @continuous ] =continuous
Gibt an, ob der Aufzeichnungsauftrag kontinuierlich (1) oder nur einmal (0) ausgeführt wird.Indicates whether the capture job is to run continuously (1), or run only once (0). kontinuierliche ist Bit hat den Standardwert 1.continuous is bit with a default of 1.

Wenn fortlaufende = 1, der Sp_cdc_scan Auftrag überprüft das Protokoll und verarbeitet bis zu (Max_trans * Max_scans) Transaktionen.When continuous = 1, the sp_cdc_scan job scans the log and processes up to (max_trans * max_scans) transactions. Er wartet dann die Anzahl der Sekunden, die im angegebenen Polling_interval vor Beginn des nächsten protokollscans.It then waits the number of seconds specified in polling_interval before beginning the next log scan.

Wenn fortlaufende = 0, die Sp_cdc_scan Auftrag ausführt, bis zu Max_scans Scanvorgänge des Protokolls, verarbeitet dabei bis zu Max_trans Transaktion während jedes Scanvorgangs und wird dann beendet.When continuous = 0, the sp_cdc_scan job executes up to max_scans scans of the log, processing up to max_trans transaction during each scan, and then exits.

fortlaufende ist nur für aufzeichnungsaufträge gültig.continuous is valid only for capture jobs.

[ @pollinginterval ] = Polling_interval[ @pollinginterval ] =polling_interval
Anzahl der Sekunden zwischen Protokollscan navigieren.Number of seconds between log scan cycles. Polling_interval ist "bigint" hat den Standardwert 5.polling_interval is bigint with a default of 5.

Polling_interval ist nur für aufzeichnungsaufträge gültig Wenn Aufträge fortlaufende auf 1 festgelegt ist.polling_interval is valid only for capture jobs when continuous is set to 1. Wenn angegeben, kann der Wert nicht negativ sein und 24 Stunden nicht übersteigen.If specified, the value cannot be negative and cannot exceed 24 hours. Wenn der Wert 0 angegeben ist, wird zwischen den Protokollscans nicht gewartet.If a value of 0 is specified, there is no wait between log scans.

[ @retention ] = Aufbewahrung[ @retention ] =retention
Anzahl der Minuten, für die Änderungsdatenzeilen in Änderungstabellen beibehalten werden sollen.Number of minutes that change data rows are to be retained in change tables. Aufbewahrung ist "bigint" Standardwert ist 4320 (72 Stunden).retention is bigint with a default of 4320 (72 hours). Der Maximalwert beträgt 52494800 (100 Jahre).The maximum value is 52494800 (100 years). Wenn dieser Wert angegeben ist, muss er eine positive ganze Zahl annehmen.If specified, the value must be a positive integer.

Aufbewahrung ist nur für cleanupaufträge gültig.retention is valid only for cleanup jobs.

[ @threshold = ] "Delete_threshold"[ @threshold = ] 'delete_threshold'
Maximale Anzahl von Einträgen für Löschvorgänge, die mit einer einzelnen Anweisung beim Cleanup gelöscht werden können.Maximum number of delete entries that can be deleted by using a single statement on cleanup. Delete_threshold ist "bigint" hat den Standardwert von 5000.delete_threshold is bigint with a default of 5000.

RückgabecodewerteReturn Code Values

0 (Erfolg) oder 1 (Fehler)0 (success) or 1 (failure)

ResultsetsResult Sets

KeineNone

HinweiseRemarks

Es wird ein Cleanupauftrag mit den Standardwerten erstellt, wenn die erste Tabelle in der Datenbank für Change Data Capture aktiviert ist.A cleanup job is created using the default values when the first table in the database is enabled for change data capture. Es wird ein Aufzeichnungsauftrag mit den Standardwerten erstellt, wenn die erste Tabelle in der Datenbank für Change Data Capture aktiviert ist und keine Transaktionsveröffentlichungen für diese Datenbank vorhanden sind.A capture job is created using the default values when the first table in the database is enabled for change data capture and no transactional publications exist for the database. Wenn eine Transaktionsveröffentlichung vorhanden ist, wird der Transaktionsprotokollleser verwendet, um den Aufzeichnungsmechanismus zu ermöglichen. Ein separater Aufzeichnungsauftrag ist dann weder erforderlich noch zulässig.When a transactional publication exists, the transactional log reader is used to drive the capture mechanism, and a separate capture job is neither required nor allowed.

Da die Cleanup- und Aufzeichnungsaufträge standardmäßig erstellt werden, ist diese gespeicherte Prozedur nur dann erforderlich, wenn ein Auftrag explizit gelöscht wurde und erneut erstellt werden muss.Because the cleanup and capture jobs are created by default, this stored procedure is necessary only when a job has been explicitly dropped and must be recreated.

Der Name des Auftrags ist cdc. < Database_name >_cleanup oder cdc. < Database_name >_capture, wobei < Database_name > ist der Name der aktuellen Datenbank.The name of the job is cdc.<database_name>_cleanup or cdc.<database_name>_capture, where <database_name> is the name of the current database. Wenn ein Auftrag mit dem gleichen Namen bereits vorhanden ist, wird der Name mit einem Punkt angefügt (.) gefolgt von ein eindeutiger Bezeichner, z. B.: cdc. AdventureWorks_capture. A1ACBDED-13FC-428C-8302-10100EF74F52.If a job with the same name already exists, the name is appended with a period (.) followed by a unique identifier, for example: cdc.AdventureWorks_capture.A1ACBDED-13FC-428C-8302-10100EF74F52.

Verwenden Sie zum Anzeigen der aktuellen Konfigurations eines Cleanup- oder aufzeichnungsauftrag Auftrags Sp_cdc_help_jobs.To view the current configuration of a cleanup or capture job, use sp_cdc_help_jobs. Verwenden Sie zum Ändern der Konfiguration eines Auftrags Sp_cdc_change_job.To change the configuration of a job, use sp_cdc_change_job.

BerechtigungenPermissions

Erfordert die Mitgliedschaft in der Db_owner festen Datenbankrolle "".Requires membership in the db_owner fixed database role.

BeispieleExamples

A.A. Erstellen eines AufzeichnungsauftragsCreating a capture job

Im folgenden Beispiel wird ein Aufzeichnungsauftrag erstellt.The following example creates a capture job. In diesem Beispiel wird davon ausgegangen, dass der vorhandene Cleanupauftrag explizit gelöscht wurde und erneut erstellt werden muss.This example assumes that the existing cleanup job was explicitly dropped and must be recreated. Der Auftrag wird mit den Standardwerten erstellt.The job is created using the default values.

USE AdventureWorks2012;  
GO  
EXEC sys.sp_cdc_add_job @job_type = N'capture';  
GO  

B.B. Erstellen eines CleanupauftragsCreating a cleanup job

Im folgenden Beispiel wird ein Cleanupauftrag in der AdventureWorks2012AdventureWorks2012-Datenbank erstellt.The following example creates a cleanup job in the AdventureWorks2012AdventureWorks2012 database. Der @start_job-Parameter wird auf 0 festgelegt, und @retention wird auf 5760 Minuten (96 Stunden) festgelegt.The parameter @start_job is set to 0 and @retention is set to 5760 minutes (96 hours). In diesem Beispiel wird davon ausgegangen, dass der vorhandene Cleanupauftrag explizit gelöscht wurde und erneut erstellt werden muss.This example assumes that the existing cleanup job was explicitly dropped and must be recreated.

USE AdventureWorks2012;  
GO  
EXEC sys.sp_cdc_add_job  
     @job_type = N'cleanup'  
    ,@start_job = 0  
    ,@retention = 5760;  

Siehe auchSee Also

cdc_jobs ( Transact-SQL ) dbo.cdc_jobs (Transact-SQL)
Sys. sp_cdc_enable_table ( Transact-SQL ) sys.sp_cdc_enable_table (Transact-SQL)
Über Change Data Capture (SQL Server)About Change Data Capture (SQL Server)