AI智能
改变未来

MySQL事务的特性举例简析


事务理解

定义:可以理解为一组SQL的集合,也就是完成一件事情的所有步骤

例子:某系统中,两个用户(如A、B)之间金额转赠,
1)通常需要将A减去对应转赠金额,
2)B加上对应的转赠金额。
这两步可以称为一个事务,1)2)两步必须同时成功,否则回滚到原始状态(A、B均维持没转赠之前金额)。

事务特性

事务特性:ACID
1、A aotomatic 原子性(即转赠事务必须由上面1)2)两步构成,只执行其中一步则必须触发回滚)

2、C consistency 一致性(即转赠后和没转赠前,两者所在金额总和是恒定值,不会因为转赠操作而导致金额丢失)

3、I isolation 隔离性(即A转赠给B和C转赠给D没有任何影响,隔离开)

4、D durability 持久性(即A转赠给B成功后,没有其他操作改变A、B金额情况下,会一直维持A-转赠金额,B+转赠金额状态)

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » MySQL事务的特性举例简析