1

を使用して、変数に格納されている値を列の値に$this->db->update();追加する更新クエリを作成しています。私の関数呼び出しは現在次のようになっています。$amountcount

$data = array('count' => 'count + '.$amount);

$this->db->where('id', $item_id);
$this->db->update('items', $data);

ただし、これにより、次の壊れた SQL が生成されます。

UPDATE `items` SET `count` = 'count + 2' WHERE `id` =  '2'

引用符なしでSET句を生成する方法はありcount + 2ますか?

4

2 に答える 2

3

Maxime Morinさん、私を正しい軌道に乗せてくれてありがとう。CodeIgniter Documentationによると、オプションの$escapeパラメータを に設定することで、引用符なしで「set」句を作成できますFALSE。したがって、私の問題の解決策は次のとおりです。

$this->db->set("count", "count + $amount", FALSE); 
$this->db->where("id", $item_id);
$this->db->update("items", $data);
于 2012-12-14T15:16:13.223 に答える