Oracle的表/数据回退方式

 更新时间:2026年06月11日 16:39:19   作者:super_.  
本文详细介绍了恢复已删除数据库数据的方法,包括直接回退和重新插入数据两种方式,并强调了恢复时间点选择的重要性

Oracle的表/数据回退

在操作数据库数据时,存在误删数据的可能,所以今天来备注一下恢复已删除数据的办法。

首先了解一下:查阅某时间点的数据,即使数据已删除也可以查阅得到

  • PS:TESTTABLE:表的名称
  • 2019-04-18 10:30:00 :创建数据的系统时间,跟表内的列无关,数据表自带的
SELECT * FROM TESTTABLE AS OF TIMESTAMP TO_TIMESTAMP('2019-04-18 10:30:00','yyyy-mm-dd hh24:mi:ss');

“恢复”已删除的数据,有两种方式

1、直接回退:设置表回退属性

1.设置“允许表回退”的属性

ALTER TABLE TESTTABLE enable row movement;

2.恢复表数据到某个时间点,只到某个时间点

PS:

如果所有的数据是截止到今天的,恢复的时间点写的是昨天的,那么数据只会恢复到昨天,昨天到今天的数据将不会被恢复,所以在填写恢复数据的时间点的时候一点要谨慎,当然恢复错的话可以重新恢复

flashback TABLE TESTTABLE TO TIMESTAMP TO_TIMESTAMP('2019-04-18 10:30:00','yyyy-mm-dd hh24:mi:ss');

2、重新插入数据:将查出来的数据,重新插入到表中

insert into TESTTABLE (
    select * from TESTTABLE as of timestamp to_timestamp('2019-12-13 12:40:00','yyyy-mm-dd hh24:mi:ss') 
)

总结

两种方式都可以,第一种的弊端是恢复的时间间隔不能太长,否则容易不成功!

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • oracle创建一个数据库三步走

    oracle创建一个数据库三步走

    这篇文章主要介绍了oracle如何创建数据库和用户,以及每一步所涉及到的代码,需要的朋友可以参考下
    2015-08-08
  • Oracle变量、输入输出、SELECT INTO、%TYPE与%ROWTYPE详解

    Oracle变量、输入输出、SELECT INTO、%TYPE与%ROWTYPE详解

    这篇文章主要介绍了Oracle变量、输入输出、SELECT INTO、%TYPE与%ROWTYPE,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-06-06
  • Oracle收缩表空间的步骤和方法

    Oracle收缩表空间的步骤和方法

    Oracle收缩表空间是一种数据库管理操作,用于释放一个已使用的表空间中的多余空间,当表空间中的数据减少、删除大量行,或者通过TRUNCATE TABLE命令清空了部分数据时,可能会有未被占用的空间,所以本文给大家介绍了Oracle收缩表空间的简单方法,需要的朋友可以参考下
    2024-11-11
  • Oracle SQL Developer脚本输出中文显示乱码的解决方法

    Oracle SQL Developer脚本输出中文显示乱码的解决方法

    我们在测试Oracle Select AI(自然语言查询数据库)时,发现Run Statement中文显示正常,而Run Script中文显示乱码,所以本文给大家介绍了Oracle SQL Developer脚本输出中文显示乱码的解决方法,需要的朋友可以参考下
    2024-05-05
  • 解决Oracle RMAN删除归档日志不释放问题的方法

    解决Oracle RMAN删除归档日志不释放问题的方法

    RMAN清除方式会自动清除磁盘上的归档日志文件,同时会释放控制文件中对应的归档日志的归档信息,但最近在使用中就遇到了一个问题,下面这篇文章主要给大家介绍了关于解决Oracle RMAN删除归档日志不释放问题的方法,需要的朋友可以参考下。
    2017-07-07
  • Oracle数据库如何将DATE类型字段格式转换为YYYY/MM/DD

    Oracle数据库如何将DATE类型字段格式转换为YYYY/MM/DD

    在Oracle数据库中,尽管DATE类型本身并不携带任何特定的格式信息,但通过TO_CHAR函数我们可以方便地将DATE类型的数据转换为我们所需要的格式,下面给大家介绍Oracle数据库如何将DATE类型字段格式转换为YYYY/MM/DD样式,感兴趣的朋友跟随小编一起看看吧
    2024-04-04
  • 自动备份Oracle数据库

    自动备份Oracle数据库

    自动备份Oracle数据库...
    2007-03-03
  • Oracle外键不加索引引起死锁示例

    Oracle外键不加索引引起死锁示例

    这篇文章主要介绍了Oracle外键不加索引引起死锁的情况及解决,需要的朋友可以参考下
    2014-05-05
  • Oracle出现超出打开游标最大数的两种解决方法

    Oracle出现超出打开游标最大数的两种解决方法

    当Oracle数据库中打开的游标数超过了数据库的最大游标数限制时,就会出现“超出打开游标最大数”的错误,本文给大家介绍了几种常见的解决方法,需要的朋友可以参考下
    2024-02-02
  • Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案

    Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案

    这篇文章主要介绍了Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案,需要的朋友可以参考下
    2017-03-03

最新评论