update or insert com incremento no firebird
Bom dia amigos,
Gostaria de saber se é possível fazer um UPDATE OR INSERT usando um valor já cadastrado da tabela, por exemplo:
o meu campo htr_dia é um integer. Testando pelo IBOConsole não rolou essa query deu o seguinte problema:
ISC ERROR CODE:335544569
ISC ERROR MESSAGE:
Dynamic SQL Error
SQL error code = -206
Column unknown
htr_concluidos
At line 1, column 68
Statement: UPDATE OR INSERT INTO "tbl_historico" ("htr_dia","htr_concluidos") values ('2013-05-28' ,"htr_concluidos" + 1) MATCHING ("htr_dia")
[]'s
Gostaria de saber se é possível fazer um UPDATE OR INSERT usando um valor já cadastrado da tabela, por exemplo:
UPDATE OR INSERT INTO "tbl_historico" ("htr_dia","htr_concluidos") values ('2013-05-28' ,"htr_concluidos" + 1) MATCHING ("htr_dia")o meu campo htr_dia é um integer. Testando pelo IBOConsole não rolou essa query deu o seguinte problema:
ISC ERROR CODE:335544569
ISC ERROR MESSAGE:
Dynamic SQL Error
SQL error code = -206
Column unknown
htr_concluidos
At line 1, column 68
Statement: UPDATE OR INSERT INTO "tbl_historico" ("htr_dia","htr_concluidos") values ('2013-05-28' ,"htr_concluidos" + 1) MATCHING ("htr_dia")
[]'s
Diego Garcia
Curtidas 0
Melhor post
Diego Garcia
28/05/2013
com ajuda de outro forum, consegui chegar na resposta!
UPDATE OR INSERT INTO "tbl_historico" ("htr_dia","htr_concluidos")
values ('2013-05-28', COALESCE((SELECT "htr_concluidos" + 1 FROM "tbl_historico" WHERE "htr_dia" = '2013-05-28'), 1))
MATCHING ("htr_dia")GOSTEI 1
Mais Respostas
Rafael Cunha
28/05/2013
Tente da seguinte forma
UPDATE OR INSERT INTO tbl_historico (htr_dia, htr_concluidos) values ('2013-05-28' , htr_concluidos + 1) MATCHING (htr_dia)
GOSTEI 0
Diego Garcia
28/05/2013
Rafael, obrigado pela ajuda, mas na verdade você não mudou em nada o código que eu coloquei, sendo assim, a mensagem de erro foi exatamente a mesma:
ISC ERROR CODE:335544569
ISC ERROR MESSAGE:
Dynamic SQL Error
SQL error code = -206
Column unknown
HTR_CONCLUIDOS
At line 1, column 86
Statement: UPDATE OR INSERT INTO tbl_historico (htr_dia, htr_concluidos) values ('2013-05-28' , htr_concluidos + 1) MATCHING (htr_dia)
ISC ERROR CODE:335544569
ISC ERROR MESSAGE:
Dynamic SQL Error
SQL error code = -206
Column unknown
HTR_CONCLUIDOS
At line 1, column 86
Statement: UPDATE OR INSERT INTO tbl_historico (htr_dia, htr_concluidos) values ('2013-05-28' , htr_concluidos + 1) MATCHING (htr_dia)
GOSTEI 0
José
28/05/2013
Que bom Diego que conseguiu solucionar sua duvida. Sendo assim estou dando o tópico por concluído.
GOSTEI 0