如何将 FOR UPDATE 添加到 cakephp3 查询?

How can I add FOR UPDATE to a cakephp3 query?

有没有办法将 FOR UPDATE 添加到 cakephp3 中的查找 (SELECT) 查询?

我发现了这个 hack:http://bakery.cakephp.org/2012/04/14/SELECT-FOR-UPDATE-hack-kind-of-ugly-but-it-works-PostgreSQL-and-MySql.html 但它不起作用,因为限制值只能包含一个数字。 可以在 https://github.com/cakephp/cakephp/issues/3136#event-213462937.

下找到关于类似主题的另一个讨论

你可以用 Query::epilog()

$selectQuery->...->epilog('FOR UPDATE');

我为 cakephp3 开了一张票 https://github.com/cakephp/cakephp/issues/6772#issuecomment-110530303

解决方案是使用查询中的 epilog 方法 class:

$article->find('first')->epilog('FOR UPDATE');