Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   El problemático UPDATE!!! (https://www.clubdelphi.com/foros/showthread.php?t=6939)

ciscu 28-01-2004 12:32:16

El problemático UPDATE!!!
 
Hola a todos!!!

Veréis, cuando ejecuto el update siguiente:

query1.sql.Add('update alba set alpres=0 where alalb=:albaran');
query1.parambyname('albaran').asinteger:=valorNumerico;
query1.execsql;

funciona, pero cuando hago la siguiente:

query1.sql.Add('update alba set alpres=:presupuesto where alalb=:albaran');
query1.parambyname('presupuesto').asinteger:=AltaPressupost+1;
query1.parambyname('albaran').asinteger:=valorNumerico;
query1.execsql;

me aparece el mensaje: "Type mistatch in expression"

por lo que deduzco que el campo que se pone en SET no puede recoger valores variables, solo constantes.
Como puedo hacer que una consulta recoja las dos posibilidades(variable y constante), que seguro que se puede hacer, no?

Gracias anticipadas!!!

ciscu 28-01-2004 12:36:52

Por cierto, utilizo tablas paradox!!!!
 
Por cierto, utilizo tablas paradox y delphi 5!!!!
Gracias!!!

marcoszorrilla 28-01-2004 15:02:22

Ahora no tengo tiempo de hacer la prueba, pero:
Código:

AltaPressupost:=AltaPressupost +1;

query1.sql.Add('update alba set alpres=resupuesto where alalb=:albaran');
query1.parambyname('presupuesto').asinteger:=AltaPressupost;
query1.parambyname('albaran').asinteger:=valorNumerico;
query1.execsql;

Un Saludo.

rfernandez 10-02-2004 20:26:13

i si pruebas

query1.sql.Add('update alba set alpres='+intostr(altapressupost+1)+' where alalb='+IntToStr(ValorNumerico));
query1.execsql;


La franja horaria es GMT +2. Ahora son las 15:46:04.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi