Ver la Versión Completa : Ayuda con consulta SQL
Hola me podrian hechar una manito en este codigo cuando lo ejecuto me funciona bien, pero si lo vuelvo a ejecutar me da error
Frm_reporte.ADOQuery1.Close;
Frm_reporte.ADOQuery1.SQL.Add('WHERE numero = ' + DBEdit1.Text);
]Frm_reporte.ADOQuery1.Open;
Frm_reporte.QuickRep1.Preview;
ContraVeneno
18-04-2007, 21:16:35
Voy a utilizar mis poderes de adivino.... *concentrado* ... mmm... nop, no funciona, sin saber cuál es el error es muy dificil poder ayudarte. :rolleyes:
Ya en serio, ¿cuál es el error que te marca y que línea te marca error?
egostar
18-04-2007, 21:21:26
Te hace falta "Limpiar" el Query, pero además mete la sentecia SELECT en el mismo bloque
Frm_reporte.ADOQuery1.Close;
Frm_reporte.ADOQuery1.Clear;
Frm_reporte.ADOQuery1.SQL.Add('SELECT * FROM TABLA');
Frm_reporte.ADOQuery1.SQL.Add('WHERE numero = ' + DBEdit1.Text);
Frm_reporte.ADOQuery1.Open;
Frm_reporte.QuickRep1.Preview;
O usar Lo siguiente
Frm_reporte.ADOQuery1.Close;
Frm_reporte.ADOQuery1.SQL.Text := 'SELECT * FROM TABLA WHERE numero = ' + DBEdit1.Text;
Frm_reporte.ADOQuery1.Open;
Frm_reporte.QuickRep1.Preview;
Salud OS.
roman
18-04-2007, 21:24:15
Aunque opino también que debes dar todos los datos posibles, imagino que tu problema es que la segunda vez que ejecutas, la clásula WHERE se añade a la que ya tenías de la primera vez:
select bla, bla, bla
WHERE numero = 4
WHERE numero = 5
Lo que tendrías que hacer, según creo, es parametrizar la consulta:
select bla, bla, bla
WHERE numero = :parametro
y sustituir el parámetro cada vez:
Frm_reporte.ADOQuery1.Close;
Frm_reporte.ADOQuery1.Parameters.ParamByName('parametro').Value = StrToInt(DBEdit1.Text);
Frm_reporte.ADOQuery1.Open;
// Saludos
jeje tienes razon contraveneno, el error es el siguiente:
raise exception class EOleExteception with message 'Error de Sintaxis (falta operador) en la expresion de consulta 'numero = 266 WHERE numero =266". Process stopped. Use step or run to continue
gracias a todos por responder tan rapido... boy a probar todas las sugerencias que me dieron.
salu2.
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.