Mysql
 sql >> Database >  >> RDS >> Mysql

Incrementa il campo del database mysql utilizzando la sintassi del record attivo di codeigniter

Puoi fare come indicato di seguito:

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

Il motivo per cui funziona è perché il terzo parametro (opzionale) FALSE dice a CodeIgniter di non proteggere la query generata con i backtick (' ). Ciò significa che l'SQL generato sarà:

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

Se noti, i backtick vengono rimossi da '(votes+1)' , che produce l'effetto desiderato di incrementare l'attributo voti di 1.