zoukankan      html  css  js  c++  java
  • 事务的特性和隔离级别

    事务的特性:ACID

    原子性:事务是一个不可分割的工作单元,事务中的操作要么都发生,要么都不发生。

    一致性:一个事务中,事务前后的数据完整性要保持一致。

    隔离性:多个事务,多个用户并发访问数据库时,一个用户的事务不能被其他用户干扰。

    持久性:事务一旦提交,数据永久保存在数据库。

    并发访问引起的问题(由事务的隔离性引起的)

    脏读:读取到用户还没提交的数据。(在事务commit之前,sql执行后会将数据存到日志。)

    不可重复读取:一次事务中,两次读取同一个数据,数据内容不一致。

    虚读/幻读:一次事务中,两次读取的数据量(简单理解为行数)不一致。

    事务的隔离级别:

    1/ read uncommitted 读取尚未提交的数据 (不能解决问题)

    2/read committed 读取已经提交的数据 (解决脏读)----oracle默认

    3/repeatable read 重读读取 (解决脏读 和 不可重复读) ----mysql默认

    4/serializable 串行化 (解决脏读 不可重复读 和 虚读/幻读)----相当于锁表

  • 相关阅读:
    [BZOJ2809][Apio2012]dispatching
    [BZOJ4584][Apio2016]赛艇
    [BZOJ3206][Apio2013]道路费用
    [codeforces551E]GukiZ and GukiZiana
    [BZOJ3809]Gty的二逼妹子序列
    [BZOJ3289]Mato的文件管理
    [BZOJ3052][UOJ#58][WC2013]糖果公园
    [SPOJ10707]Count on a tree II
    [BZOJ1086][SCOI2005]王室联邦
    python小知识
  • 原文地址:https://www.cnblogs.com/SasaL/p/10647615.html
Copyright © 2011-2022 走看看