数据库中的事务

目录

1,什么是事务

2,事务的四大特性(ACID)

3,事务的隔离级别

4,脏读,不可重复读,幻读


1,什么是事务

事务指的是,数据库管理执行过程中的一个逻辑单位。它可以维护数据库的完整性,它保证数据要么全部执行,要么全部不执行。

2,事务的四大特性(ACID)

四大特性指的是原子性,一致性,隔离性,持久性

 原子性(Atomicity):原子性可以保证数据执行要么全部完成,要么全部不完成,它是最小的执行单位。

一致性(Consistency):事务执行前后,都处于一致性的状态(假设A存款为5000元,B存款为5000元。A向B进行转账操作,转账金额为1000元,事务执行成功后,A存款变为4000元,B存款6000元,但是A和B金额的总额还是为10000元。)

隔离性(Isolation):数据库允许多个事务同时对数据进行读,写,修改。隔离性可以防止由于多个事务并发操作执行,导致数据不一致。

持久性(Durability):事务执行后,对数据库中的数据修改是永久的,即便计算机系统故障,也不会丢失数据。

3,事务的隔离级别

读未提交(Read uncommitted ):一个事务可以读取到另外一个事务还未提交的数据。在并发操作下,会产生脏读,不可重复读,幻读。

读已提交(Read committed):一个事务要等到另外一个事务提交之后才能读取到数据。这种隔离级别会解决脏读,在并发操作下,会产生不可重复读,幻读。

可重复读(Repeatable read):事务隔离级别的默认等级,即事务开启时,不允许再对数据进行修改,解决了不可重复读,在并发操作下会产生幻读。

串行化(Serializable):事务隔离级别的最高等级,在该级别下,事务按串行化顺序执行。它解决了脏读,不可重复读,幻读,在实际操作中一般不设置,因为它效率低下。

4,脏读,不可重复读,幻读

脏读:一个事务读取到另外一个事务还未提交的数据

不可重复读:指在同一个事务内,多次读取同一条件的数据,数据的条数相同,但是数据的值不同

幻读:指的是我们在数据库中,去查询一条数据,发现没有该数据,后面我们对其去进行添加,发现添加不进去,以为自己产生了幻觉。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值