Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   grid no muestra resultado de consulta!!! (https://www.clubdelphi.com/foros/showthread.php?t=79774)

djMadox 09-08-2012 15:58:41

grid no muestra resultado de consulta!!!
 
che, una vez más he tenido problema con el ZQuery...

Ahora pasa lo siguiente, en un form tengo un edit, un grid y combobox y un boton que estan nombrados así:
form: form_buscar
edit: edt_buscar
combobox: cmb_buscar
boton: btn_buscar
grid: DBGrid1

es lo siguiente, en el evento Onclick del boton tengo:

Código Delphi [-]
begin
busqueda:=edt_buscar.Text;
tipo:=cmb_buscar.Text;
dm.ZQuery.SQL.Clear;
dm.ZQuery.SQL.Add('SELECT * FROM empleados WHERE '+quotedstr(tipo)+' = '+quotedstr(busqueda)+';');
dm.ZQuery.ExecSQL;
end;

pero sucede que no me aparece en el grid....
Ya intenté cambiar la propriedad ENABLE del grid para true....
La verdad que no se me ocurre más nada por ahora...

Gracias por adelanto a todos... ^\||/

Neftali [Germán.Estévez] 09-08-2012 16:14:53

¿Tienes bien conectados los componentes? El zQuery, El DBGrid, el TDatasource,...

Te recomiendo que para comprobar coloques una sentencia de ejemplo (Select top 5 * from Empleados) en el zQuery y la actives en diseño; Deberías ver los registros en el Grid. Una vez que funcione la eliminas en diseño y la utilizas en ejecución.

Caro 09-08-2012 16:34:47

Hola djMadox, en ves de ExecSql utiliza Open, ExecSql se utiliza cuando quieres hacer cambios en tu BD(Insert, Update, Delete) y Open para consultas.

Código Delphi [-]
dm.ZQuery.SQL.Add('SELECT * FROM empleados ........);
dm.ZQuery.Open;

Saluditos

Casimiro Notevi 09-08-2012 17:04:58

Código Delphi [-]
dm.ZQuery.SQL.Add('SELECT * FROM empleados WHERE '+quotedstr(tipo)+' = '+quotedstr(busqueda)+';');

En esa sentencia falta algo, ¿verdad? :)

Caro 09-08-2012 17:35:03

Cita:

Empezado por Casimiro Notevi (Mensaje 439218)
En esa sentencia falta algo, ¿verdad? :)

Hola Casimiro, la verdad no me había fijado en la consulta, suponiendo que en su combobox estan los nombres de sus campos le sobraría el quotedStr.

Código Delphi [-]
dm.ZQuery.SQL.Add('SELECT * FROM empleados WHERE '+tipo+'='+quotedstr(busqueda));
dm.ZQuery.Open;

Saluditos

djMadox 12-08-2012 17:18:25

Muchisimas gracias y perdon la demora...
 
Muchisimas gracias a todos..
Recien tuve tiempo para corregir eso y realizar pruebas...

Ahora queda andando lo mas bien, sólo, si no les molesta contestar,
El Quotedstr(cadena) es para hacer eso?
Código Delphi [-]
'cadena'

Muchisimas gracias, una vez más... :D

Casimiro Notevi 12-08-2012 18:01:21

Sí, para eso, para poner la cadena entre comillas.


La franja horaria es GMT +2. Ahora son las 09:58:16.

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