我正在尝试从CakePHP中的数据库更新表数据。
查询:
UPDATE status SET amount=5000 WHERE id=3
如何在CakePHP中编写此查询?
答案 0 :(得分:7)
查看文档并查看CakePHP way of dealing with models(和数据库表)。
在这种情况下,我认为您可以使用set()
和save()
:
$this->Status->read(null, 3);
$this->Status->set('amount', 5000);
$this->Status->save();
或带saveField()
的较短版本:
$this->Status->id = 3; // This avoids the query performed by read()
$this->Status->saveField('amount', 5000);
它们之间的区别在于saveField()
是一种原子更新,而多次set()
调用在您进行save()
调用之前不会修改数据。