一、什么是事物
事物:一个最小的不可分割的工作单元。(例:银行转账业务)
原子操作是对一个单一的对象(包括类域、数组元素等永久对象)数据进行修改过程中发生断电、严重异常等失败情况时,保证原始数据的完整性,即恢复到初始数据状态。事务操作是对一系列的永久数据更新的一个逻辑的集合,要么所有的永久数据的修改都正确完成,要么所有的数据都被恢复为它们以前的值。
银行账户表 tb_act
actno balance
1 500
2 100
转账操作
客户1给客户2转账100
update tb_act set balance = 400 where actno = 1;
update tb_act set balance = 200 where actno = 1;
以上的两条语句必须同时成功同时失败。因为如果一条成功一条失败,就会出现业务问题。如果我们把这两条语句封装为一个事物,要么两条语句同时成功提交要么两条语句同时失败并回滚。
二、事物的四大特征
- 原子性:事物是最小单位,不可再分
- 一致性:事