How is it possible, that CDC table doesn`t catch all the changes happened in the table?

Nikita Pysarevskyi 0 Reputation points
2023-09-10T13:33:59.44+00:00

E.g., theres source system, DWH and the other DWH, which picks up the data from "main" DWH. (lets call it that way). Both source system and "main" DWH have CDC enabled on tables. So when I delete some records on sources (100 records), this immediately gets reflected in CDC table on source. Then ETL does its job, 100 records deleted in "main" DWH, however in CDC table I can see 13 records affected. (all with '__$operation' = 1). "@supports_net_changes" parameter is set to 1. How is that even possible? I mean, even if those records wouldve been updated somehow, how come it`s not reflected in CDC table?

SQL Server Other
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Anonymous
    2023-09-12T07:02:58.2+00:00

    Hi @Nikita Pysarevskyi

    I don't quite understand your question. Can you show some screenshots?

    Maybe you can refer to this document about CDC: https://learn.microsoft.com/en-us/sql/relational-databases/track-changes/about-change-data-capture-sql-server?view=sql-server-ver16. I also found this usage example on CDC: https://www.mssqltips.com/sqlservertip/1474/using-change-data-capture-cdc-in-sql-server-2008/.

    Best regards,

    Aniya


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.