数据库事务特性以及隔离级别
1,事务特性: 数据库的事务特性有四个,分别是原子性(Atomicity),一致性(Consistency),隔离性(Isolation),持久性(Durability),也就是传说中的ACID。他们大概的意思就是: (1)原子性:一个事物会包括很多操作,比如增删改,原子性就是要保证这些操作,要么全部成功,如果有一个失败,那么全部失败。 (2)一致性:事务执行前和事务执行后应保持库一致,感觉像没说一样,一个例子,一个事物的操作为将A表的数据存到B表中,那么当事务执行完毕之后,必须保证A+B跟事务执行前的A+B值是一样的 (3)隔离性:事务和事务之间的特性,两个事务相互隔离,互相不影响 (4)持久性:事务执行完毕之后,表中的数据就持久下来,不会自己没事就消失了 2,事务的隔离级别 事务的隔离级别,指的就是事务的四个特性中的隔离性的级别,按照隔离的强度区别,分为四个级别 (1)读未提交: 指的是一个事务可以读出另一个事务未提交的结果,举个例子:发工资了,经理准备给小王发50000块钱,执行了一个sql,将50000块钱存到了小王的表里,小王这时候看到了很开心,觉得瞬间从屌丝变成了高富帅,这时候经理发现不对,多打了一个0!!于是就执行了一个sql,修改了50000变成了5000,然后提交了事务,这时候小王取钱,只能取到5000了。 (2)读已提交 指的是事务只能读到别的事务提交后的结果