SET TRANSACTION 语法

翻译自:官方参考文档(MySQL 5.7 Reference Manual),对应的章节   https://dev.mysql.com/doc/refman/5.7/en/set-transaction.html

 

1、SET TRANSACTION 语法

SET [GLOBAL | SESSION] TRANSACTION
    transaction_characteristic [, transaction_characteristic] ...

transaction_characteristic:
    ISOLATION LEVEL level
  | READ WRITE
  | READ ONLY

level:
     REPEATABLE READ
   | READ COMMITTED
   | READ UNCOMMITTED
   | SERIALIZABLE

通过SET TRANSACTION可以修改Mysql数据库的事务隔离级别或者用来修改事务内表数据的访问模式。ISOLATION LEVEL  是设置InnoDB表(即存储引擎为InnoDB的所有表)的事务隔离级别,只对该类型的表有效!在SET TRANSACTION之间可以加上可选项GLOBAL或SESSION显示指定该事务级别的修改的作用域。

 

2、作用域GLOBAL、SESSION

GLOBAL:只对执行了SET TRANSACTION 之后,只对后续新的数据库会话连接有效,已经存在的会话连接无效!

SESSION:只对执行了SET TRANSACTION的当前数据库会话连接的后续新发起的事务或未提交的事务有效!

没有使用GLOBAL或SESSION关键字的话,只对执行了SET TRANSACTION的当前数据库会话连接的后续新发起的事务有效!已经存在的未提交的事务,还是继续使用之前的事务隔离级别!!

 

3、事务隔离级别Transaction Isolation Levels

     关于事务隔离级别的介绍,请看章节14.5.2.1 ,“Transaction Isolation Levels”

 

4、事务内表数据访问模式

    默认情况下,一个事务内的表的数据访问模式为Read/Write,即可以对表进行读和写操作。READ ONLY模式下只可以进行读操作

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值