1、事务的特性:(面试题)

l 原子性:处于同一个事务中的多条语句,要么全都成功,要么全都不成成功。

l 一致性:事务必须使数据库从一个一致性状态变换到另外一个一致性状态。比如转账:转账前a+b=2000,转账后a+b=2000

l 隔离性:多线程并发时,一个事务不能被其他事务所干扰。

l 持久性:数据应该被永久性的保存起来。(硬盘,而不是内存)

ACID

2、事务的隔离性专题

如果不考虑事务的隔离性,会导致以下不正确的问题:

a、脏读:指一个事务读到了另外一个事务中未提交的数据

b、不可重复读:指一个事务读到了另外一个事务update后(事务提交了)的数据

c、虚读:指一个事务读到了另外一个事务insert的数据

3、演示操作:

3.1数据库控制隔离级别相关的语句(必须用在事务之中):

数据库有四个隔离级别:

READ UNCOMMITTED:脏读、不可重复读、虚读都有可能发生。

READ COMMITTED:防止脏读发生;不可重复读、虚读都有可能发生。

REPEATABLE READ:(MySQL默认级别)防止脏读、不可重复读;虚读有可能发生。

SERIALIZABLE:防止脏读、不可重复读、虚读的发生

特点:从上到下,隔离级别越高,数据越安全,但是效率越低

select @@tx_isolation; 查看当前数据库的隔离级别

set transaction  isolation  level 四个级别之一;更改当前事务的隔离级别

转载于:https://www.cnblogs.com/baijin05/p/5073383.html

事务的特性和隔离级别相关推荐

  1. 事务四大特性及隔离级别

    事务四大特性及隔离级别 咱们都知道事务有四大特性ACID,也就原子性(atomicity|ætəˈmɪsəti|). 一致性(consistency).隔离性(isolation|aɪsəˈleɪʃn ...

  2. 事务概念和事务四大特性和隔离级别

    什么是事务 事务四大特性 原生的JDBC事务处理 事务的隔离级别

  3. 粗谈MySQL事务的特性和隔离级别

    网上对于此类的文章已经十分饱和了,那还写的原因很简单--作为自己的理解笔记. 前言 ​  此篇文章作为自己学习MySQL的一些个人理解,使用的引擎是InnoDb.首先先讲讲事务的概念,在<高性能 ...

  4. 数据库学习笔记:事务的特性和隔离级别

    事务特性:ACID AID是为了C服务的: 隔离级别与引发的问题: 隔离等级/问题 数据丢失 脏读 不可重复度 幻读 无限制 YES YES YES YES READ UNCOMMITTED NO Y ...

  5. 事务传播特性和隔离级别

  6. MySQL的事务总结(事务特性,隔离级别,脏读,不可重复读,幻读,常见问题)

    MySQL的事务总结(事务四大特性,隔离级别,脏读,幻读) MYSQL官网:https://dev.mysql.com/doc/refman/8.0/en/innodb-transaction-iso ...

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

    本篇文章主要介绍数据库事务的四大特性ACID,以及数据库的隔离级别. 事务 概念 事务指的是满足 ACID 特性的一系列操作.在数据库中,可以通过 Commit提交一个事务,也可以使用 Rollbac ...

  8. MySQL事务原理分析(ACID特性、隔离级别、锁、MVCC、并发读异常、并发死锁以及如何避免死锁)

    MySQL事务原理分析(ACID特性.隔离级别.锁.MVCC.并发读异常.并发死锁以及如何避免死锁) 一.事务 目的 组成 特征 事务空间语句 二.ACID特性 原子性(A) 隔离性(I) 持久性(d ...

  9. mysql 四大基础操作_事务的四大特性和隔离级别

    MySQL是开源免费和功能多面的小型数据库,MySQL也是目前流行通用的关系型数据库,已经被 Oracle 收购了.随着版本更新升级,加入一些高级功能,MySQL6.x 版本也开始收费.不过本教程将使 ...

最新文章

  1. Leetcode5633. 计算力扣银行的钱[C++题解]:模拟简单
  2. iOS逆向之hook框架frida的安装和使用
  3. 如何优化WebRTC提升直播体验?
  4. python基础教程--代码集合(下)
  5. linux 常用命令 杂记
  6. Skywalking-06:OAL基础
  7. ajax高效分页查询,基于 Jquery+Ajax+Json高效分页实现代码
  8. java蛮力法解决任务分配问题_【算法题】任务分配问题---匈牙利算法
  9. oracle存货管理系统,存货管理系统的功能模块有哪些?
  10. arm交叉编译工具链的选择
  11. 【渝粤教育】电大中专混凝土结构_1作业 题库
  12. Vue动态加载组件的两类方式(import和require)
  13. 点击编辑按钮,前端table表格行内指定td可修改。(table是动态生成的)
  14. 金蝶KIS商贸高级版V6.1开发实现‘序时簿中心’增加'联系人'字段列
  15. 英语语法笔记--定语从句及同位语从句
  16. Mysql数据库日期查询
  17. 投资 2 -- 新股民必须树立正确的价值观
  18. 台式电脑如何修复计算机,台式电脑没有声音了怎么恢复(在家用这两个方法轻松解决)...
  19. 计算机安全模式win7,win7安全模式下怎么恢复系统
  20. 支付系统就该这么设计(万能通用)

热门文章

  1. ssh登录服务器提示错误no hostkey alg
  2. bash shell 中时间操作常用方法总结
  3. 清除Pycharm设置的方法
  4. Java Web开发技术教程入门-JavaBean组件与Servlet
  5. C#:继承过程中的静态成员
  6. Django create_user with is_active=False
  7. web项目从Myeclipse迁移到idea的二三事
  8. 用java创建UDF,并用于Hive
  9. php 非常有用的高级函数PATH_SEPARATOR常量和set_include_path
  10. 地图图元的闪烁效果制作