网站开发 APP开发 小程序开发 SEO优化 公司新闻

数据库事务的四大特性以及隔离级别

2018-06-20 00:00:00
1271

  1. 原子性:事物包含的所有操作哟啊莫全部成功要么全部失败回滚

  2. 一致性:一个事物执行之前和执行之后都必须处于一致性状态

  3. 隔离性:一个开启的事务不能被其他事务操作干扰,多个事务并发时要相互隔离

  4. 持久性:一个事物一旦被提交了,那么数据库中的数据的改变是永久的

  5. 如不考虑事务的隔离级别会发生几种问题:

  1).脏读:一个事务处理过程中读取了另一个未提交的事物中的数据

  2).不可重复读:一个事务多次查询却返回了不同的数据值,这是由于在查询间隔,被另一个事务修改并提交了

  3).幻读:事务非独立执行时发生的一种现象

  6.幻读和不可重复读的区别:不可重复读查询的都是同一个数据项,而幻读针对的是一批数据整体

  7.1).Serializable(串行化):可避免脏读、不可重复读、幻读

  2).Repeatable read(可重复读):可避免脏读、不可重复读、幻读

  3).Read committed(读已提交):可避免脏读

  4).Read umcommitted(读未提交):最低级别,任何情况都无法保证

  1,2,3,4 由高到低 效率越高,执行效率越低

  Mysql是可重复读

  Oracle只支持串行化,读已提交