2010-07-22 18 views

Respuesta

31
$this->db->set('usage', 'usage+1', FALSE); 
$this->db->where('tag', 'java'); 
$this->db->update('tags'); 
+0

pequeña nota en que sólo para aclarar que si se establece el parámetro optioanl a FALSO, CodeIgniter no intentará proteger los nombres de tu campo o tabla con palos de retroceso. – jkilbride

+0

otra pequeña nota, omitió el punto y coma en la primera línea :) – jeff

+0

¿Se puede usar un conjunto múltiple() en la misma actualización? –

0

que encuentran su más simple a veces simplemente escribir el código SQL en lugar de tener Active Record construir para mí.

$sql = 'update tags set usage=usage+1 where tag=?'; 
$this->db->query($sql, array($tag)); 
3

También puede usar algo como esto

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

ACTUALIZACIÓN: no se están aprobando $ data de actualizar

+1

no se olvide de enviar su '$ data'. '$ this-> db-> update ('tags', $ data)' –

+0

no funciona para mí – abimelex

+0

Pegue aquí su código. –

Cuestiones relacionadas