12事务

事务是一组sql语句批量执行,要么全部执行成功,要么全部执行失败

START TRANSACTION;#开启事务,关闭mysql自己的自动提交方式,仅限于本窗口

UPDATE account SET money=money-1000 WHERE id=2;
UPDATE account SET money=money+1000 WHERE id=1;

COMMIT;    #提交当前事务
#ROLLBACK 回滚当前事务

原子性:对其数据的修改,要么全都执行,要么全都不执行

一致性:原来怎样,现在还怎样

隔离性:一个事务不能知道另一个事务的执行情况

持久性

只有Innodb数据库引擎的数据库或表才支持事务;

事务控制语句

BEGIN或START TRANSACTION; 显式地开启一个事务;

SAVEPOINT : 保存点,可以把一个事物分割成几部分.在执行ROLLBACK 时 可以指定在什么位置上进行回滚操作.

SAVEPOINT sa1;
...
ROLLBACK TO sa1;

猜你喜欢

转载自www.cnblogs.com/start20180703/p/10354435.html