zoukankan      html  css  js  c++  java
  • 如何查看Oracle,MySQL,SQLServer三大数据库的事务隔离级别

    1:mysql的事务隔离级别查看方法

    mysql 最简单,执行这条语句就行:select @@tx_isolation 

    详情:

    1.查看当前会话隔离级别

    select @@tx_isolation;

    2.查看系统当前隔离级别

    select @@global.tx_isolation;

    3.设置当前会话隔离级别

    set session transaction isolatin level repeatable read;

    4.设置系统当前隔离级别

    set global transaction isolation level repeatable read;

    2:sql server事务隔离级别查看方法

    执行:DBCC USEROPTIONS 

    3:oracle事务隔离级别查看方法

    oracle比较麻烦点,执行以下语句

    1):

    declare
    trans_id Varchar2(100);
    begin
    trans_id := dbms_transaction.local_transaction_id( TRUE );
    end;

    2):

    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');

    注意事项:

    1):如果出现 v$transaction 不存在,先考虑用户权限是否足够;

    2):如果执行第二句时报 empty 错误,是由于还没有创建事务(所以先执行第一句在执行第二句);

  • 相关阅读:
    linux安装mongodb
    redis的安装
    leetcode——127.单词接龙
    leetcode——77.组合
    leetcode——47.全排列II
    leetcode ——46.全排列
    leetcode——90.子集II
    leetcode——78.子集
    TCP/IP——ARP地址解析协议
    leetcode——135.分发糖果
  • 原文地址:https://www.cnblogs.com/zgq7/p/10737622.html
Copyright © 2011-2022 走看看