oracle - 如何查看任意 oracle session 使用的事务隔离级别

标签 oracle transactions oracle10g isolation-level

我试图找出特定 session (不是我自己的)在 oracle 服务器上的隔离级别。有没有 v$.. View 来获得这个?

最佳答案

您可以在 flag 中测试第 28 位栏目v$transaction [1] .

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, v$session s
WHERE t.addr = s.taddr
  AND s.sid = :sid
  AND s.serial# = :serial;

只要记住 v$transaction仅列出事件交易 [2] ;例如,您需要发出插入/更新/删除/合并,或使用“for update”[3] .

关于oracle - 如何查看任意 oracle session 使用的事务隔离级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3663343/

相关文章:

java - 持久性、oracle Thin、ORA-12505、TNS 监听器当前不知道 SID

sql - Oracle正则表达式-匹配精确的单词

python - Django: atomic(): Force transaction, raise AssertionError 如果已经在事务中

c# - 如何在 C#/(ADO?).NET 2.0 中查询 (oracle) 数据库表结构

Oracle查询以获取列中所有大写的所有条目

sql - 矛盾的 Oracle 查询结果

google-app-engine - 如何启用 Objectify XA 事务?

MySQL 回滚事务与丢失/断开连接

sql - 解码要在联接中使用的文本字符串

sql - 提取oracle中alter语句的ddl