SELECT ... FOR UPDATE 的问题

tongyi2005 2008-03-14 10:36:44
SELECT ... FOR UPDATE 读锁行后。其他进程还能不能同时访问未被锁定的行??

SELECT * FROM table WHERE id=1 FOR UPDATE 加锁后。同时其他进程 SELECT * FROM table WHERE id=2 FOR UPDATE 能访问到吗? 还是得等前一个进程完成后才行。
...全文
119 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xbt746 2008-03-20
  • 打赏
  • 举报
回复
学习
懒得去死 2008-03-14
  • 打赏
  • 举报
回复
http://blog.chinaunix.net/u/29134/showart_478439.html
tongyi2005 2008-03-14
  • 打赏
  • 举报
回复
FOR UPDATE 是独占锁, 能读吗?

我现在的要求是锁定的行不允许被读到,当然也不能UPDATE, DELETE。 其他进程在读被锁定的记录时,能检测到这些记录已被锁了。
liuyann 2008-03-14
  • 打赏
  • 举报
回复

同时访问被锁定的行,其他进程是否会等待前一个进程结束

read, is ok
update / delete, need waiting until the records been released .
== 思想重于技巧 ==
tongyi2005 2008-03-14
  • 打赏
  • 举报
回复
谢谢,如果同时访问被锁定的行,其他进程是否会等待前一个进程结束? 如果有很多进程同时去访问被锁定的行。能否提前锁定行的进程结束?
rainbowliuliang 2008-03-14
  • 打赏
  • 举报
回复
可以
liuyann 2008-03-14
  • 打赏
  • 举报
回复

SELECT ... FOR UPDATE 读锁行后。其他进程还能不能同时访问未被锁定的行??

能同时访问未被锁定的行
== 思想重于技巧 ==

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧