我正在将存储过程调用到另一个stroed程序中,现在如果第一个存储过程发出任何错误,那么我想回滚该存储过程的转换,因为DB2在调用完成后提交了存储过程的事务。
那怎么做?
答案 0 :(得分:0)
根据您的描述,您的应用程序可能会执行CALL B()
。存储过程B
执行CALL A()
语句。
除非任一存储过程包含COMMIT
语句(这违反了最佳实践),否则由调用应用程序决定CALL B()
语句是否成功,并由是否发出COMMIT
或ROLLBACK
声明。执行ROLLBACK
应回滚B
和A
所做的所有/所有更改。