更新后的Oracle数据库回滚

时间:2015-12-30 01:57:13

标签: database oracle

从11g升级到12c后,我们发现了一种奇怪的行为。当我们更新表时,虽然我们发出了提交但是没有错误回滚数据。

有经验的人有哪些?

1 个答案:

答案 0 :(得分:0)

这绝不应该发生:一旦数据库收到COMMIT请求,它必须(1)完成COMMIT请求或(2)返回错误并回滚事务。 Oracle(版本12C)有一个名为" Transaction Guard"如果提交成功,应该通知您。以下是该API的网址:

https://docs.oracle.com/database/121/CNCPT/transact.htm#CNCPT89217

即使您没有使用此API,如果事务到达ORACLE数据库,它也应该 要么成功要么你应该收到听众或ORA-错误。

你确定:

  • 如果未填写部分事务数据(E.G.数据网格中的一个字段),则您使用的是不回滚的客户端
  • 您的ORACLE客户端是否与12C兼容?