每日一博 | 完蛋,我的事务怎么不生效?
前言 事务大家平时应该都有写,之前写事务的时候遇到一点坑,居然不生效,后来排查了一下,复习了一下各种事务失效的场景,想着不如来一个总结,这样下次排查问题,就能有恃无恐了。那么先来复习一下事务相关知识,事务是指操作的最小工作单位,作为一个单独且不可切割的单元操作,要么全部成功,要么全部失败。事务有四大特性(ACID): 原子性(Atomicity):事务包含的操作,要么全部成功,要么全部失败回滚,不会存在一半成功一半失败的中间状态。比如A和B一开始都有500元,A给B转账100,那么A的钱少了100,B的钱就必须多了100,不能A少了钱,B也没收到钱,那这个钱就不翼而飞了,不符合原子性了。 一致性(Consistency):一致性是指事务执行之前和之后,保持整体状态的一致,比如A和B一开始都有500元,加起来是1000元,这个是之前的状态,A给B转账100,那么最后A是400,B是600,两者加起来还是1000,这个整体状态需要保证。 隔离性(Isolation):前面两个特性都是针对同一个事务的,而隔离性指的是不同的事务,当多个事务同时在操作同一个数据的时候,需要隔离不同事务之间的影响...