我们假设我有一张桌子,想要选择前10行 那个表,但我想确保没有其他脚本会选择 我之前通过第一个脚本获得了相同的行。
我该怎么做?
我的表包含一个主键。假设id是列名。 所以我的第一个脚本正在运行并选择id:1,2,3 .... 10
然后该脚本将播放返回的ID。 在同一时间,我正在运行第二个脚本并执行相同的选择。 但我不希望他得到前10个ID。
如何在cakephp中锁定行表? 请提前帮助我...
答案 0 :(得分:0)
$number = 0
$SQL = "SELECT * FROM table WHERE .... LIMIT $number, 10"
$number += 10
答案 1 :(得分:0)
更多的是用于读锁定,但我相信你可以在这里得到一些想法https://github.com/infinitas/infinitas/tree/beta/core/locks
答案 2 :(得分:0)
如果不使用本机SQL(SELECT FOR UPDATE),我不确定是否可行。这里有一个有趣的主题
https://groups.google.com/forum/?fromgroups=#!topic/cake-php/WCvWGsTTRjw