在执行插入、更新、删除等操作时,容易产生误操作,导致数据库中的内容被修改,通过普通的sql操作无法还原,则可采用Oralce数据库表的闪回机制,将表数据还原到某个时间点,具体如下:
先查询某个时间点的数据是否为要还原的数据 select * from TableName as of timestamp to_timestamp('2019-05-21 23:00:00', 'yyyy-mm-dd hh24:mi:ss');开启这张表的闪回状态 alter table TableName enable row movement;把表的状态闪回到这个时间段 flashback table TableName MS to timestamp TO_TIMESTAMP('2019-05-21 23:00:00', 'yyyy-mm-dd hh24:mi:ss');关闭这张表的闪回状态(切勿忘记执行该步骤) alter table ITEMS disable row movement;
这时重新查询表数据,会发现表中数据已经被还原到2019-05-21 23:00:00时的状态了