数据库事务详解

Posted linliquan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库事务详解相关的知识,希望对你有一定的参考价值。

一.什么是事务 

事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。

事务具有4个基本特征,分别是:原子性、一致性、隔离性、持久性

 

A:原子性(Atomicity):事务中的操作要么都不做,要么就全做。


C:一致性(Consistency):事务执行的结果必须是从数据库的一个一致性状态转换到另一个一致性状态。


I:隔离性(Isolation):一个事务的执行不能被其他事务干扰。


D:持久性(Durability):一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

 

二、事物的隔离级别

  • 在标准SQL规范中,定义了4个事务隔离级别,不同的隔离级别对事务的处理不同。4个隔离级别分别是:读未提及(READ_UNCOMMITTED)、读已提交(READ_COMMITTED)、可重复读(REPEATABLE_READ)、顺序读(SERIALIZABLE)。

 

三、事务并发引起的问题

  • 数据库在不同的隔离性级别下并发访问可能会出现以下几种问题:脏读(Dirty Read)、不可重复读(Unrepeatable Read)、幻读(Phantom Read)。



以上是关于数据库事务详解的主要内容,如果未能解决你的问题,请参考以下文章

spring事务详解

详解spring事务

数据库事务详解

Spring中管理数据库事务的配置使用详解

Mysql高手系列 - 第14篇:详解事务

三大常用数据库事务详解之三:事务运行模式