在oracle中如何找回被删除的数据?

在oracle中如何找回被删除的数据?,第1张

select * from whir$t3068 as of timestamp to_timestamp( '2012-03-30 9:00:00' , 'yyyy-mm-dd hh24:mi:ss' )

select * from whir$t3068 as of timestamp sysdate-750/1440

flashBack table scheme.whir$t3068 to timestamp(timeVariable,'2012-03-30 09:mi:ss')  www.2cto.com

********************这个效果很好***************************

先执行SQL查询出来被删除的数据

select * from 表名 as of timestamp sysdate-1/12

在把数据添加到删除的表中

insert into biao select  * from 表名 as of timestamp sysdate-1/12

oracle如何恢复误删的表记录数据,解决办法:

从flash back里查询被删除的表select * from recyclebin

执行表的恢复flashback table  tbName  to before drop这里的tbName代表你要恢复的表的名称

先从flashback_transaction_query视图里查询,视图提供了供查询用的表名称、事务提交时间、UNDO_SQL等字段。

一般先根据时间进行查询,查询语句模式为select * from tb as of timestamp to_timestamp(time,'yyyy-mm-dd hh24:mi:ss')tb指表名称,time指某个时间点。

这个命令的作用是,允许Oracle 修改分配给行的rowid。

在Oracle 中,插入一行时就会为它分配一个rowid,而且这一行永远拥有这个rowid。

闪回表处理会对EMP 完成DELETE,并且重新插入行,这样就会为这些行分配一个新的rowid。

要支持闪回就必须允许Oracle 执行这个 *** 作。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9898192.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存