mysql在Update带有子查询的时候,子查询的表会锁住,导致该表无法使用。比如

update A set comments = (select count(1) from B where id = A.id) where id = 123;

把B表给锁住了。   而在Oracle里不存在这种情况 。

最后发现 mysql 默认的隔离级别是REPEATABLE-READ,oracle默认数据隔离级别是 READ-COMMITTED 。所以在mysq中

update ... select * from

insert into .... select * from

这些语句中,都会锁住子表的row.

将mysql 隔离级别改成

SET session TRANSACTION ISOLATION LEVEL READ COMMITTED;

问题就解决

MySQL锁类型以及子查询锁表问题、解锁

MySQL中select * for update锁表的范围 MySQL中select * for update锁表的问题 由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主 ...

mysql update 子查询作为条件

UPDATE t_commission_template tctJOIN ( SELECT max(id) maxid FROM t_commission_template WHERE taken_m ...

mysql死锁-查询锁表进程-分析锁表原因【转】

查询锁表进程: 1.查询是否锁表 show OPEN TABLES where In_use > 0;   2.查询进程     show processlist   查询到相对应的进程===然 ...

mysql死锁-查询锁表进程-分析锁表原因

查询锁表进程: 1.查询是否锁表 show OPEN TABLES where In_use > 0;   2.查询进程     show processlist   查询到相对应的进程===然 ...

mysql 查询锁表

1)使用情景“判断通过后写入数据库”,这个一般是不会有问题的, 但并发访问的时候就不太好搞.因为写入(insert)是需要时间的,假设现在有两个并发请求,(假设第一个访问是最后一个符合条件的写入请求, ...

mysql in 子查询 效率慢 优化(转)

mysql in 子查询 效率慢 优化(转) 现在的CMS系统.博客系统.BBS等都喜欢使用标签tag作交叉链接,因此我也尝鲜用了下.但用了后发现我想查询某个tag的文章列表时速度很慢,达到5秒之久! ...

MySQL 行子查询(转)

MySQL 行子查询 行子查询是指子查询返回的结果集是一行 N 列,该子查询的结果通常是对表的某行数据进行查询而返回的结果集. 一个行子查询的例子如下: SELECT * FROM table1 WH ...

MySQL FROM 子查询

FROM 子句中的子查询 MySQL FROM 子查询是指 FROM 的子句作为子查询语句,主查询再到子查询结果中获取需要的数据.FROM 子查询语法如下: SELECT ... FROM (subq ...

MySQL 行子查询

MySQL 行子查询 行子查询是指子查询返回的结果集是一行 N 列,该子查询的结果通常是对表的某行数据进行查询而返回的结果集. 一个行子查询的例子如下: SELECT * FROM table1 WH ...

随机推荐

Android 内容提供者简介

在Android应用中,我们可以使用显式意图(Explicit Intent)来直接访问其他应用的Activity,但是这仅限于Activity的范畴:如果需要使用其他应用的数据,还需要用到另外一种组 ...

怎么看网站是否开启CDN加速?测试网站全国访问速度方法详解

注意域名,动静分离的网站,只对静态文件的域名做了cdn 怎么看网站有没开启CDN? 要看一个网站是否开启CDN,方法很简单,只要在不同的地区ping网址就可以,比如在山东济南ping www.jb51 ...

VS2010调试速度很慢

1.使用vs2010,感觉速度越来越慢.重新设置了vs2010的环境(在vs2010命令提示符下,执行devenv.exe /resetuserdata),居然解决了这个问题,速度跑的很好.网上有人说 ...

你不知道的Java类

1.StrSubstitutor StrSubstitutor是一个很特殊的类,在String中使用${key}的方法在形成了一个可配置的模板,new一个HashMap使用HashMap替换Strin ...

cocos2d-x 在mac下执行 demo

搞了好久,最终成功了. 记录一下 前辈的文章. 依照这个弄的 .http://blog.csdn.net/taowenyin/article/details/11750127 前辈的这个文章是在win ...

【LeetCode】Reorder List 解题报告

Given a singly linked list L: L0→L1→-→Ln-1→Ln, reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→- You must do th ...

【转】BTree,B-Tree,B+Tree,B*Tree

B树: 即二叉搜索树: 1.所有非叶子结点至多拥有两个儿子(Left和Right): 2.所有结点存储一个关键字: 3.非叶子结点的左指针指向小于其关键字的子树,右指针指向大于其关键字的子树: 如: ...

CSS单行格式化与压缩

工具简介:CSS单行格式化与压缩工具

[C语言]进阶|程序结构

------------------------------------------------------------------------------------ 全局变量: // main.c ...

Office CVE-2017-8570远程代码执行漏洞复现

实验环境 操作机:Kali Linux IP:172.16.11.2 目标机:windows7 x64 IP:172.16.12.2 实验目的 掌握漏洞的利用方法 实验工具 Metaspliot:它是 ...

mysql update 子表,mysql update 子查询锁表问题相关推荐

  1. oracle缩表空间大小,Oracle查询锁 表空间名称和大小 被锁的表

    Oracle查询锁: SELECT A.OWNER 方案名, A.OBJECT_NAME 表名, B.XIDUSN 回滚段号, B.XIDSLOT 槽号, B.XIDSQN 序列号, B.SESSIO ...

  2. mysql查询数据会不会锁表_mysql select是否会锁表 ?

    mysql select是否会锁表 ? 有的人说mysql的 select 会锁表 ,有的人说 mysql 的查询不会锁表 . 其他他们都对,没有 ,但是很片面. 其实对于mysql的select 是 ...

  3. MySQL 数据库sql命令查询被锁的表实例演示,mysql的锁表与解锁,mysql强制解锁杀掉进程,mysql查询锁表一直转圈

    show open tables where in_use > 0 命令可以查询锁表. in_use 为 1 表示这个表同时被两个用户使用,一个正在用,一个在锁定中. -- 为md_class表 ...

  4. Oracle查询锁表以及杀会话或系统进程来解除锁表操作

    第一步,查询锁表信息 –查询被锁住的数据库对象 select object_name, machine, s.sid, s.serial#from v$locked_object l, dba_obj ...

  5. B表中的pid对应A表中id,查询A表中数据,根据b表中对应a表中该id的数据数目排序...

    B表中的pid对应A表中id,查询A表中数据,根据b表中对应a表中该id的数据数目排序 select a.*,count(*) as c from a left join b on a.id=b.ai ...

  6. 大文件表空间+创建大文件表空间+查询数据库表空间类型信息+查询数据库表空间类型信息...

    1用于解决存储文件大小不够的问题 2与普通表空间不同的地方在于大文件表空间只对应唯一一个数据文件或临时文件,普通表空间可最多1022个数据文件或临时文件 3大文件表空间对应文件可达4G个数据块大小,普 ...

  7. ORACLE数据库查询锁表语句sql脚本,以及删除锁信息脚本(数据库开发ETL、DBA必备)

    ORACLE数据库查询锁表语句sql脚本,以及删除锁信息脚本(数据库开发ETL.DBA必备) 文章目录 ORACLE数据库查询锁表语句sql脚本,以及删除锁信息脚本(数据库开发ETL.DBA必备) 前 ...

  8. 个人总结-oracle查询锁表、解锁语句

    –oracle查询锁表解锁语句 –首先要用dba权限的用户登录,建议用system,然后直接看sql吧 1. 如下语句 查询锁定的表. SELECT L.SESSION_ID SID,S.SERIAL ...

  9. oracle查询锁表信息

    以下SQL文可以查询锁表的ip,锁表的SQL等信息. SELECT l.session_id, s.serial#,s.machine, o.object_name, s.logon_time     ...

  10. SQLserver查询锁表和解锁

    SQLserver查询锁表和解锁 由于写错了一个过滤条件kettle从用友U8数据库中拉取发票明细数据时数据量过大强制停止后仍然在无法查询,怀疑是被锁表了. 查询锁表语句 select request ...

最新文章

  1. yii权限rbac验证三张表字段说明
  2. 【Paper】Origin绘制误差棒图(标准差围绕均值)
  3. 判断当前时间是否在某个时间范围内
  4. BugkuCTF-Crypto题告诉你个秘密
  5. 字符串转整数,不使用任何C语言库函数
  6. 在Unity内使用对象池并实现线程安全的单例模式
  7. socket连接时间太长受什么原因影响?_光纤收发器的六个指示灯都代表什么?
  8. 【概率证明】—— sum and product rules of probability
  9. 又优化了一下 Android ListView 异步加载图片
  10. Android software RD engineer能力模型
  11. android 扫雷小游戏
  12. SQL Server2005+SQL Server2000下载
  13. Java合并两个有序数组
  14. Sketch一站式设计开发工具 Dapollo插件 for mac v2.0.9破解版
  15. 多元线性回归分析spss结果解读_多重线性回归的结果解读和报告(SPSS实例教程)...
  16. HTML网页的基本结构
  17. 30-40W/年,某银行招聘架构设计岗(地点:上海)
  18. 操作系统——进程的状态与转换
  19. 条码枪扫码时,只能在文本框录入一位字符的问题
  20. android的vmos虚拟机,vmospro虚拟机

热门文章

  1. 通达OA2017版连接sqlserver2008数据库
  2. 无限增益多路反馈有源滤波器
  3. vivado SRIO 学习
  4. vmware虚拟机安装,网络配置,与xshell和xftp的连接(图文)
  5. c#获取中国三级行政区域划分(省市县)以及县级经纬度demo
  6. 利用最大流最小割算法matlab割图
  7. 河南省公安机关户政服务管理工作规范(试行)
  8. 别总写代码,这120多个网站比涨工资都重要
  9. AI自动还原OpenCV制作的九宫格拼图游戏(附源码)
  10. python ftp下载上传文件或文件夹