Aracılığıyla paylaş


sys.fn_cdc_is_bit_set (Transact-sql)

Yakalanan sütun sıralı konumunu içinde sağlanan bir bit maskesi ayarlanmış olup olmadığını kontrol ederek güncelleştirilip güncelleştirilmediğini gösterir.

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

Sözdizimi

sys.fn_cdc_is_bit_set ( position , update_mask )

Bağımsız değişkenler

  • position
    Maskedeki denetlemek için sıralı konumudur. positionis int.

  • update_mask
    Maske tanıtan sütunları güncelleştirilen olduğunu. update_maskis varbinary(128).

Dönüş Türü

bit

Açıklamalar

Bu işlev genellikle sütun değişip değişmediğini belirtmek için Değiştir veri sorgusu bir parçası olarak kullanılır. Bu senaryoda, işlev sys.fn_cdc_get_column_ordinal önce sorgu gerekli sütun sıralı almak için kullanılır. sys.fn_cdc_is_bit_set sonra her satır döndürülür, döndürülen sonuç kümesi sütun özgü bilgileri sağlayan değişiklik veri uygulanır.

Bu işlev işlevini yerine kullanmanızı öneririz sys.fn_cdc_has_column_changed sütunları döndürülen sonuç kümesindeki tüm satırları değişmiş olup olmadığını belirlerken.

İzinler

Üyelik Genel rolü.

Örnekler

Aşağıdaki örnek sys.fn_cdc_is_bit_setbaşına sorgu işlevi tarafından oluşturulan sonuç kümesi için cdc.fn_cdc_get_all_changes_HR_Departmentsütun 'IsGroupNmUpdated' precomputed sütun sıralı ve değerini kullanarak __$update_maskbağımsız çağrısı.

USE AdventureWorks2012;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10), @GroupNm_ordinal int;
SET @from_lsn = sys.fn_cdc_get_min_lsn('HR_Department');
SET @to_lsn = sys.fn_cdc_get_max_lsn();
SET @GroupNm_ordinal = sys.fn_cdc_get_column_ordinal('HR_Department','GroupName');
SELECT sys.fn_cdc_is_bit_set(@GroupNm_ordinal,__$update_mask) as 'IsGroupNmUpdated', *
FROM cdc.fn_cdc_get_all_changes_HR_Department( @from_lsn, @to_lsn, 'all')
WHERE __$operation = 4;
GO

USE AdventureWorks2012;
GO
DECLARE @from_lsn binary(10), @to_lsn binary(10), @GroupNm_ordinal int;
SET @from_lsn = sys.fn_cdc_get_min_lsn('HR_Department');
SET @to_lsn = sys.fn_cdc_get_max_lsn();
SET @GroupNm_ordinal = sys.fn_cdc_get_column_ordinal('HR_Department','GroupName');
SELECT sys.fn_cdc_is_bit_set(@GroupNm_ordinal,__$update_mask) as 'IsGroupNmUpdated', *
FROM cdc.fn_cdc_get_all_changes_HR_Department( @from_lsn, @to_lsn, 'all')
WHERE __$operation = 4;
GO

Ayrıca bkz.

Başvuru

İşlevler (Transact-sql) verisini Değiştir yakalama

sys.fn_cdc_get_column_ordinal (Transact-sql)

sys.fn_cdc_has_column_changed (Transact-sql)

CDC.fn_cdc_get_all_changes_<capture_instance> (Transact-sql)

değiştirir<capture_instance> (Transact-sql)

Kavramlar

Değişiklik veri yakalama hakkında