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 ayarlanıp ayarlanmadığını kontrol ederek güncelleştirildi olup olmadığını gösterir.

Topic link iconTransact-SQL sözdizimi kuralları

sys.fn_cdc_is_bit_set ( position , update_mask )

Bağımsız değişkenler

  • position
    Is the ordinal position in the mask to check.position is int.

  • update_mask
    Is the mask identifying updated columns.update_mask is varbinary(128).

Dönüş Türü

bit

Remarks

Bu işlev genellikle, veri değiştirme sorgusu bir parçası olarak bir sütun değişip değişmediğini belirtmek için kullanılır.In this scenario, the function sys.fn_cdc_get_column_ordinal is used before the query to obtain the required column ordinal.sys.fn_cdc_is_bit_set is then applied to each row of change data that is returned, providing the column-specific information as part of the returned result set.

Bu işlev, işlevn yerine kullanmanız önerilir sys.fn_cdc_has_column_changed sütunları döndürülen bir sonuç tüm satırlar için değişip değişmediğini belirlerken küme.

İzinler

Üyelik gerektirir Ortak roldür.

Örnekler

Aşağıdaki örnek kullanır. sys.fn_cdc_is_bit_set Sonuç önüne için küme sorgu işleviyle oluşturulan cdc.fn_cdc_get_all_changes_HR_Department Sütun 'IsGroupNmUpdated' sıra precomputed sütunu değeri ile __$update_mask arama için bağımsız değişkeni.

USE AdventureWorks;
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