zoukankan      html  css  js  c++  java
  • 数据库隔离级别

    一、事务和隔离级别
      事务的概念:事务是把对数据库的一系列操作都看做一个整体,要么全部成功,要么全部失败,利用事务我们可以保证数据库的完整性,事务具有原子性。
      隔离级别:隔离级别定义了事务与事务之间的隔离距离。

      

      脏读(dirty read):当一个事务读取另一个事务未提交的修改时,产生脏读。
      不可重复读(nonrepeated read):同一查询在同一事务中多次进行,由于其他事务提交所做的修改,导致每次返回的结果不同,此时发生不可重复读。
      幻读(phantom read):同一查询在同一事务中多次进行,由于其他事务或提交所做的新增删除操作,导致每次得到的不同的结果集,此时发生幻读。

      不可重复读侧重于修改,幻读侧重于新增或者删除。解决不可重复读只需要锁住满足条件的行,解决幻读需要锁表。

    二、Oracle的事务隔离级别有两种

    • READ COMMITTED :读已提交
    • SERIALIZABLE:串行读取

      Oracle默认隔离级别为:读已提交(READ COMMITTED)

    三、MySQL的事务隔离级别有四种

    • 读未提交 (Read uncommitted)
    • 读已提交 (Read committed)
    • 可重复读 (Repeated read)
    • 可串行化 (Serializable)

      MySQL默认隔离级别为:可重复读 (Repeated read)

    参考链接:数据库的4种隔离级别

  • 相关阅读:
    hdu 4525(数学)
    hdu 4524(模拟)
    hdu 4523(大整数)
    hdu 4517(递推枚举统计)
    hdu 4520
    hdu 4519(数学题)
    hdu 4514(树的直径+并查集)
    hdu 4510(模拟)
    hdu 2089(数位DP)
    hdu 4506(数学,循环节+快速幂)
  • 原文地址:https://www.cnblogs.com/jxxblogs/p/12170445.html
Copyright © 2011-2022 走看看