时间:2021-07-01 10:21:17 帮助过:10人阅读
读未提交,读的事务还没有提交就会被读,会出现脏读的现象。 ----写允许读
读提交,就是只读提交后的事务,若有事务对数据进行更新(UPDATE)操作时,读操作事务要等待这个更新操作事务提交后才能读取数据,可以解决脏读问题。出现了一个事务范围内两个相同的查询却返回了不同数据,这就是不可重复读。 ----写禁止读
可重复读,就是在开始读取数据(事务开启)时,不再允许修改操作。 ----读禁止写,写禁止所有事务。
Serializable 是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是这种事务隔离级别效率低下,比较耗数据库性能,一般不使用。
事务的四大特性:
原子性(atomicity):原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚
一致性(consistency):一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。
隔离性(isolation):隔离性是当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离
持久性(durability):一旦事务提交,则其所做的修改就会永久保存到数据库中。此时即使系统崩溃,修改的数据也不会丢失。
数据库事务的隔离级别及四大特性
标签:查询 repeat commit 原子性 tom 避免 用户 依次 size