解决方案 »

  1.   

    闪回查询需要回滚段支持,能查询到数据的前镜像。但是回滚段大小不够时,老的数据会被覆盖,因此能闪回的是有个时间范围,不可能做到任意时间
    修改undo_retention的时间值
    及分配足够大的空间
      

  2.   


    正解,楼主这种需求只能自己处理了,自建表加上时间戳,用触发里copy原表操作存到自建表。然后就去查你的自建表吧
      

  3.   

    看运气了
    select dbms_flashback.get_system_change_number FROM dual;
    得到scn 号, 例如94735909
    查询你的表
    SELECT * FROM  t_table  AS OF SCN  94735909
    可以修改scn号,94735909--->94735000 
    相当于把时间往前推,一次尝试,知道报错,看最远能否推到你要的数据时间;
    Scn转换成时间:
    select to_char(scn_to_timestamp(3998591352171),'YYYY-MM-DD HH24:MI:SS') from dual;
     
    时间转换成scn:
    select timestamp_to_scn(to_date('2011-04-14 11:10:25','YYYY-MM-DD HH24:MI:SS')) from dual