数据库事务隔离级别
Read uncommitted 读未提交
一个事务可以读取另一个未提交事务的数据,会发生脏读;
Read committed 读提交
一个事务要等另一个事务提交后才能读取数据,能解决脏读问题,但是会发生不可重复读:一个事务范围内两个相同的查询却返回了不同数据,对应的是修改,即UPDATE操作;
Repeatable read 重复读
在开始读取数据(事务开启)时,不再允许修改操作,能解决重复读问题,但是会发生幻读:对应的是插入INSERT操作,而不是UPDATE操作;
Serializable 序列化
Serializable 是最高的事务隔离级别,在该级别下,事务串行化顺序执行,可以避免脏读、不可重复读与幻读。但是这种事务隔离级别效率低下,比较耗数据库性能,一般不使用。
eg:大多数数据库默认的事务隔离级别是Read committed,比如Sql Server,Oracle。Mysql的默认隔离级别是Repeatable read。
本文作者:还可入梦
本文链接:https://www.cnblogs.com/stilldream/p/16423450.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆,转载请附上原文出处链接及本声明。许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步