1、A (Atomicity) 原子性
原子性很容易理解,也就是说事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务里的所有操作都成功,只要有一个操作失败,整个事务就失败,需要回滚。

比如银行转账,从A账户转100元至B账户,分为两个步骤:1)从A账户取100元;2)存入100元至B账户。这两步要么一起完成,要么一起不完成,如果只完成第一步,第二步失败,钱会莫名其妙少了100元。

2、C (Consistency) 一致性
一致性也比较容易理解,也就是说数据库要一直处于一致的状态,事务的运行不会改变数据库原本的一致性约束。

例如现有完整性约束a+b=10,如果一个事务改变了a,那么必须得改变b,使得事务结束后依然满足a+b=10,否则事务失败。

3、I (Isolation) 隔离性
所谓的独立性是指并发的事务之间不会互相影响,如果一个事务要访问的数据正在被另外一个事务修改,只要另外一个事务未提交,它所访问的数据就不受未提交事务的影响。
比如现有有个交易是从A账户转100元至B账户,在这个交易还未完成的情况下,如果此时B查询自己的账户,是看不到新增加的100元的。

4、D (Durability) 持久性
持久性是指一旦事务提交后,它所做的修改将会永久的保存在数据库上,即使出现宕机也不会丢失。

最新文章

  1. iOS 杂笔-25(不要用copy修饰NSMutableString)
  2. DeviceIoControl 应用层如何和驱动层通信?
  3. EF自动生成的模型edmx代码分析
  4. java杂记——数组拷贝
  5. salt进程查看插件&salt批量创建用户
  6. Bootstrap 表格和按钮
  7. TFS build dotCover StyleCop
  8. Why does uitableview cell remain highlighted?
  9. 软交换和IMS是什么关系
  10. C#“简单加密文本器”的实现
  11. tp框架之对列表的一系列操作及跳转页面(详细步骤)
  12. 对于mariadb安装后可以默认使用无密码登录的问题解决方案
  13. luogu P5301 [GXOI/GZOI2019]宝牌一大堆
  14. Gvim:unable to load python
  15. JavaScript 对象属性底层原理
  16. C#中struct和class的区别详解
  17. 洛谷P1414又是毕业季二题解
  18. thinkphp模板继承
  19. File类_常见的方法(获取,创建与删除,判断,重命名)
  20. C/C++.全文件名全路径名分割拆分分解

热门文章

  1. C语言函数重入
  2. Python设置默认编码为UTF-8
  3. JDK源码分析之concurrent包(四) -- CyclicBarrier与CountDownLatch
  4. Powershell Exchange Server UP Time
  5. Powershell About Active Directory Group Membership of a domain user
  6. shell输出颜色
  7. 定时备份DB和WEB文件
  8. <2014 08 28> 大学学习小结
  9. python基础之类的继承与派生、组合、接口与归一化设计、抽象类、子类中调用父类方法
  10. tomcat和jboss的区别