可以解决PLSQL Developer使用delete commit或者没有commit但是退出的情况(退出是默认commit)。
如果删除之后没有commit,并且当时没有退出PLSQL Developer,可以直接使用写入commit图标边的rollback回写
Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0
Connected as xmv502@NC52
SQL> rollback;
Rollback complete
SQL> FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP '2012-04-05 14:00:00';
FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP '2012-04-05 14:00:00'
ORA-08189: 因为未启用行移动功能, 不能闪回表
SQL> alter table bd_jobbasfil enable row movement;
Table altered
SQL> FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP '2012-04-05 14:00:00';
FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP '2012-04-05 14:00:00'
ORA-00932: 数据类型不一致: 应为 TIMESTAMP, 但却获得 CHAR
SQL> FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP to_date('2012-04-05 14:00:00');
FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP to_date('2012-04-05 14:00:00')
ORA-01861: 文字与格式字符串不匹配
SQL> FLASHBACK TABLE bd_jobbasfil TO TIMESTAMP to_date('201204051400','yyyymmddhh24mi');
Done
SQL>
done,之后都恢复了,一切搞定。