小弟正在研究数据库的事务,修改数据库隔离级别的命令已经查到, 怎么查看oracle数据库当前的隔离界别呢?

解决方案 »

  1.   

    select sid,serial#,flag,
      CASE WHEN bitand(FLAG,268435456) = 0 THEN 'SERIALIZABLE'
                                           ELSE 'READ COMMITTED'
                                           END AS ISOLATIONLEVEL
      from V$transaction t,v$session s
      where t.addr=s.taddr
      AND   audsid = USERENV('SESSIONID');
      

  2.   


    我查了一下  v$transaction 这个视图里没有数据~~~
      

  3.   

    l         设置隔离级别l          设置一个事务的隔离级别l         SET TRANSACTION ISOLATION LEVEL READ COMMITTED;l         SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;l         SET TRANSACTION READ ONLY;l         设置增个会话的隔离级别l         ALTER SESSION SET ISOLATION_LEVEL SERIALIZABLE;l         ALTER SESSION SET ISOLATION_LEVEL READ COMMITTED; 
    Oracle默认数据库隔离级别是:read committed查看session的会话隔离级别就是v$transaction 里查看,沒有任何事務的情況下這個視圖是沒有任何東西的..