(18)事务特性、语法、简单原理

一、事务特性ACID

事务:通俗的说,指一组操作,要么都成功的执行,要么都不执行—>原子性(atomicity)
在所有的操作没有执行完毕之前,其他回话不能够看到中间改变的过程—>隔离性(lsolation)
事务发生前和发生后,数据的总额依然匹配—->一致性(consistency)
事务产生的影响不能撤销—->持久性(durability)
如果出现了错误,事务不能撤销,只能通过“补偿性事务”

注意:关于事务的存储引擎:innodb

二、事务语法

开启事务:start transaction;
commit提交/rollback回滚
注意:①当一个事务commit或者rollback后,事务就结束了,所以要重新开启事务
②一些语句会造成事务的隐式提交,比如start transaction

create table account(
    id int,
name varchar(10),
money int
)engine=innodb charset=utf8;

insert into account values(1,'李三',3000);
insert into account values(2,'赵四',3000);

start transaction;
update account set money=money-500 where id=1;
update account set money=money+500 where id=2;

commit;

三、事务的基本原理

这里写图片描述

posted @ 2017-08-15 10:20  测试开发分享站  阅读(122)  评论(0编辑  收藏  举报