SSM-Spring-数据库事务管理-数据库的相关知识

本文探讨了数据库事务的原子性、一致性、隔离性和持久性,以及脏读、丢失更新和不同隔离级别的概念,包括脏读、不可重复读和幻读现象。详细解读了SQL标准中的四种隔离级别及其应用实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SSM-Spring-数据库事务管理-数据库的相关知识


数据库事务ACID的特性

​ 数据库事务正确执行的 个基础要素是:

  • 原子性:整个事务的所有操作,要么全部完成,要么都不完成,不可能停留在中间某个环节,事务执行发送错误,会被回滚到开始前的状态
  • 一致性:一个事务可以改变封装状态,事务必须始终保持系统处于一致状态
  • 隔离性:两个事务之间的隔离程度(难理解)
  • 持久性:事务完成后,该事务对数据库所做的更改便持久保存在数据库之中,不会被回滚

丢失更新

​ 当数据库在一个事务的环境中运行,多个事务的并发会产生一系列问题,主要问题之一是丢失数据


隔离级别

​ 在不同程度上减少丢失更新,按照SQL的标准规范,把隔离级别分为4层:

  1. 脏读(dirty read):最低隔离级别,允许一个事务读取另一个事务中未提交的数据
  2. 读写提交(read commit):一个事务只能读取另一个已提交的数据。
  3. 可重复读(repeatable read):使得同一条数据库记录读写按照序列化进行操作,不会产生交叉情况,保证数据的一致性
  4. 序列化(Serizlizable):让SQL按照顺序读写的方式

各类隔离级别和产生现象:

隔离级别脏读不可重读幻读
脏读111
读写提交011
可重复读001
序列化000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值