Aracılığıyla paylaş


HDM.<capture_instance>_ct (Transact-SQL)

kaynaktabloDeğiştir veri yakalama etkinleştirildiğinde değişikliği tablo oluşturulur. tablo her biri için bir satır ekleme ve silme işlemi kaynaktablokarşı gerçekleştirilen ve kaynaktablokarşı gerçekleştirilen işlemi her iki satır güncelleştirme verir. Değişikliği tablo adı, kaynaktablo etkin saat belirtilmediği durumlarda adı türetilir. Adı HDM biçimidir.capture_instance_ct burada capture_instance kaynak tablo şema adı ve kaynak tablo adı biçiminde schema_table.Örneğin, tablo Person.Address de AdventureWorks2008R2 örnek veritabanı Değiştir veri yakalama için etkin, türetilmiş değişikliği tablo adı olacak HDM.Person_Address_CT.

sistem tabloları doğrudan sorgulamaz emin öneririz.Bunun yerine, yürütmek cdc.fn_cdc_get_all_changes_<capture_instance> ve cdc.fn_cdc_get_net_changes_<capture_instance> fonksiyonlar.

Sütun adı

Veri türü

Açıklama

__$ start_lsn

binary(10)

Değişikliği yürütme hareket ile ilişkili günlük sıra numarası (SSN).

Tüm değişiklikleri aynı harekette kaydedilmiş aynı yürütme SSNpaylaşın.Örneğin, bir kaynak tablo silme işlemi iki satır kaldırırsa, tablo Değiştir aynı her iki satır içerir __$ start_lsn değer.

__$ end_lsn

binary(10)

Yalnızca bilgi amaçlı olarak belirtilmiştir. Desteklenmez. Gelecekteki uyumluluk garanti edilmez.

De SQL Server 2008, bu sütun her zaman null.

__$ seqval

binary(10)

Bir hareket içinde satır değişiklikleri sipariş etmek için kullanılan sıra değeri.

__$ işlemi

int

Değişikliği ile ilişkili veri işleme dili (DML) işlemi tanımlar.Aşağıdakilerden biri olabilir:

1 = delete

2 = Ekle

3 = güncelleştirme (eski değerler)

Sütun veri güncelleştirme deyimyürütmeden önce satır değerleri vardır.

4 = Güncelleştirme (yeni değerler)

Sütun veri güncelleştirme deyimyürüttükten sonra satır değeri vardır.

__$ update_mask

varbinary(128)

Değiştirilen bu sütunları tanımlama değişikliği tablo sütun sıra sayıları dayalı bir bit maskesi.

<Yakalanan kaynak tablo sütunları>

değişir

Değişikliği tablo kalan sütunlar yakalama örnek oluşturulduğunda, yakalanan sütun olarak tanımlananların kaynaktablo sütunları olan. Yakalanan sütun listesinden hiçbir sütun belirtilmemiş, kaynak tablo tüm sütunları bu tablodahil edilir.

Açıklamalar

Yakalanan sütun veri türleri

Yakalanan sütunları bu tablo dahil, kendilerine karşılık gelen kaynak sütunlar aşağıdaki istisnalar aynı veri türüne ve değer vardır:

  • Timestampsütunları olarak tanımlanan binary(8).

  • Identitysütunları olarak tanımlanır int veya bigint.

Ancak, bu sütunların değerleri kaynak sütun değerlerini aynıdır.

Büyük nesne veri türleri

lob veri türleri için varchar(max), nvarchar(max), varbinary(max), image, text, ntext, ve xml, eski değer yalnızca görünür güncelleştirme eski satırı, sütun gerçekten değişti sırasında güncelleştirme.Diğer veri türleri için sütun değeri her zaman her iki güncelleştirme satırlarda görüntülenir.

Varsayılan olarak, tek bir INSERT, update, WRITETEXT veya updatetext deyim de yakalanan sütun eklenebilecek en fazla 65.536 baytı ya da 64 kb boyutudur.Bu boyutu daha büyük lob veri desteği artırmak için en büyük metin çoğaltma boyutu seçeneği en büyük boyutu belirtmek için.Daha fazla bilgi için, bkz. Nasıl yapılır: En büyük metin çoğaltma boyutu seçeneği (SQL Server Management Studio'yu) yapılandırma.

Veri tanım dili değişiklikler

DDL değişiklikleri ekleme veya sütun bırakarak gibi kaynak tabloolarak kaydedildiyse cdc.ddl_history tablo.Bu değişikliklerin, değişikliği tablouygulanmaz.Diğer bir deyişle, değişiklik tablo tanımını sabitkalır.Değişikliği tablosatır eklerken, yakalama işlemi kaynaktabloile ilgili yakalanan sütun listesinde görünmüyor bu sütunlar yoksayar. Artık kaynaktabloyakalanan sütun listede bir sütun görünür, sütun null değeri atanır.

kaynaktablo sütun veri türünü değiştirerek de kaydediliyor cdc.ddl_historytablo. Ancak, bu değişiklik değişikliği tablotanımını.Yakalama işlemi için kaynaktabloyaptığınız DDL değişikliği için günlük kaydı karşılaştığında yakalanan sütun tablo Değiştir veri türü değiştirildi.

kaynaktablo veri türü boyutunu azaltır şekilde yakalanan sütun veri türünü değiştirmeniz gerekirse, değişikliği tablo sütun eşdeğer başarıyla değiştirilebilir emin olmak için aşağıdaki adımları izleyin.

  1. kaynaktablo uyma planlanmış veri türü boyuta değiştirilecek sütun değerleri güncelleştirin. Örneğin, veri türünü değiştirmek, int için smallint, tam bir boyuta değerleri güncelleştirmek smallint aralık32,768 ile 32,767.

  2. Değişikliği tabloeşdeğer sütuniçin aynı güncelleştirme işlemi gerçekleştirin.

  3. kaynaktablo yeni veri türünü belirleyerek değiştirebilirsiniz. Değişikliği tabloveri türü değişikliği başarıyla duyurulur.

Veri düzenleme dili değişiklikler

Değişiklik veri yakalama etkin kaynak tabloINSERT, update ve delete işlemler gerçekleştirildiğinde bu DML işlemleri kayıt veritabanı işlem günlüğünün görünür.Değişiklik veri yakalama işlemi alır bilgi işlem günlüğü bu değişiklikler hakkındaki yakalama ve bir veya iki satır değişikliği kaydetmek için değişikliği tablo ekler.Değişikliği tablo girdileri yürütme genellikle değişiklikler yerine tek bir giriş için bir grup üzerinde yapılması gerekiyor, ancak bunlar için kaynaktablo, kaydedilmiş aynı sırada değişiklik tablo girişler eklenir.

Değişikliği tablo girişi içinde __$ start_lsn yürütmeSSN değişikliği kaynaktabloile ilişkili kaydetmek için kullanılansütun ve sütun__$ seqval değişiklik kendi işlem içinde sipariş etmek için kullanılır. Birlikte, bu meta veriler sütunları kaynak değişiklikleri yürütme sırası korunur emin olmak için kullanılır.Yakalama işlemini, işlem günlük dosyasını değişiklik bilgilerini alır için değişikliği tablo girdilerini kendilerine karşılık gelen kaynak tablo değişiklikleri eşzamanlı olarak görünmez dikkat etmek önemlidir.Bunun yerine, yakalama işlemi işlem günlüğü ilgili değişiklik girişlerinden işledikten sonra karşılık gelen değişiklikleri zaman uyumsuz olarak görünür.

İçin ekleme ve silme işlemleri, güncelleştirme maskesindeki tüm bit küme.Güncelleştirme işlemlerini, güncelleştirmeyi, hem eski güncelleştirme maskesi ve güncelleştirme için yeni satır güncelleştirme sırasında değiştirilen sütunları yansıtacak şekilde değiştirilecektir.