mysql update锁_mysql中update语句的锁
UPDATE rent_contacts SET contacts_mobile='11111' WHERE? rent_unit_code in (SELECT rent_unit_code FROM? rent_unit? );
第一種情況:? 條件無索引
sql一執(zhí)行:
BEGIN;
UPDATE contacts SET mobile='11111' WHERE? code in ('3424342' );
sql二執(zhí)行 UPDATE contacts SET mobile='11111' WHERE? code in ('1111' );
sql二執(zhí)行受阻,sql一commit之后,sql二可執(zhí)行成功
結(jié)論:條件無索引,鎖表
第二種情況: 條件有索引,in語句是確定的值
sql一執(zhí)行:
BEGIN;
UPDATE contacts SET mobile='11111' WHERE? code in ('3424342' );
sql二執(zhí)行 UPDATE contacts SET mobile='11111' WHERE? code in ('1111' );
sql二正常執(zhí)行,sql二不依賴sql一的commit
結(jié)論:條件有索引,鎖行
第三種情況: 條件有索引,in語句是復(fù)雜查詢
sql一執(zhí)行:
BEGIN;
UPDATE contacts SET mobile='11111' WHERE? code in ( select code from user where id=1);
sql二執(zhí)行 UPDATE contacts SET mobile='11111' WHERE? code in ('1111' );
sql二執(zhí)行受阻,sql一commit,sql二正常執(zhí)行
結(jié)論:條件有索引,in語句是不確定的值,鎖表
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的mysql update锁_mysql中update语句的锁的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: opencv计算两数组的乘积_openc
- 下一篇: mysql索引如何做_5分钟,告诉你My