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回滚吗?的主要内容,如果未能解决你的问题,请参考以下文章

Git 修改已提交 commit 的信息

oracle 锁表、解锁的语句

Oracle什么时候需要Commit

java连接Oracle数据库,从ResultSet中提取数据出现java.sql.sqlException结果集已耗尽

转: Oracle Form 中commit 与do_key('commit_form')区别

Oracle自增主键的添加[sequence]--表数据已存在