我想查询这样的SQL:
update table set `status` = 2 where id=1 and `status`=1
在哪里获得受影响的行。我找到了doc,
但如何更新status
并使用sql中的位置?
我的cakephp版本是2.4.6。
更新已解决的:
现在我最终使这个函数成为:
public function updateById($id,$data,$status = ''){
if( empty($id) ) {
return false;
}
$conditions = array();
$conditions['id'] = $id;
if($status != ''){
$conditions['status'] = $status;
}
$this->updateAll($data, $conditions);
return $this->getAffectedRows();
我在控制器中调用这个函数:
$this->MyModel->updateById(5, array('views'=>100,'status'=>2), 1);
这可以确保记录从status
1更新到2