|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: May 2002
Città: Nardo' (LE)
Messaggi: 4018
|
[SQL] IF e Firebird
Ho un problema con Firebird che non mi riesce di risolvere: premetto che e' la prima esperienza di programmazione con SQL, quindi puo' anche essere una stupidagine, ma non riesco a capire l'errore!
Dunque, ho una tabella (tab1) con 3 colonne (quantita, codice, descrizione); In questa tabella devo inserire i dati nei campo codice e descrizione, mentre quantita ha il valore predefinito impostato ad 1. Finche' faccio un Codice:
insert into tab1 (CODICE, DESCRIZIONE, ) SELECT CODICE, DESCRIZIONE, from tab2 where CODICE = 'int_codice_da_inserire'; Il codice che ho scritto e': Codice:
EXECUTE BLOCK as begin if (exists(select codice from tab1 where codice = 'int_codice_da_inserire')) then execute statement 'update tab1 set quantita=quantita+1 where codice = "int_codice_da_inserire";' else execute statement 'insert into tab1 (CODICE, DESCRIZIONE) SELECT CODICE, DESCRIZIONE, from tab2 where CODICE = 'int_codice_da_inserire';'; end Codice:
SQL Message : -104 Invalid token Engine Code : 335544569 Engine Message : Dynamic SQL Error SQL error code = -104 Token unknown - line 5, column 1 else
__________________
15 maggio 2008 11 marzo 2013 26 febbraio 2014 |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2780
|
Forse è per via del ; che manca alla fine del primo execute
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: May 2002
Città: Nardo' (LE)
Messaggi: 4018
|
Quote:
In realta', dire che funziona su FlameRobin e' una affermazione grossa: non ci sono errori nel log, ma la tabella rimane senza alcuna modifica: Codice:
Executing statement... Statement executed (elapsed time: 0.000s). 25 fetches, 1 marks, 0 reads, 0 writes. 0 inserts, 1 updates, 0 deletes, 0 index, 4 seq. Delta memory: 0 bytes. tav1: 1 updates. 0 rows affected directly. Total execution time: 0.000s Script execution finished.
__________________
15 maggio 2008 11 marzo 2013 26 febbraio 2014 |
|
|
|
|
|
|
#4 | |
|
Member
Iscritto dal: Sep 2008
Città: Milano
Messaggi: 126
|
Quote:
http://www.firebirdsql.org/refdocs/l...execblock.html la prima nota in fondo. |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:37.




















