美文网首页
FOR UPDATE的使用

FOR UPDATE的使用

作者: _NOR | 来源:发表于2018-12-12 09:51 被阅读0次

利用select * for update 可以锁表/锁行。自然锁表的压力远大于锁行。所以我们采用锁行。什么时候锁表呢?

假设有个表单products ,里面有id跟name二个栏位,id是主键。
例1: (明确指定主键,并且有此笔资料,row lock)
SELECT * FROM wallet WHERE id=’3′ FOR UPDATE;
例2: (明确指定主键,若查无此笔资料,无lock)
SELECT * FROM wallet WHERE id=’-1′ FOR UPDATE;
例2: (无主键,table lock)
SELECT * FROM wallet WHERE name=’Mouse’ FOR UPDATE;
例3: (主键不明确,table lock)
SELECT * FROM wallet WHERE id<>’3′ FOR UPDATE;
例4: (主键不明确,table lock)
SELECT * FROM wallet WHERE id LIKE ‘3’ FOR UPDATE;

来源:JavaWeb 并发:FOR UPDATE 实战,监测并解决。 - 泥瓦匠BYSocket - 博客园

相关文章

网友评论

      本文标题:FOR UPDATE的使用

      本文链接:https://www.haomeiwen.com/subject/mihuhqtx.html