码迷,mamicode.com
首页 > 数据库 > 详细

mysql事务

时间:2020-03-16 09:48:05      阅读:56      评论:0      收藏:0      [点我收藏+]

标签:mysql   查看   原子性   隔离级别   拆分   count   ima   等于   primary   

1 转账,创建表并添加数据

create table account{
    id int primary key auto_increment,
    name varchar(20) not null,
    money double
};

技术图片

2 查看mysql是否开启自动提交事务

select @@autocommit;
技术图片
取消自动提交
技术图片

3 开启事务,张三向李四转账500;

start TRANSACTION;

update account set money = money -500 where name = 'zhangsan';

update account set money = money +500 where name = 'lisi';

COMMIT;

4 事务ACID

A原子性:整体,不可拆分,要么成功,要么失败
C一致性:转账前总金额等于转账后总金额
I事务在执行期不受其它事务影响,保持隔离
D持久性:关机,也保存下来。持久的。

5 事务隔离级别

脏读:一个事务读取到另一个事务没提交的数据
不可重复读:一个事务两次读取内容不一致
环读:一次事务中2次读取数据的数量不一致

6 mysql的4种隔离级别

隔离级别越高,性能越差
级别|名字|隔离级别|脏读|不可重复读|幻读
:-:|:-:|:-:|:-:|:-:|:-:
1|读未提交|read uncommitted|是|是|是
2|读已提交|read committed|否|是|是
3|可重复读|repeatbale read|否|否|是
4|串行|serializable|否|否|否

7 全局隔离级别

select @@tx_isolation;
技术图片
设置隔离级别
set globaql transaction isolation level 级别字符串数字
几种隔离级别演示看纸质教材

mysql事务

标签:mysql   查看   原子性   隔离级别   拆分   count   ima   等于   primary   

原文地址:https://www.cnblogs.com/hellosiyu/p/12501808.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!