过程 A 从过程 B 进行的 PLSQL 回滚更改
PLSQL rollback changes made by procedure A from procedure B
我有pls/ql过程procedure_test()
,这个过程改变了表中的一些数据,这个过程没有任何提交或回滚。
所以我从另一个程序调用此过程 - procedure_test2()
在从 procedure_test2()
调用 procedure_test()
之后,procedure_test()
中的所有更改都已提交。那么,如何回滚 procedure_test()
从 procedure_test2()
所做的更改?
谢谢。
您可以使用 savepoint 例如在 procedure_test2() 中,代码就像
...
savepoint bforetest;
procedure_test();
rollback to savepoint bforetest; //this actually cancels whatever _test did.
...
我有pls/ql过程procedure_test()
,这个过程改变了表中的一些数据,这个过程没有任何提交或回滚。
所以我从另一个程序调用此过程 - procedure_test2()
在从 procedure_test2()
调用 procedure_test()
之后,procedure_test()
中的所有更改都已提交。那么,如何回滚 procedure_test()
从 procedure_test2()
所做的更改?
谢谢。
您可以使用 savepoint 例如在 procedure_test2() 中,代码就像
...
savepoint bforetest;
procedure_test();
rollback to savepoint bforetest; //this actually cancels whatever _test did.
...