数据库事务是什么?

你用支付宝去去超市买东西,100块钱转给超市,其实这是两步:数据库

  • 第一步,在支付宝数据库中你的帐户减去100;
  • 第二步,在超市的支付宝帐户上加上100元,交易完成;

可是若是第一步完成了,还没执行第二步的时候,停电了会发生什么呢?并发

会发生,你的帐户减小了100块,超市的帐户金额没变,这不就出现问题了,不得打架了吗?事务

为了解决这个数据一致性问题,数据库事务应运而生。支付宝

 

数据库事务是指一个逻辑单元执行的一系列操做,一个逻辑工做单元必须有四个属性,称为 ACID(原子性、一致性、隔离性和持久性)属性ci

  • 原子性(Atomicity):事务做为一个总体被执行,包含在其中的对数据库的操做要么所有被执行,要么都不执行。
  • 一致性(Consistency):事务应确保数据库的状态从一个一致状态转变为另外一个一致状态。 一致状态的含义是数据库中的数据应知足完整性约束。
  • 隔离性(Isolation):多个事务并发执行时,一个事务的执行不该影响其余事务的执行。
  • 持久性(Durability):已被提交的事务对数据库的修改应该永久保存在数据库中
相关文章
相关标签/搜索