魄弹兽
2018-05-11 16:55
建表的时候索引为什么不直接加在number上面,而是加在start-time,end-time,create-time上
直接加在number上不是更方便吗,也会让update操作有行级锁.
MySQL的innodb存储引擎支持行级锁,innodb的行锁是通过给索引项加锁实现的,这就意味着只有通过索引条件检索数据时,innodb才使用行锁,否则使用表锁。
根据当前的数据更新语句(UPDATE user set name=‘11111’ where account=‘1’),该条件字段account并没有添加索引,所以导致数据表被锁。
这节课里面没有说到创建数据库表,课程中的sql是存储过程,其中你说到相关start-time、end-time、create-time在这节课中出现的位置是在跟新数据库的商品的数量上,作用是检测当前时间是否是商品的抢购时间。
Java高并发秒杀API之高并发优化
78601 学习 · 170 问题
相似问题