数据库事务隔离级别
2022/1/25 19:07:04
本文主要是介绍数据库事务隔离级别,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一共四种,由低到高:Read uncommitted、Read Committed、Repeatable read、Serializable。在事务的并发操作中可能会出现读脏数据,不可重复读,幻读,序列化。
读未提交(最低级别,任何情况都无法保证),一个事务可以读取另一个未提交事务的数据。
读提交(可避免脏读),就是一个事务要等另外一个事务提交后才能读取数据。
重复读(可避免脏读和不可重复读),就是在开始读取数据时,不再允许修改数据的操作。
Serializable(可避免脏读、不可重复读、幻读),是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是该事务隔离级别效率低下,比较消耗数据库性能,一般不使用。
小tips:大多数数据库默认的事务隔离级别是Read committed,如Sql Server,Oracle。Mysql的默认隔离界别是Repeatable read。
小tips:隔离级别的设置只对当前链接有效。对于使用MySQL命令窗口而言,一个窗口就相当于一个链接,当前窗口设置的隔离级别只对当前窗口的事务有效;对于JDBC操作数据库来说,一个Connection对象相当于一个链接,而对于与Connection对象设置的隔离级别只对该Connection对象有效,与其他链接Connection对象无关。
小tips:设置数据库的隔离级别一定要是在开启事务之前。
这篇关于数据库事务隔离级别的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?