回滚+提交一些更改



我有一个案例,我需要回滚数据库上的更改,但我也想保留插入的日志。

插图:

Add processing log
 Insert some data
 Insert some data
 Insert some data
Add processing log
 Do some checking...
  Checking Failed
  Add processing log
  Rollback;
  • 其他插入数据的同一数据库上的日志表

有什么办法做到这一点吗?

我通常希望有一个集中的日志记录例程,在该日志记录包中,在用于写入日志的函数中,在过程头声明之后插入此行

  PRAGMA AUTONOMOUS_TRANSACTION;

这将把日志插入到调用例程的不同事务中,允许您提交日志,而不管父例程中发生了什么。

文档详细信息:http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/autotransaction_pragma.htm

最新更新