sys.fn_cdc_is_bit_set (T-SQL)
Berlaku untuk: SQL Server
Menunjukkan apakah kolom yang diambil telah diperbarui dengan memeriksa apakah posisi ordinalnya diatur dalam bitmask yang disediakan.
Sintaks
sys.fn_cdc_is_bit_set ( position , update_mask )
Argumen
posisi
Apakah posisi ordinal dalam masker untuk diperiksa. posisi int.
update_mask
Apakah masker mengidentifikasi kolom yang diperbarui. update_mask adalah varbinary(128).
Jenis Hasil
bit
Keterangan
Fungsi ini biasanya digunakan sebagai bagian dari kueri data perubahan untuk menunjukkan apakah kolom telah berubah. Dalam skenario ini, fungsi sys.fn_cdc_get_column_ordinal digunakan sebelum kueri untuk mendapatkan ordinal kolom yang diperlukan. sys.fn_cdc_is_bit_set kemudian diterapkan ke setiap baris data perubahan yang dikembalikan, memberikan informasi khusus kolom sebagai bagian dari tataan hasil yang dikembalikan.
Sebaiknya gunakan fungsi ini alih-alih fungsi sys.fn_cdc_has_column_changed saat menentukan apakah kolom telah berubah untuk semua baris kumpulan hasil yang dikembalikan.
Izin
Memerlukan keanggotaan dalam peran publik .
Contoh
Contoh berikut menggunakan sys.fn_cdc_is_bit_set
untuk prepend ke kumpulan hasil yang dihasilkan oleh fungsi cdc.fn_cdc_get_all_changes_HR_Department
kueri kolom 'IsGroupNmUpdated
' menggunakan kolom ordinal yang telah dikomputasi dan nilai __$update_mask
sebagai argumen untuk panggilan.
USE AdventureWorks2022;
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
Lihat Juga
Mengubah Fungsi Pengambilan Data (Transact-SQL)
sys.fn_cdc_get_column_ordinal (T-SQL)
sys.fn_cdc_has_column_changed (T-SQL)
<cdc.fn_cdc_get_all_changes_capture_instance> (T-SQL)
<cdc.fn_cdc_get_net_changes_capture_instance> (T-SQL)
Tentang Mengubah Penangkapan Data (SQL Server)