Oracle通过时间点恢复已经删除且提交的数据

 时间:2026-02-16 06:39:47

Oracle操作数据库的时候,有时会误操作一些数据,如果没有提交,一切都好说,已经提交了怎么办?这时候,我们就需要通过一些措施来恢复这些被我们误操作的数据,我使用的工具是PLSQL。

    查询当前系统时间

    select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;

    ps:这步一般可以跳过,直接从第2步开始。但有的本机系统时间不是当前北京时间的需要操作这一步。

    查询删除数据的时间点的数据

    select * from 表名 as of timestamp to_timestamp('2017-06-02 15:29:00','yyyy-mm-dd hh24:mi:ss');

    ps:如果结果不是自己想要的,则继续缩小时间范围,查询的数据结果为:截止到当前选中时间点之前这段时间内的所有数据。

    恢复删除且已提交的数据

    flashback table 表名 to timestamp to_timestamp('2017-06-02 15:29:00','yyyy-mm-dd hh24:mi:ss');

    如果在执行第 3 步语句,出现错误(plsql报错:没有行移植功能)。

    可以执行 alter table 表名 enable row movement,然后再执行第 3 步语句即可。

  • Thinkphp如何获得数据库最新一条记录
  • IntelliJ IDEA如何添加异常断点
  • CentOS7更改SSH服务默认端口号
  • spring EL表达式的简单使用
  • linux离线安装及配置redis
  • 热门搜索
    国庆去哪里旅游好 什么地方旅游最好 美国旅游指南 昆明大理丽江旅游 威海旅游网 上海旅游节官网 成都旅游门户网 最佳旅游景点 骑自行车旅游 威海旅游景点介绍