1. 当前A(不区分是否为事务里)使用for UPDATE查询
SELECT * FROM saas_employee_label_person where id = 1 for UPDATE
1.1 其他地方B(不在上一个连接里或事务里, 不区分是否为事务里)使用for UPDATE 查询(需要获取锁)
SELECT * FROM saas_employee_label_person where id = 1 for UPDATE
会发生堵塞等待前一个A锁释放(A事务提交,或者A结束运行(A为非事务场景))
1.2 其他地方C(不区分是否为事务里)不使用for UPDATE?查询(无需获取锁)
SELECT * FROM saas_employee_label_person where id = 1
不会堵塞,可以查询
?
2. 当前A(不区分是否为事务里)使用for UPDATE查询
SELECT * FROM saas_employee_label_person where id = 1 for UPDATE
2.1 其他地方B(不区分是否为事务里)使用UPDATE更新数据
UPDATE saas_employee_label_person set employee_id = 1111 where id = 1;
会发生堵塞等待前一个A锁释放(A事务提交,或者A结束运行(A为非事务场景))
?
3. 当前事务A 使用UPDATE更新
BEGIN;
UPDATE saas_employee_label_person set employee_id = 11121 where id = 1;
3.1 其他地方B(不区分是否为事务里)使用?for UPDATE查询
SELECT * FROM saas_employee_label_person where id = 1 for UPDATE
会发生堵塞等待前一个事务A提交才可以获得锁
?
4. 当前A(非事务下) 使用UPDATE更新
UPDATE saas_employee_label_person set employee_id = 11121 where id = 1;
4.1 其他地方B(不区分是否为事务里)使用?for UPDATE查询
SELECT * FROM saas_employee_label_person where id = 1 for UPDATE
不会堵塞,前一个update先执行完,所以不影响,这里一定是update先执行完在走for UPDATE查询的场景,否者就是场景二了
?
所有的语言开篇都是Hello Word,数据处理引擎也有Hello Word。那就是Word Count。...
一、常用的ASP时间函数 1、now() 获取当前系统日期和时间,ASP输出格式:%=now()%...
XML是标准扩展语言,是未来Web编程的标准,asp是现在广为流传的web编程语言之一,...
在很多app和网站中,我们登陆或者注册账号,会有一个发送短信验证码的地方1,然...
废话不多说了,下面给大家介绍使用正则表达式验证用户名、密码、手机号码、身份...
文章目录 Java基础入门训练 一、根据年龄数值输出年龄段 二、打印1-100素数 三、...
编程的两个思想 面向对象和面向过程 面向过程的程序设计的核心是过程流水线式思...
1. systemd介绍 systemd是目前Linux系统上主要的系统守护进程管理工具,由于init...
微软面向Dev通道的Insider会员推送Windows 10新预览版,操作系统版本号Build 213...
Navicat远程连接Linux环境下MySQL(error:1045)解决方案 心路历程 因为之后要学习...