Aracılığıyla paylaş


sys.sp_cdc_change_job (Transact-sql)

Bir değişiklik veri yakalama Temizleme veya yakalama işinde geçerli veritabanı yapılandırmasını değiştirir. İşin geçerli yapılandırmasını görüntülemek için dbo.cdc_jobs tablo veya kullanmak sp_cdc_help_jobs.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

sys.sp_cdc_change_job [ [ @job_type = ] 'job_type' ]
    [ , [ @maxtrans = ] max_trans ] 
    [ , [ @maxscans = ] max_scans ] 
    [ , [ @continuous = ] continuous ] 
    [ , [ @pollinginterval = ] polling_interval ] 
    [ , [ @retention ] = retention ] 
    [ @threshold = ] 'delete threshold'

Bağımsız değişkenler

  • @job_type='job_type'
    Değiştirmek için işi tipi. job_typeise nvarchar(20)'yakalama' varsayılan. Geçerli girişleri olan 'yakalama' ve 'Temizleme'.

  • **@maxtrans=**max_trans
    Hareketleri her tarama döngüsü işlemek için en fazla sayısı. max_transise intnull varsayılan ile hangi gösterir bu parametre için bir değişiklik yok. Belirtilmişse, değerin pozitif bir tamsayı olmalıdır.

    max_transyakalama işler için geçerlidir.

  • **@maxscans=**max_scans
    Tarama döngüsü tüm satırlar günlükten ayıklamak için yürütmek için en fazla sayısı. max_scansise intnull varsayılan ile hangi gösterir bu parametre için bir değişiklik yok.

    max_scanyakalama işler için geçerlidir.

  • **sürekli @=**continuous
    Yakalama iş sürekli çalışacak şekilde olup olmadığını gösterir (1), ya da yalnızca bir kez çalışmak (0). continuousise bitnull varsayılan ile hangi gösterir bu parametre için bir değişiklik yok.

    Ne zaman continuous= 1, sp_cdc_scan iş günlük tarar ve kadar işler ( max_trans * max_scans) hareketleri. Sonra belirtilen saniye bekler polling_intervalsonraki günlük tarama başlamadan önce.

    Ne zaman continuous= 0, sp_cdc_scan işi yürütür kadar max_scanskadar işlem günlüğünü, inceden inceye gözden geçirmek max_transHareketler sırasında her inceden inceye gözden geçirmek ve sonra çıkar.

    Eğer sürekli @ 1-0 olarak değiştirdi @ pollinginterval otomatik olarak 0 değerine ayarlanır. Belirtilen bir değer @ pollinginterval dışında 0 sayılır.

    Eğer sürekli @ ihmal veya açıkça null olarak ayarlayın ve @ pollinginterval açıkça bir değer 0'dan büyük ayarlanmış sürekli @ otomatik olarak 1 değerine ayarlanır.

    continuousyakalama işler için geçerlidir.

  • **@ pollinginterval=**polling_interval
    Günlük tarama döngüleri arasındaki saniye sayısı. polling_intervalise bigintnull varsayılan ile hangi gösterir bu parametre için bir değişiklik yok.

    polling_intervalyalnızca yakalama için geçerli olan zaman işler continuous1'e ayarlıdır.

  • **@ saklama=**retention
    Değişiklik tabloları tutulacak satır değiştirme dakika vardır. retentionise bigintnull varsayılan ile hangi gösterir bu parametre için bir değişiklik yok. 52494800 (100 Yıl) en büyük değerdir. Belirtilmişse, değerin pozitif bir tamsayı olmalıdır.

    retentiontemizlik işleri için geçerlidir.

  • @threshold='delete threshold'
    Temizleme üzerinde tek bir deyimi kullanılarak silinebilir silme girdileri en fazla sayısı. delete thresholdise bigintnull varsayılan ile hangi gösterir bu parametre için bir değişiklik yok. delete thresholdtemizlik işleri için geçerlidir.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (hata)

Sonuç Kümeleri

Hiçbiri

Açıklamalar

Parametre belirtilmezse, ilişkili değeri dbo.cdc_jobs tablosu güncelleştirilmedi. Bir parametre null parametresi atlanmıştır sanki değerlendirilir açıkça için ayarlayın.

İş türü için geçersiz bir parametre belirtilmesi deyimi başarısız olmasına neden olur.

Değişiklikler iş değil etkili iş kullanarak durduruluncaya kadar ve kullanarak yeniden olmazsp_cdc_stop_jobve.

İzinler

Üyelik db_owner veritabanı rolü.

Örnekler

A.Yakalama iş değiştirme

Aşağıdaki örnek güncelleştirmeleri @job\_type, @maxscans, ve @maxtransbir yakalama iş parametrelerini AdventureWorks2012veritabanı. Diğer geçerli parametreler için bir yakalama iş @continuousve @pollinginterval, göz ardı edilir; değerleri değiştirilmez.

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_change_job 
    @job_type = N'capture',
    @maxscans = 1000,
    @maxtrans = 15;
GO

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_change_job 
    @job_type = N'capture',
    @maxscans = 1000,
    @maxtrans = 15;
GO

B.Temizleme işi değiştirme

Aşağıdaki örnek temizleme işi de güncelleştirir AdventureWorks2012veritabanı. Tüm geçerli parametreler için bu iş türü dışında @ eşik, belirtilir. Değeri @ eşik değil.

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_change_job 
    @job_type = N'cleanup',
    @retention = 2880;
GO

USE AdventureWorks2012;
GO
EXECUTE sys.sp_cdc_change_job 
    @job_type = N'cleanup',
    @retention = 2880;
GO

Ayrıca bkz.

Başvuru

dbo.cdc_jobs (Transact-sql)

sys.sp_cdc_enable_table (Transact-sql)

sys.sp_cdc_add_job (Transact-sql)