Oracle数据库中的回滚

时间:2018-08-03 21:41:26

标签: database oracle oracle-sqldeveloper rollback

我可以在Oracle的特定数据库表中使用rollback吗? 我无意间更改了整个表的字段之一,并且已经在其他表中查询过。有什么我可以解决的吗?

2 个答案:

答案 0 :(得分:1)

大多数可能不是(您描述的方式)。回滚将还原您在此事务期间(即自上一个COMMIT(或ROLLBACK)以来所做的更改。如果您设置了一个保存点(没有设置保存点),那么您可能已经回退了。

我不确定您说的“并且已经在其他表中查询过”的意思-这是否意味着您修改的值已用于修改其他表?如果是这样,回滚仍将还原这些更改,除非已提交。否则,请查看Flashback是否有帮助,因为它可以让您撤消过去

或者,作为最后的手段,从备份中还原所有内容。确实,它会取消您(或其他任何人)所做的所有事情,这可能不是最好的选择。

答案 1 :(得分:0)

如果您未提交命令,即您未明确使用“ COMMIT”,那么即使查询了其他表,也可以回滚。