事务的特性

事务:

是指做事情的一个整体,这个整体由一系列的步骤构成,这些步骤要么全部成功,要么全部失败。由一个或者多个dml(insert,delete,update)语句组成。
 

事务的特性:ACID

1 原子性(atomicity)

事务包含的所有操作要么全部成功,要不全部回滚。操作成功就必须要完全应用到数据库,操作失败不能对数据库有任何影响

2 一致性(consistency)

事务执行前后都必须处于一致性状态。犹如自然界的能量守恒

3 隔离性(isolation)

事物之间互不干扰。对于并发的事务,每个事务都感觉不到有其他事务正在并发地进行。

4 持久性(durability)

事务一旦被提交了,那么对数据库的数据改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失提交事务的操作。
 

不考虑事务的隔离性会出现的问题:

赃读:

一个事务处理了另一个事务未提交的事务中的数据

不可重复读:

对于数据库中的某个数据,一个事务范围内多次查询却返回了不同的数据值,这是由于在查询间隔,被另一个事务修改并提交了。

幻读:

类似于不可重复读,只是不可重复读是期间有了update,导致内容不一致;而幻读是有了delete或者insert,导致数据量不一致。
原文地址:https://www.cnblogs.com/21556guo/p/14183692.html