数据库中的事物理解

事务是一种操作集合,在计算机属于中是指访问并可能更新数据库各种数据项的一个程序执行单元。通常指数据库事务。

举例说明通过数据库事务保证数据的完整性和准确性。熟悉关系型数据库事务的都知道从帐号A到帐号B需要6个操作:

1、从A账号中把余额读出来(500)。
2、对A账号做减法操作(500-100)。
3、把结果写回A账号中(400)。
4、从B账号中把余额读出来(500)。
5、对B账号做加法操作(500+100)。
6、把结果写回B账号中(600)。

原子性:保证所有过程要么都执行,要么都不执行。一旦执行中出现问题,必须回滚到起始状态。

一致性:在转账之前,A和B的账户中共有500+500=1000元钱。在转账之后,A和B的账户中共有400+600=1000元。也就是说,数据的状态在执行该事务操作之后从一个状态改变到了另外一个状态。同时一致性还能保证账户余额不会变成负数等。

隔离性:并发访问数据库不同事务间不受影响。

持久性:一旦转账成功(事务提交commit),两个账户钱发生改变(会把数据写入数据库作持久化保存)


事物的原子性和一致性缺一不可!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值