德川家康-- 人的一生有如负重致远,不可急噪。以不自由为常事,则不觉不足。心生欲望时,应回顾贫困之日。 心怀宽恕,视怒如敌,则能无事长久。只知胜而不知败,必害其身。责人不如责己。不及胜于过之。

Oracle10g-版本查询

上一篇 / 下一篇  2008-01-23 15:22:06 / 个人分类:Oracle数据库技术-数据库管理

C:\>set ORACLE_SID=irmdb

C:\>sqlplus /nolog

SQL*Plus: Release 10.2.0.3.0 - Production on 星期三 1月 23 15:05:33 2008

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

SQL> conn / as sysdba;
已连接。
SQL> create table t
  2  ( id number(5),
  3    name varchar2(10),
  4    constraint t_pk primary key(id));

表已创建。

SQL> insert into t values(1,'a');

已创建 1 行。

SQL> commit;

提交完成。

SQL> update t set name='b';

已更新 1 行。

SQL> commit;

提交完成。

SQL> update t set name='c
  2  ';

已更新 1 行。

SQL> commit;

提交完成。

SQL> delete t;

已删除 1 行。

SQL> commit;

提交完成。

SQL> insert into t values(1,'d');

已创建 1 行。

SQL> commit;

提交完成。

SQL> update t set name='e';

已更新 1 行。

SQL> commit;

提交完成。

SQL> select * from t;

        ID NAME
---------- ----------
         1 e

SQL> set linesize 100
SQL> set pagesize 80
SQL>select versions_starttime,versions_endtime,versions_xid,versions_operation,name
  2  from t versions between timestamp minvalue and maxvalue
  3  order by versions_starttime;

VERSIONS_STARTTIME
---------------------------------------------------------------------------
VERSIONS_ENDTIME                                                            VERSIONS_XID     V
--------------------------------------------------------------------------- ---------------- -
NAME
----------
23-1月 -08 03.09.29 下午
23-1月 -08 03.09.35 下午                                                    01002E00F4030000 I
a

23-1月 -08 03.09.35 下午
23-1月 -08 03.09.47 下午                                                    03001C00E9030000 U
b

23-1月 -08 03.09.47 下午
23-1月 -08 03.09.53 下午                                                    05001500FE030000 U
c

23-1月 -08 03.09.53 下午
                                                                                                   04002300EB030000 D
c

23-1月 -08 03.09.59 下午
23-1月 -08 03.10.08 下午                                                    06000100E5030000 I
d

23-1月 -08 03.10.08 下午
                                                                                                   07001E00EA030000 U
e


已选择6行。

在上述查询中,列versions_starttime、versions_endtime、versions_xid、versions_operation是伪列,与 ROWNUM、LEVEL 等其他熟悉的伪列相类似。其他伪列如VERSIONS_STARTSCN和VERSIONS_ENDSCN,显示了该时刻的系统更改号。列versions_xid 显示了更改该行的事务标识符。有关该事务的更多详细信息可在视图FLASHBACK_TRANSACTION_QUERY 中找到,其中列 XID 显示事务 id。例如,使用上述的VERSIONS_XID 值07001E00EA030000,UNDO_SQL 值显示了实际的语句。

SQL> select undo_sql from flashback_transaction_query where xid='07001E00EA030000';

UNDO_SQL
----------------------------------------------------------------------------------------------------
update "SYS"."T" set "NAME" = 'd' where ROWID = 'AAANbCAABAAAPTiAAB';

到这里通过versions_xid这个列可以获得事务ID,来查询我们的SQL


TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar