要在MySQL中锁定两行,我应该使用:
SELECT * FROM <table> WHERE id=? OR id=? FOR UPDATE;
Run Code Online (Sandbox Code Playgroud)
要么:
SELECT * FROM <table> WHERE id=? AND id=? FOR UPDATE;
Run Code Online (Sandbox Code Playgroud)
我显然是在交易中,只是不确定它是否应该AND或OR?
如果您的WHERE子句不是id=1 AND id=2任何行都没有资格包含在结果集中,因此不会锁定任何行.
要锁定您需要使用的id=1 OR id=2两个行,这样两行都将包含在结果集中并将被锁定.
| 归档时间: |
|
| 查看次数: |
1202 次 |
| 最近记录: |