一,数据库事务
数据库中一组逻辑上的操作被称为事务,要么全都执行,要么全都不执行。
二,事务的四大特性ACID
1,原子性(Atomicity)
原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。
2,一致性(Consistency)
一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。
3,隔离性(Isolation)
一个事务开启,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。
4,持久性(Durability)
持久性是指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。
其中AID为C服务,事务的目的就是一致性
三,脏读,幻读,不可重复读
1,脏读
读取了未提交的新事物,然后被回滚了
事务A读取了事务B中尚未提交的数据。如果事务B回滚,则A读取使用了错误的数据。
解决:如果一个事物在读的时候,禁止读取未提交的事物。是不是就解决了。