事务回滚

事物的定义

定义:事务(transaction)是为保障数据操作可靠而独立执行的逻辑单元

事务的特性

事务必须具备以下四个特性,简称ACID特性

原子性Atomicity:事务是不可分割的

一致性 Consistency:事务处理前后数据保持一致

隔离性 Isolation:事务处理必须是独立的彼此隔离

持久性 Durability:事务对数据库的修改被永久保存

事务提交方式

手动提交事务

自动提交事务

流程

 

管理事务的语句

 开启事务  BEGIN

 提交事务  commit

 回滚事务  rollback

如何使用手动提交事务

转账过程

#开启事务(指定事务从此处开始)

BEGIN;

 

#转账:张三的账户少1000元

UPDATE my_account SET money = money-1000   WHERE name='张三';

 

#李四的账户多1000元

UPDATE my_account  SET money=money+1000    WHERE name='李四';

 

#事务提交(指定事务在此结束)

COMMIT;

注:

事务前后数据总和一致,保证数据一致性

自动提交事务

查看事务状态

show variables like "autocommit";

如何设置

关闭自动提交

set autocommit = off/0;

开启自动提交

set autocommit =on/1;

posted @ 2020-07-21 22:51  luowendy  阅读(171)  评论(0编辑  收藏  举报