点滴记录

如何 取得当前会话的 session id (sid)

下面这个应当是大家常用的.

SQL> SELECT SID FROM V$MYSTAT WHERE ROWNUM =1;

       SID
———-
     19949

    下面一个更简单, 但只能在Oracle 10g及以上版本中使用.

SQL> SELECT USERENV(‘SID’) FROM DUAL;

USERENV(‘SID’)
————–
         19949

    下面这个方法我有时也用, 因为不想用最上面的SQL去写一个子查询, 发现在Oracle 9i上很正常, 但在Oracle 10g上常常返回两行, 因此不能再使用它了.

SQL> SELECT SID FROM V$SESSION WHERE AUDSID=USERENV(‘SESSIONID’);

       SID
———-
     19949
     19829

请使用浏览器的分享功能分享到微信等