什么是务物?
事物指的是逻辑上的一组操作,这组操作要么全部成功,要么全部失败。
一起成功
一起失败
事务的特性
- 原子性
- 一致性
- 隔离性
- 持久性
1.原子性
原子性是指事物是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。
2.一致性
一致性指事务前后数据的完整性必须保持一致
3.隔离性
隔离性指多个用户并发访问数据库时,一个用户的事务不能被其他用户的事务所干扰,多个并发事务之间数据要相互隔离。
4.持久性
持久性是指一个事务一旦被提交,它对数据库中的数据的改变就是永久性的,即使数据库发生故障也不应该对其有任何影响。
如果不考虑隔离性问题,会引发安全问题如下
- 脏读
- 不可重复读
- 幻读
1.脏读
一个事务读取了另一个事务改写但还未提交的数据,
如果这些数据被回滚,则读到的数据是无效的。
2.不可重复读
在同一个事务中,多次读取同一数据返回的结果有所不同。
3.幻读
一个事务读取了几行记录后,另一个事务插入一些信息,幻读就发生了。
再后来的查询中,第一个事务就会发现有些原来没有的记录。
什么是事务的传播行为?
解决业务层方法之间的相互调用的问题