php – 更新查询增量字段加1个codeigniter

我在db中的给定字段上尝试增加1时出现问题.我尝试了有无活动记录.

我的函数看起来像这样(在我的模型中)

function _set_reads($id){
$this->db->set('reads','reads+1',FALSE)
$this->db->where('id',$id);
$this->db->update('article');
}

function _set_reads($id){
$sql = 'update article set reads=reads+1 where id=?';
$this->db->query($sql,array($id));
}

我在两种情况下都得到相同的错误,它是以下错误消息:

Error Number: 1064

You have an error in your sql Syntax; check the manual that corresponds to your MysqL server version for the right Syntax to use near 'reads+1 WHERE `id` = '15'' at line 1

UPDATE `article` SET `reads` = reads+1 WHERE `id` = '15'

我使用的是最新版本的MAMP

解决方法

– 需要小的修正

$this->db->where('id',$id);
$this->db->set('set_row','`set_row`+ 1',FALSE);

谢谢

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...