MYSQL中使用事务的案例

 基本介绍

事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml语句要么全部成功,要么全部失败。如:网上转账就是典型的要用事务来处理,用以保证数据的一致性。

关键词

start transaction: 开始一个事务

savepoint : 保存点

rollback to 保存点: 回滚到某个保存点.

rollback : 回滚

commit : 提交

案例

步骤如下 【实现事务】

(1) 开始一个事务

(2) 做一个保存点a

(3) 先删除一个用户

(4) 做一个b保存点

 

savepoint b;

(5) 执行了update

(6) 做了一个c保存点

 

savepoint c;

(7)可以回退到指定的某个保存点

rollback to 保存点;

(8) 当我们确定没有任何问题时,就可以正式提交了

commit;

说明,一旦提交了,我们的所有的保存点就没有。

事务的细节

(1) 没有设置保存点

开始事务时,事务会默认给你创建一个保存点,如果你希望回退也可以使用rollback , 就可以直接回退到事务开始的状态.

(2) 多个保存点

我们可以设置多个保底点,但是如果我们回退时,需要按顺序回退。即如果你回退到前面的某个保底点,那么后面的保存点就没有了.

(3) 存储引擎

如果要支持事务,需要存储引擎是 innodb;

(4) 开始事务方式

start transaction;

set autocommit = false;

 

 

原文地址:https://www.cnblogs.com/lsqbk/p/10145306.html