Programación General => Delphi => Mensaje iniciado por: aim22 en Domingo 5 de Agosto de 2007, 03:05
Título: Problema Con Sql Update
Publicado por: aim22 en Domingo 5 de Agosto de 2007, 03:05
Tengo el siguiente codigo: query_grado.SQL.Clear; query_grado.sql.Add('update Grado set Habilitacion ='+ComboBox1.Text+'where Cve_habilitacion='+Edit2.Text+''); que_grado.ExecSQL;
el error esta en la parte que esta en negritas... he cambiado el "Edit2.Text" por alguna variable, strings y enteras.. no importa, siempre me sale este error :
Invalid use of keyword.Token: Cve_habilitacion=1
aunque 1 es el dato correcto que esta en el Edit2
que pasa??
Título: Re: Problema Con Sql Update
Publicado por: ushedipe en Viernes 10 de Agosto de 2007, 18:02
:comp:
tendrías que verificar el tipo del dato que tienes que enviar (string o si es integer habría que cambiarlo con StrtoInt), por otra parte noto que en la sintaxis falta el ";" de final de la sentencia, justo donde envías la doble comilla sencilla y nada dentro de ella ''; además no estás dejando ningún espacio entre ComboBox1.text+ y where; el analizador sintactico va a ver como una sola palabra lo que te traiga el ComboBox1.text concatenado con el where.
Suerte :ph34r:
Título: Re: Problema Con Sql Update
Publicado por: aim22 en Sábado 11 de Agosto de 2007, 00:49
si, ya habia notado esos errores, pero gracias de todos modos...
termine por quitar eso y mejor hacerlo con la sentencia dentro de las strings de un query :P
gracias!
Título: Re: Problema Con Sql Update
Publicado por: gertorresm en Sábado 11 de Agosto de 2007, 01:07
pienso que tu codigo quedaría mucho mejor asi
Código: Text
with query_grado do
begin
SQL.Clear;
sql.Add(' update Grado set Habilitacion ='+ComboBox1.Text +
' where Cve_habilitacion='+ Edit2.Text );
Prepare; // te Ayudara a optimizar el tiempo del motor
ExecSQL;
end;
Si te das cuenta despues del edit2.text no necesitas utilizar mas comilla sencilla,ya que este es un valor string, y te recomiendo que nombres tus objetos, esto te facilita las labores de mantenimiento y lectura de código