Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Meu erro :
Warning: pg_query(): Query failed: ERRO: operador não existe: character varying + integer LINE 1: UPDATE accounts SET usedpin = usedpin+1 WHERE login='Guilher... ^ HINT: Nenhum operador corresponde com o nome e o(s) tipo(s) de argumento(s) informados. Você precisa adicionar conversões de tipo explícitas. in C:\xampp\htdocs\Paginas\pincode.php on line 44
Minha Query : $usedpin = pg_query("UPDATE accounts SET usedpin = usedpin+1 WHERE login='".$login."'");
Objetivo : Quando a query for executado , quero que soma +1 na coluna "usedpin"
>
Se o campo usedpin é do tipo character varying, não faz sentido somar.
Use um campo numérico
Veja
http://forum.imasters.com.br/topic/191441-escolhendo-um-tipo-de-campo-correto/
/applications/core/interface/imageproxy/imageproxy.php?img=http://i.imgur.com/s8QpWLI.png&key=afa70ef1186a2af4cbb1d9f25e64d22aa4dc38c3d68440f1ff8fd5352c3f63c0" alt="s8QpWLI.png" />
Ela esta Char
Você tem duas opções:
1. somar no PHP e mandar pro postgres
2. usar o tipo de campo adequado (numérico, neste caso)
>
Você tem duas opções:
1. somar no PHP e mandar pro postgres
2. usar o tipo de campo adequado (numérico, neste caso)
Me ajuda fazer a query da primeira opção ?
Você pode fazer um CAST
postgres=# SELECT 1 + CAST('1' || '2' AS integer) AS add_on_to_twelve;
add_on_to_twelve
------------------
13
(1 row)
Fonte: http://www.java2s.com/Code/PostgreSQL/Data-Type/Castcharasinteger.htm
vale reforçar que esse é a opção incorreta.
Se o campo vai receber valores numéricos, o correto seria mudar o tipo do campo.
Manter em char pode lhe trazer dores de cabeça no futuro
Se o campo usedpin é do tipo character varying, não faz sentido somar.
Use um campo numérico
Veja
http://forum.imasters.com.br/topic/191441-escolhendo-um-tipo-de-campo-correto/