初识Mysql事务

Posted 自由乐土

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识Mysql事务相关的知识,希望对你有一定的参考价值。

啥是事务啊?为啥要事务啊?

事务的概念:事务指的是逻辑上的一组操作,组成这组操作的各个单元,要么全部成功要么全部失败。在不同的环境中,都可以由有事务,对应到数据库中就是数据库事务。
对于为啥需要事务,我们举个例子说明一下:
有一person表中有李华和小明两个人的信息:

现在小明要向李华借两百元钱,则李华要转账给小明,这个转账的过程分为两步:
(1)李华的钱要减少200
update person set money = money - 200 where name = ‘李华’;

(2)小明的钱要增加200
update person set money = money + 200 where name = ‘小明’;

但是由于一系列原因,只进行了第一步的时候服务器死机了,那么此时李华的钱少了200,小明却没收到转账,这时候李华就无缘无故少了200,这肯定不行啊,所以为了解决此系列问题,就要用到事务了。
事务的特点是这一组单元操作要么都成功要么都失败,肯定不会出现只李华少钱而小明没收到钱的事情了。

怎么使用事务?

事务的使用很简单,看完下面的你就会使用了:
(1)开启事务
start transaction;
(2)执行多条sql语句

(3)关闭或提价事务:rollback/commit

那么对上面的操作进行修改:

此时直接将mysql关闭再打开看看李华的钱是否减少:

可以看出李华的钱并没有减少,(1)(2)两步操作全部完成时:

这样就ok啦!

以上是关于初识Mysql事务的主要内容,如果未能解决你的问题,请参考以下文章

初识Mysql事务

初识Mysql事务

事务初识

分布式事务科普(初识篇)

数据库初识2

初识MariaDB之6——半同步复制