建表的時候索引為什么不直接加在number上面,而是加在start-time,end-time,create-time上
建表的時候索引為什么不直接加在number上面,而是加在start-time,end-time,create-time上
直接加在number上不是更方便嗎,也會讓update操作有行級鎖.
建表的時候索引為什么不直接加在number上面,而是加在start-time,end-time,create-time上
直接加在number上不是更方便嗎,也會讓update操作有行級鎖.
2018-05-11
舉報
2019-02-26
MySQL的innodb存儲引擎支持行級鎖,innodb的行鎖是通過給索引項加鎖實現的,這就意味著只有通過索引條件檢索數據時,innodb才使用行鎖,否則使用表鎖。
根據當前的數據更新語句(UPDATE user set name=‘11111’ where account=‘1’),該條件字段account并沒有添加索引,所以導致數據表被鎖。
2018-05-15
這節課里面沒有說到創建數據庫表,課程中的sql是存儲過程,其中你說到相關start-time、end-time、create-time在這節課中出現的位置是在跟新數據庫的商品的數量上,作用是檢測當前時間是否是商品的搶購時間。