刚刚delete一张表,数据的前映象(before image)应该在回滚段里边。可以利用oracle imp/export工具从回滚段中找出数据。SQL> select  to_char(sysdate,'yyyymmddhh24miss') from dual;
TO_CHAR(SYSDAT
--------------
20030913123008SQL> delete test1;SQL> commit;SQL> select * from test1;exp user/password file=f:\aaa tables = test1 flashback_time = '20030913123008'

解决方案 »

  1.   

    为什么不行呢?
    SQL> exp system/manager file=c:\aaa tables=test flashback_time='20031021095220'
    SP2-0734: 未知的命令开头 "exp system..." - 忽略了剩余的行。
      

  2.   

    象你这样当然是不行的了:SQL> exp 你是在SQL PLUS下运行EXP命令的吧
    EXP命令只要在WINDOWS的CONSOLE运行就可以的
    c:\> exp ...这样就行了
      

  3.   

    C:\>exp learn/learn file=f:\aaa tables=test flashback_time='200310211101805'
    LRM-00101: 未知的参数名称 'flashback_time'EXP-00019: 处理参数失败,有关帮助请键入 'EXP HELP=Y'
    EXP-00000: 导出终止失败
      

  4.   

    Using Flashback Queries: Example
    The following statements show a current value from the sample table hr.employees and then changes the value:SELECT salary FROM employees
       WHERE last_name = 'Chung';
       
        SALARY
    ----------
          3800UPDATE employees SET salary = 4000
       WHERE last_name = 'Chung';
    1 row updated.SELECT salary FROM employees
       WHERE last_name = 'Chung';    SALARY
    ----------
          4000
    To learn what the value was before the update, you can use the following flashback query:SELECT salary FROM employees
       AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '1' DAY)
       WHERE last_name = 'Chung';
       
        SALARY
    ----------
          3800
    To revert to the earlier value, use the flashback query as the subquery of another UPDATE statement:UPDATE employees SET salary =      
       (SELECT salary FROM employees
       AS OF TIMESTAMP (SYSTIMESTAMP - INTERVAL '1' DAY)
       WHERE last_name = 'Chung')
       WHERE last_name = 'Chung';
    1 row updated.SELECT salary FROM employees
       WHERE last_name = 'Chung';
       
        SALARY
    ----------
          3800
      

  5.   

    SQL> select * from test 
      2   as of timestamp(systimestamp - interval '1' day)
      3  where  test1='love';
     as of timestamp(systimestamp - interval '1' day)
     *
    ERROR 位于第 2 行:
    ORA-00933: SQL 命令未正确结束请教:是怎么回事啊
      

  6.   

    你的数据库是归档模式吗?如果是的话,关闭数据库,然后重新打开,使用recover until来恢复。