sql >> Base de Datos >  >> RDS >> Mysql

Incremente el campo de la base de datos mysql usando la sintaxis de registro activo de codeigniter

Puede hacer lo siguiente:

$this->db->where('id', $post['identifier']);
$this->db->set('votes', 'votes+1', FALSE);
$this->db->update('users');

La razón por la que esto funciona es porque el tercer parámetro FALSO (opcional) le dice a CodeIgniter que no proteja la consulta generada con acentos graves (' ). Esto significa que el SQL generado será:

UPDATE users SET votes= votes + 1 WHERE id= '44'

Si se da cuenta, los acentos graves se eliminan de '(votes+1)' , que produce el efecto deseado de incrementar el atributo de votos en 1.