我可以在Oracle的特定数据库表中使用rollback
吗?
我无意间更改了整个表的字段之一,并且已经在其他表中查询过。有什么我可以解决的吗?
答案 0 :(得分:1)
大多数可能不是(您描述的方式)。回滚将还原您在此事务期间(即自上一个COMMIT
(或ROLLBACK
)以来所做的更改。如果您设置了一个保存点(没有设置保存点),那么您可能已经回退了。
我不确定您说的“并且已经在其他表中查询过”的意思-这是否意味着您修改的值已用于修改其他表?如果是这样,回滚仍将还原这些更改,除非已提交。否则,请查看Flashback是否有帮助,因为它可以让您撤消过去。
或者,作为最后的手段,从备份中还原所有内容。确实,它会取消您(或其他任何人)所做的所有事情,这可能不是最好的选择。
答案 1 :(得分:0)
如果您未提交命令,即您未明确使用“ COMMIT”,那么即使查询了其他表,也可以回滚。