找回被修改过的数据

模拟:

先创建一张测试表A,表A里有个字段test,字段类型number
CREATE TABLE A(test NUMBER);

表A插入一条测试记录 1,并提交
insert into A(test) values(1);

查询下插入记录后的结果
SELECT * FROM A;

test

1

现在,我们把表A的记录1修改成2,并提交
UPDATE A SET test= 2;
COMMIT;

查询下修改记录后的结果
SELECT * FROM A;

test

2

然后通过闪回来查询修改状态前的记录

SELECT * FROM A AS OF TIMESTAMP  SYSDATE - 2/1440;

test

1

现在把修改前的记录插入到表a中

INSERT INTO A SELECT * FROM A AS OF TIMESTAMP  SYSDATE - 2/1440;

再查询表A,检验下表A的记录是否有两条,一条为1,一条为2
SELECT * FROM A;

test

2

1

猜你喜欢

转载自fatedgar.iteye.com/blog/2025990