十四、事务处理
1. 简介
transaction
事务处理是用来保证数据操作的完整性。
一个业务是由若干个一次性操作来组成,这些操作要么都成功,要么都失败,如银行转账。
事务特性ACID:
- 原子性(Atomicity):不可再分
- 一致性(Consistency):要保证数据前后的一致性
- 隔离性(Isolation):两个事务的操作互不干扰
- 持久性(Durability):一旦事务提交,不可回滚
2. 事务操作
MySQL默认是自动提交事务的,将每一条语句都当作一个独立的事务执行,可以通过autocommit关闭自动提交事务。
- 查看autocommit模式:show variables like 'autocommit'
- 关闭自动提交:set autocommit=off 或 set autocommit=0
- 手动提交事务:commit
- 手动回滚事务:rollback