oracle中,已commit的数据能rollback回滚吗?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle中,已commit的数据能rollback回滚吗?相关的知识,希望对你有一定的参考价值。
commit 和 rollback 从最终结果上讲是相反的。1、commit 将数据的变化永久保留
2、rollback 将变化之前的数据“还原回去”
3、一旦发出commit了 就不能rollback了。(但是如果你想恢复数据的话还是有办法的flashback 是可以的)
举例讲:
update a set b=1 where b=2;
commit 的作用是将这个结果永久化。
rollback 的作用相当于 update a set b=2 where b = 1 后 再commit; 参考技术A 不能rollback!正确的数据处理是处理前先备份数据。 参考技术B 不能
如果你要是设置保存点的话
可以将处理简化 参考技术C 不能 参考技术D 分为几种不同情况。
1.没有提交(commit)的数据删除后无法rollback
2.提交(commit)了的数据删除后可以使用rollback恢复
3.删除数据后提交(commit)则无法使用rollback恢复
就是说,你提交了的数据是永久性的,rollback是在这个基础上进行备份的。
本回答被提问者和网友采纳
java连接Oracle数据库,从ResultSet中提取数据出现java.sql.sqlException结果集已耗尽
出现错误的原因是ResultSet中并没有任何东西,再调用next()方法就会出错,原因可能是oracle创建用户,表没有提交,commit即可
以上是关于oracle中,已commit的数据能rollback回滚吗?的主要内容,如果未能解决你的问题,请参考以下文章
java连接Oracle数据库,从ResultSet中提取数据出现java.sql.sqlException结果集已耗尽