如何检查我的 oracle DB 中设置的 IL。我该如何改变它?提前谢谢了。
问问题
3391 次
1 回答
1
设置隔离级别
对于只读事务隔离级别
隔离级别可以设置为事务级别:
SET TRANSACTION ISOLATION LEVEL READONLY;
对于会话级别:
ALTER SESSION SET ISOLATION_LEVEL READONLY;
对于Serializable Transaction 隔离级别
交易级别:
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
会话级别:
ALTER SESSION SET ISOLATION_LEVEL SERIALIZABLE;
对于已提交读事务 隔离级别
交易级别:
SET TRANSACTION ISOLATION LEVEL READ COMMITTED;
会话级别:
ALTER SESSION SET ISOLATION_LEVEL READ COMMITTED;
要查找隔离级别:
交易进行时:
SELECT s.sid, s.serial#,
CASE BITAND(t.flag, POWER(2, 28))
WHEN 0 THEN 'READ COMMITTED'
ELSE 'SERIALIZABLE'
END AS isolation_level
FROM v$transaction t
JOIN v$session s ON t.addr = s.taddr AND s.sid = sys_context('USERENV', 'SID');
交易未进行时
declare
trans_id Varchar2(100);
begin
trans_id := dbms_transaction.local_transaction_id( TRUE );
end;
于 2013-05-29T10:52:49.057 回答