sql-server - 合并命令是否进行合法更新?

标签 sql-server merge cdc

我正在使用 MERGE 命令在 MSSQL 2008 上测试 CDC(捕获数据更改)。当记录匹配时,我运行更新语句,但在 CDC 更改表中,更新是一系列 [删除和插入] 操作。

我已经确认 MERGE 正在运行更新部分,只是不确定为什么这会转化为每个更新记录的删除和插入...

如果您有 300 条相同的记录(源和目标)并在匹配时合并“更新”它们。您将在 CDC 中拥有 600 条记录

最佳答案

如果在启用了 cdc 的目标表上的 Merge 的 UPDATE SET 操作中排除作为主键的列,它将在捕获实例表中正确记录更新。

关于sql-server - 合并命令是否进行合法更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28636066/

相关文章:

sql - T-SQL - 字符串连接

Git帮助理解 merge 基础冲突

Matlab:将年份合并为区间

r - 在 R 中合并行

gdi - 如何在GDI编程中创建一个大的兼容内存DC?

sql-server - 如何将表移动到 T-SQL 中的架构中

c# - 在非常复杂的多任务窗体程序中锁定和使用 Entity Framework 上下文是否可以?

linux - LPC17xx 作为带有 PXA168 的 CDC 设备

java - CDC、JRE、OSGi执行环境有什么区别?

sql - 如何为 PIVOT 聚合指定 GROUP BY