Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Campo de incremento do banco de dados mysql usando a sintaxe de registro ativo do codeigniter


Você pode fazer como indicado abaixo:
$this->db->where('id', $post['identifier']);
$this->db->set('votes', 'votes+1', FALSE);
$this->db->update('users');

A razão disso funcionar é porque o terceiro parâmetro FALSE (opcional) diz ao CodeIgniter para não proteger a consulta gerada com acentos graves (' ). Isso significa que o SQL gerado será:

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

Se você notar, os backticks são removidos de '(votes+1)' , que produz o efeito desejado de incrementar o atributo votos em 1.