如何查找上次发出commit语句的时间戳?

时间:2013-12-04 12:46:11

标签: sql oracle oracle11g database-administration

我在互联网上查看了这个,大多数讨论是关于找到最后一次更改的时间。就我而言,我希望找到任何用户(架构)为最后一个发出COMMIT语句的时间戳。

有什么特别方法可以查询吗?

1 个答案:

答案 0 :(得分:1)

如果你需要知道的是,当前的SQL * Plus会话是否有一个打开的事务,你可以通过从V $ SESSION中选择TADDR来实现。

示例:

SQL> create table testme(a number);

Table created.

SQL> select taddr from v$session where sid=(select sid from v$mystat where rownum=1);

TADDR
----------------


SQL> insert into testme values(1);

1 row created.

SQL> select taddr from v$session where sid=(select sid from v$mystat where rownum=1);

TADDR
----------------
0000007F50F86420

SQL> commit;

Commit complete.

SQL> select taddr from v$session where sid=(select sid from v$mystat where rownum=1);

TADDR
----------------


SQL> 

如果TADDR为空,则没有当前事务。

希望有所帮助。