是否需要在事务中封装单个合并语句(带插入,删除和更新)?

Rob*_*cha 13 sql sql-server-2008

我现在无法测试它并自行获得解决方案,而且我还没有在MSDN上和谷歌上找到这些信息.

我被问到是否需要在一个事务中封装插入,删除和更新给定表中的记录的合并语句(如果在插入完成后,例如在更新期间发生故障),或者任何操作是否失败整个合并也失败了.

如果我们包含一笔交易,也许不会有害,但为了好奇,我们希望了解更多有关合并内部的信息.

gbn*_*gbn 22

SQL Server中的任何语句本身都是一个事务.

也就是说,它是原子的:一切都成功或一切都失败了

显式事务将用于将多个单个原子语句组合成一个大的原子事务.

这是MERGE之美:不需要明确的交易和3个单独的陈述.