Quantcast
Viewing latest article 24
Browse Latest Browse All 131

Weird behaviour in CDC SQL Server - could be a bug?

Something I can't understand this behavior and it seems to me bug in SQL Server: I have enabled CDC for table Editorial_schedule_index_cards, now when I update a record from this table with this way:

update esic set target_name = 'test8'from Editorial_Schedule_Index_Cards esicinner join editorial_schedule es on es.Index_Card_ID = esic.Index_Card_ID where es.last_updated_by = 'IMG92'

and then query the CDC table as below so the output is no record, which is normal, specially target_name is not part of captured columns

select *from cdc.dbo_editorial_schedule_index_cards_ctwhere index_card_id =709339  

but when I do the update as the following by using variable in the where clause and point to the same value:

declare @LastUpdatedBy varchar (50)set @LastUpdatedBy= 'IMG92'update esic set target_name = 'test8'from Editorial_Schedule_Index_Cards esicinner join editorial_schedule es on es.Index_Card_ID = esic.Index_Card_ID where es.last_updated_by = @LastUpdatedBy

which is basically I put 'IMG92' into variable, and then query as below

select *from cdc.dbo_editorial_schedule_index_cards_ctwhere index_card_id = 709339

so I got two records, one as Delete and the other as Add - why? It seems the record is deleted and recreated?


Viewing latest article 24
Browse Latest Browse All 131

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>