1. <strong id="7actg"></strong>
    2. <table id="7actg"></table>

    3. <address id="7actg"></address>
      <address id="7actg"></address>
      1. <object id="7actg"><tt id="7actg"></tt></object>

        update會(huì)鎖表嗎?

        共 1206字,需瀏覽 3分鐘

         ·

        2022-03-18 14:29

        兩種情況:

        1.帶索引? 2.不帶索引

        前提介紹:

        方式:采用命令行的方式來(lái)模擬

        1.mysq由于默認(rèn)是開(kāi)啟自動(dòng)提交事務(wù),所以首先得查看自己當(dāng)前的數(shù)據(jù)庫(kù)是否開(kāi)啟了自動(dòng)提交事務(wù)。

        命令:select @@autocommit;

        結(jié)果如下:

        +--------------+
        | @@autocommit |
        +--------------+
        |? ? ? ? ? ? 0 |
        +--------------+

        如果是1,那么運(yùn)行命令:set autocommit =?0;設(shè)置為不開(kāi)啟自動(dòng)提交

        2.當(dāng)前的數(shù)據(jù)庫(kù)表格式如下

        tb_user | CREATE TABLE `tb_user` (
        ? `id` bigint(20) NOT NULL AUTO_INCREMENT,
        ? `name` varchar(32) DEFAULT NULL,
        ? `phone` varchar(11) DEFAULT NULL,
        ? `operator` varchar(32) DEFAULT NULL,
        ? `gmt_create` datetime DEFAULT NULL,
        ? `gmt_modified` datetime DEFAULT NULL,
        ? PRIMARY KEY (`id`)
        ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8

        顯然除了主鍵,我沒(méi)有加任何索引

        ?

        實(shí)際例子:

        1.沒(méi)有索引

        運(yùn)行命令:begin;開(kāi)啟事務(wù),然后運(yùn)行命令:update tb_user set phone=11 where name="c1";修改,先別commit事務(wù)。

        再開(kāi)一個(gè)窗口,直接運(yùn)行命令:update tb_user set phone=22 where name="c2";會(huì)發(fā)現(xiàn)命令卡住了,但是當(dāng)前面一個(gè)事務(wù)通過(guò)commit提交了,命令就會(huì)正常運(yùn)行結(jié)束,說(shuō)明是被鎖表了。

        2.給name字段加索引

        create index index_name on tb_user(name);

        然后繼續(xù)如1里面的操作,也就是一個(gè)開(kāi)啟事務(wù),運(yùn)行update tb_user set phone=11 where name="c1";先不提交

        然后另一個(gè)運(yùn)行update tb_user set phone=22 where name="c2";發(fā)現(xiàn)命令不會(huì)卡住,說(shuō)明沒(méi)有鎖表

        但是如果另一個(gè)也是update tb_user set phone=22 where name="c1";更新同一行,說(shuō)明是鎖行了

        3.總結(jié)

        如果沒(méi)有索引,所以u(píng)pdate會(huì)鎖表,如果加了索引,就會(huì)鎖行



        瀏覽 26
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        評(píng)論
        圖片
        表情
        推薦
        點(diǎn)贊
        評(píng)論
        收藏
        分享

        手機(jī)掃一掃分享

        分享
        舉報(bào)
        1. <strong id="7actg"></strong>
        2. <table id="7actg"></table>

        3. <address id="7actg"></address>
          <address id="7actg"></address>
          1. <object id="7actg"><tt id="7actg"></tt></object>
            抽插乳妻吸 | 精品一级视频成人网站在线观看免费 | 日韩精品A片一区二区三区妖精 | 被黑人猛躁10次高潮视频 | 中文字幕人妻一区二区三区熟女 | 欧美精品无码一区二区三区仓井松 | 在线观看成人av 亚洲传媒视频 | 色婷婷色婷婷 | 办公室高h喷水荡肉爽动视频 | 91丨porny丨九色 |