首页 > 解决方案 > 存储过程中的所有语句都是一个事务吗

问题描述

如果存储过程包含多个语句,例如首先是 an insert,然后是 an update,最后是 a deletes 并且存储过程在 中间被杀死,delete并且insertupdate必须回滚吗?还是它只回滚delete即隐式事务?

标签: sql-servertsqltransactionsrollback

解决方案


正如事务中所解释的,每个语句都将作为隐式事务执行。如果语句失败,则先前语句的效果将保持提交。

请注意,整个存储过程可以在调用代码创建的显式事务中执行。


推荐阅读