事务简单讲解

1.事务

一个最小的不可再分的工作单元;通常一个事务对应一个完整的业务(例如银行账户转账业务,该业务就是一个最小的工作单元)

一个完整的业务需要批量的DML(insert、update、delete)语句共同联合完成。事务,就是一组操作数据库的动作集合。事务是现代数据库理论中的核心概念之一。

2.事务四大特征(ACID)

  1. 原子性(A):事务是最小单位,不可再分
  2. 一致性(C):事务要求所有的DML语句操作的时候,必须保证同时成功或者同时失败
  3. 隔离性(I):事务A和事务B之间具有隔离性
  4. 持久性(D):是事务的保证,事务终结的标志(内存的数据持久到硬盘文件中)

3.七种事务传播特性

1.PROPAGATION_REQUIRED – 支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。
2.PROPAGATION_SUPPORTS – 支持当前事务,如果当前没有事务,就以非事务方式执行。
3.PROPAGATION_MANDATORY – 支持当前事务,如果当前没有事务,就抛出异常。
4.PROPAGATION_REQUIRES_NEW – 新建事务,如果当前存在事务,把当前事务挂起。
5.PROPAGATION_NOT_SUPPORTED – 以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。
6.PROPAGATION_NEVER – 以非事务方式执行,如果当前存在事务,则抛出异常。
7.PROPAGATION_NESTED – 如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则进行与PROPAGATION_REQUIRED类似的操作。
 

猜你喜欢

转载自blog.csdn.net/qq_41326048/article/details/85331619
今日推荐