ORA-30052: invalid lower limit snapshot expression
|/xPI4n3qcM-b[0
删除了一个表,没记住具体时间,结果闪回版本查询时,出现上面那个错误,原因是我的undo_rentention=900只记录了15分钟,可以能上限选择15分钟之前,或者下限选择15分钟之后.
通过查询flashback_transaction_query查看具体的操作时间
SQL> select undo_sql ,START_TIMESTAMP,COMMIT_TIMESTAMP from flashback_transaction_query
5L
B)_](z D0 2 where table_name='EMP';
UNDO_SQL START_TIMESTAMP COMMIT_TIMESTAMP
c5`1H![}uX]0-------------------------------------------------------------------------------- ------------------- -------------------ITPUB个人空间nu7QA|3z;dF.e
update "SCOTT"."EMP" set "SAL" = '950' where ROWID = 'AAANBIAAEAAAAAkAAL'; 2008-05-23 09:55:59 2008-05-23 09:56:17
!UD@7UO0update "SCOTT"."EMP" set "SAL" = '2950' where ROWID = 'AAANBIAAEAAAAAkAAL'; 2008-05-23 09:56:32 2008-05-23 09:56:35
{~[JM?P0update "SCOTT"."EMP" set "SAL" = '1950' where ROWID = 'AAANBIAAEAAAAAkAAL'; 2008-05-23 09:56:23 2008-05-23 09:56:26
修改查询时间,错误不再出现
SQL> conn scott/tiger
0_*ajO O
|~0已连接。ITPUB个人空间)x'v3Z,^"Ld3vD6E
SQL> select * from emp versions between
^.f@?]&a}'Sb0 2 timestamp to_timestamp('2008-05-23 09:55:59','yyyy-mm-dd hh24:mi:ss') and
4t/Hi1F,j-\0 3 to_timestamp('2008-05-23 09:56:55','yyyy-mm-dd hh24:mi:ss')
$F@!q0J L0 4 where empno=7900;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNOITPUB个人空间DXDLj
---------- ---------- --------- ---------- ------------------- ---------- ---------- ----------ITPUB个人空间$K?
XA0qRxk
7900 JAMES CLERK 7698 1981-12-03 00:00:00 3950 30ITPUB个人空间GT*Isr"\"gO
7900 JAMES CLERK 7698 1981-12-03 00:00:00 2950 30
$~0Y#U0Pp)Tr&? ^AV0q0 7900 JAMES CLERK 7698 1981-12-03 00:00:00 1950 30ITPUB个人空间r/Sa*m jV%pUW
7900 JAMES CLERK 7698 1981-12-03 00:00:00 950 30