快速问答,
我想为事务排它锁一行,例如:
SELECT.....FROM.....FOR UPDATE
我的问题是,我是否需要在执行PDO::beginTransaction
之前执行此操作-在事务内执行UPDATE
,然后在抛出异常时手动解锁?
或者我可以只将它放在事务中?
提前谢谢。
发布于 2012-07-25 20:15:55
在PDO::beginTransaction之前调用SELECT.....FROM.....FOR UPDATE
是没有意义的,因为它会在自动捕获的事务中被调用(如果是autocommit=true,就像在mysql中默认的那样),所以实际的记录不会被锁定。
所以在beginTransaction之后再做
https://stackoverflow.com/questions/11648484
复制相似问题