数据库
事务的基本特性
事务的基本特性ACID分别是:
原子性:指的是一个事务中的操作要么全部成功,要么全部失败。
A和B的操作一起做,要么大家一起失败,要么大家一起成功。
一致性:指的是数据库总是从一个一致性的状态转换到另外一个一致性的状态(事务最终的目的)。
例子:
事务开始前:A有1000元,B有1000元;
操作为:A要向B转账500元;
事务完毕后正确的一致性结果:A剩余500元,B剩余1500元;
不一致的情况举例:A剩1000元,B剩1500元 或 A剩500元,B剩1000元等情况都属于不一致状态;
除了数据一致性之外还有另外一种情况:
那就是字段一定要符合约束
1.比如一些字段必须保证不能为负数(A有100元想给B转200元,那么就不能转,否则就会变成负数)
2.事务操作前后,主键ID必须为1
隔离性:指的是一个事务修改在最终提交前,对其他事务是不可见的。
例子:
事务开始前:A有1000元,B有1000元,C有1000元;
操作为:A要向B转账