Uma vez que pesquisei no core ele levava em conta se foi passado um
caracter de espaço.

Veja que ele tratou a chave do array como um nome de campo:
`confirmado!=`
colocando aspas invertidas.

Creio que se passar:
array('confirmado !='=>'s', 'data_registro <='=>$data_vencimento)
com espaços entre o campo e a comparação vai funcionar.


Abs
Edinho Almeida
11 8018-8019



2008/12/10 Vinicius Cruz <[EMAIL PROTECTED]>:
> Galera, me confirma se isso é de fato um bug da versão 1.7
> No manual tem assim:
>
> You can include your own operators using this method as well:
> $array = array('name !=' => $name, 'id <' => $id, 'date >' => $date);
> $this->db->where($array);
>
> Eu estou usando assim:
>
> array('confirmado!='=>'s', 'data_registro<='=>$data_vencimento)
>
> E está retornando o erro:
>
> Error Number: 1064
>
> You have an error in your SQL syntax; check the manual that corresponds to
> your MySQL server version for the right syntax to use near ''s' AND
> `data_registro<=` '2008-12-03'' at line 2
>
> DELETE FROM `pa_usuario` WHERE `confirmado!=` 's' AND `data_registro<=`
> '2008-12-03'
>
> Já vi na lista que basta colocar um false como parâmetro, pra o CI não
> escapar a query, mas imagine que eu tenha trezentas consultas desse tipo.
> Sacanagem sair procurando uma por uma, pra alterar isso... =/
>
> Vinicius
>
> _______________________________________________
> Lista mailing list
> [email protected]
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
>
_______________________________________________
Lista mailing list
[email protected]
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

Responder a