Wal*_*ado 2 oracle oracle10g flashback
我在我的工作上犯了一个可怕的错误,我在没有'where'子句的oracle表上执行了更新的查询,并且在此表上更改了所有内容,我想知道是否有任何方法可以恢复表上的数据.我知道我可以使用Flashback,但还有另一种方法吗?如果您知道如何在oracle中制作闪回表,请告诉我.
我正在使用Oracle 10g R2 10.2.0.1
Jus*_*ave 10
首先,你做出了改变吗?如果没有,您只需发出一个rollback即可还原您的更改.
假设您确实提交了更改,其他用户是否同时修改了表?您是否需要保留其他人所做的更改并仅还原您在交易中所做的更改?或者,您可以将整个表恢复到更改之前的某个时间点吗?
如果可以将整个表还原到某个时间点
FLASHBACK TABLE <<table name>>
TO TIMESTAMP( systimestamp - interval '10' minute )
Run Code Online (Sandbox Code Playgroud)
将表格返回到10分钟前的状态,假设UNDO必要时这样做仍然可用(所以你在错误之后只有有限的时间才能闪回那个错误).为了发行FLASHBACK TABLE,你还必须确保
ALTER TABLE <<table name>> ENABLE ROW MOVEMENTFLASHBACK表或FLASHBACK ANY TABLE系统特权的权限.| 归档时间: |
|
| 查看次数: |
14269 次 |
| 最近记录: |