有了事务好管理

前言

事务:也就是一个用户操作中,需要包含哪些具体操作。这些操作集合在一起,就是事务。这些操作必须是具体的,必要的,不可分割的。要么全部完成,要么全部失败。

比如你给你朋友转账1000块的操作,分成几个步骤就是:

  1. 自己的账户扣1000块钱
  2. 对方的账户加1000块钱
  3. 把这笔转账行为记录在服务器中

这三个步骤就具备了原子性,一致性,隔离性,持久性

原子性:**要么全部完成,有一个完成不了就全部回滚。**比如自己的账户扣钱成功,但是对方的账户加钱失败,那么就回滚,自己的账户的钱恢复到转账钱的余额。

一致性: **一致性代表了底层数据存储的完整性。**例如你转账给朋友1000块,那你的账户要扣1000块,你朋友的账户得增加1000块,如果只增加了500块,那就是不一致。

隔离性:**隔离性意味着事务必须在不干扰其他进程或事务的前提下独立执行。**也就是,在事务或工作单元执行完毕之前,其所访问的数据不能受系统其他部分的影响。比如你在给朋友转账的时候,别人给你转账是转不了的。因为要确保你的账户的隔离。

持久性:**持久性表示在某个事务的执行过程中,对数据所作的所有改动都必须在事务成功结束前保存至某种物理存储设备。**转账后要把这次转账记录在服务器里,不管过了多久都可以查。

事务的三个主要方法:开启事务 BeginTranscation()提交 commit()回滚 rollback()