zoukankan      html  css  js  c++  java
  • Oracle数据回滚

    查看某个时间点的表的数据

    1 select * from 表名  as of timestamp to_timestamp('2019-04-15 22:00:38', 'yyyy-mm-dd hh24:mi:ss');

    查看删改操作修改的数据(DELETE、UPDATE操作)

    1 SELECT *
    2 FROM 表名 AS OF TIMESTAMP  to_timestamp('2019-04-16 21:43:38', 'yyyy-mm-dd hh24:mi:ss')
    3 MINUS
    4 SELECT *
    5 FROM 表名;

    恢复删改操作的数据到某个时间点

    1 MERGE INTO 表名 a
    2 USING (SELECT * FROM 表名 AS OF TIMESTAMP to_timestamp('2019-04-16 21:43:38', 'yyyy-mm-dd hh24:mi:ss')
    3        MINUS  SELECT * FROM 表名) b
    4 ON (a.id = b.id)
    5 WHEN MATCHED THEN
    6  UPDATE  SET a.col = b.col,
    7 WHEN NOT MATCHED THEN
    8   INSERT VALUES (b.id, b.col);

    查看添加操作修改的数据(INSERT)

    1 SELECT * FROM 表名
    2 MINUS
    3 SELECT * FROM 表名 AS OF TIMESTAMP  to_timestamp('2019-04-16 21:45:38', 'yyyy-mm-dd hh24:mi:ss');

    恢复添加操作的数据到某个时间

    1 DELETE FROM 表名 a
    2 WHERE EXISTS (
    3     SELECT 1 FROM (
    4         SELECT *  FROM 表名
    5             MINUS
    6             SELECT * FROM 表名 AS OF TIMESTAMP to_timestamp('2019-04-16 21:45:38', 'yyyy-mm-dd hh24:mi:ss')) b
    7     WHERE a.id = b.id); 

    如果相隔时间过长的话,数据就回滚不了了,所以一旦数据出现问题,就要立即进行处理。

    参考博客:

    https://blog.csdn.net/w8827130/article/details/89303087

  • 相关阅读:
    洛朗级数
    泰勒级数
    中心极限定理
    置信区间公式
    简单随机样本的性质
    极大似然估计
    矩估计法
    摆摊70
    天天去哪吃
    天天和树
  • 原文地址:https://www.cnblogs.com/nemowang1996/p/12668292.html
Copyright © 2011-2022 走看看