14

codeigniterアクティブレコードを使用してSQLステートメントを実装したいと思います。

UPDATE tags SET usage = usage+1 WHERE tag="java";

Codeigniterアクティブレコードを使用してこれを実装するにはどうすればよいですか?

よろしく

4

3 に答える 3

51
$this->db->set('usage', 'usage+1', FALSE);
$this->db->where('tag', 'java');
$this->db->update('tags');
于 2010-07-22T08:33:06.513 に答える
5

このようなものを使用することもできます

$data = array('usage' => 'usage+1', *other columns*);
$this->db->where('tag', 'java');
$this->db->update('tags', $data);

更新:$dataが更新に渡されていませんでした

于 2012-12-20T06:01:50.487 に答える
2

Active RecordにSQLを作成させるよりも、SQLを作成する方が簡単な場合があります。

$sql = 'update tags set usage=usage+1 where tag=?';
$this->db->query($sql, array($tag));
于 2010-07-22T20:53:12.247 に答える