0

cdc.fn_cdc_get_net_changes_SQL server和cdc.fn_cdc_get_all_changes_in SQL server有什么区别?

如果我能得到一些帮助,我们将不胜感激。

4

1 回答 1

8

该文档似乎立即给出了非常清楚的解释。(我已经在相关的地方强调了两者。)

cdc.fn_cdc_get_all_changes_

对于指定日志序列号 (LSN) 范围内应用于源表的每个更改返回一行。如果源行在间隔期间有多次更改,则每个更改都会在返回的结果集中表示。...

cdc.fn_cdc_get_net_changes_

为指定 LSN 范围内更改的每个源行返回一个净更改行。也就是说,当源行在 LSN 范围内发生多次更改时,函数会返回反映该行最终内容的单行。...

也就是说,如果有多个更改,将为单个源行cdc.fn_cdc_get_all_changes_返回多个结果行(即所有更改cdc.fn_cdc_get_net_changes_),而只会为单个源行返回一个结果行(即净更改),无论有多少在此时间间隔内该源行发生了更改。

于 2015-03-11T04:01:54.493 回答