【问题标题】:Update query increment field plus 1 codeigniter function更新查询增量字段加 1 个 codeigniter 函数
【发布时间】:2026-02-07 10:25:02
【问题描述】:

我想在我的 codeigniter 项目中将我的字段值增加到其当前值加 1。所以,我做了一个功能,但它不起作用。我的功能是。

function increse_field_by_1($table_name,$fieldToIncrease,$whileCondition){

$this->db->where($whileCondition);
$this->db->set($fieldToIncrease, $fieldToIncrease+1, FALSE);
$this->db->update($table_name); 
$query = $this->db->get();

}

及其显示错误。

Error Number: 1054

Unknown column '$fieldToIncrease' in 'field list'

UPDATE `rule` SET ruleid = $fieldToIncrease+1 WHERE `interface` = 'lan'

我不知道如何解决它。请帮我。

【问题讨论】:

标签: php mysql codeigniter


【解决方案1】:

你试图增加 php 中的值 试试这个吧

function increse_field_by_1($table_name,$fieldToIncrease,$whileCondition){

    $this->db->where($whileCondition);
    $this->db->set($fieldToIncrease, $fieldToIncrease."+1", FALSE);
    $this->db->update($table_name); 
}

不需要您的$this->db->get() 电话,因为更新已经完成了这项工作。 只需删除此行。

欲了解更多信息,请查看here

【讨论】:

  • 错误号:1096 未使用表 SELECT *
  • 是的,因为不需要 db->get - 我更新了我的帖子
  • 如何使用update_batch() 多条记录有不同的增量值?
  • 我不认为你可以 - 你应该自己迭代并手动进行更新