What is similar to CHANGE_TRACKING_IS_COLUMN_IN_MASK in the CDC?

I am working on a data synchronization application. We decided to use CDC instead of CT, because we need more information, but at the same time we need a function that returns a column that changes it to something like this, using CT:

SELECT CTTable.SYS_CHANGE_OPERATION, [FNameCh] = CHANGE_TRACKING_IS_COLUMN_IN_MASK(COLUMNPROPERTY(OBJECT_ID('CONTACT_TABLE'), 'contact_name', 'ColumnId'), SYS_CHANGE_COLUMNS), [LNameCh] = CHANGE_TRACKING_IS_COLUMN_IN_MASK(COLUMNPROPERTY(OBJECT_ID('CONTACT_TABLE'), 'contact_lastname', 'ColumnId'), SYS_CHANGE_COLUMNS), FROM CHANGETABLE (CHANGES Contacts, @VersionId) AS CTTable LEFT OUTER JOIN Contacts AS C ON C.CONTACT_ID = CTTable.CONTACT_ID GO 

EDIT:

 SELECT * , sys.fn_cdc_has_column_changed ('dbo_CONTACT_TABLE', 'contact_name', __$update_mask) AS FNameCh From cdc.fn_cdc_get_all_changes_dbo_CONTACT_TABLE(@Start_Lsn,@End_Lsn,'all') which 1 for if the contact_name is changed and 0 if is not. 

thanks

+4
source share
1 answer

We can determine using sys.fn_cdc_is_bit_set. See below for more details.

http://msdn.microsoft.com/en-us/library/bb500241.aspx

0
source

All Articles