Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
mostrar consulta sql en un dbgrid

hola. tengo un gran problema.. paso a contar .. tengo una tabla creada en database y yo lo que tengo que hacer es lo siguiente

1) tengo una tabla que contiene nombre de docentes yo lo que tengo que hacer escribir en un edit un nombre a buscar y que ese nombre con todos sus datos me lo muestre en el dbgrid. Mi profesor me mando un ejemplo de como utilizar la consulta pero no obtengo ningun resultado quisiera saber si me podrian ayudar . Cualquier duda sobre mi pregunta avisen
Responder Con Cita
  #2  
Antiguo 03-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
coloca algo del ejemplo aqui
pero basicamente necesitas

1 edit
1 adoquery
1 datasource asociado al query
1 dbgrid asociado al datasource

la consulta seria mas o menos asi

Código Delphi [-]
 
Select Campos from tuTabla where CampoNombre Like edit1.text + '%'
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #3  
Antiguo 03-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
yo lo que tengo dentro de la consulta sql es lo siguiente

Código SQL [-]
select APELLIDO,DNI,DIRECCION1,DIRECCION2,CPL,CPN,CPP,TELEFONO,E_MAIL1,E_MAIL2,A_MAIL3,E_MAIL4,ORIGEN
from C:\Documents and Settings\Administrador\Escritorio\taf\tablas\tabla_docentes.dbf
where APELLIDO=:parametro_ape
order by APELLIDO

y en el boton de buscar del fomulario lo que tengo es lo siguiente
Código Delphi [-]
procedure TForm38.Button1Click(Sender: TObject);
var
ape:string;
begin
 ape:=edit1.text;
 query1.params[0].asstring:=ape;
 query1.Close;
 query1.open;
end;

pero no funciona me sale un error y obviamente no hace nada.
Lo que me parece raro es que en dbgrid no me sale ninguno de los campos q se tendrian q llenar

Última edición por ecfisa fecha: 03-10-2011 a las 20:45:21. Razón: ETIQUETAS [SQL] [/SQL], [DELPHI] [/DELPHI] ...
Responder Con Cita
  #4  
Antiguo 03-10-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
No olvides poner el código entre sus etiquetas pertinentes, ejemplo:



Creo recordar que es algo que te hemos informado varias veces.
Responder Con Cita
  #5  
Antiguo 03-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola rogercito.


Creo que tendrías que armar tu consulta más o menos de este modo:
Código Delphi [-]
...
var
  ape: string;
begin
  with Query do
  begin
    DatabaseName:= 'C:\Documents and Settings\Administrador\Escritorio\taf\tablas';
    Close;
    SQL.Clear;
    SQL.Add('select APELLIDO,DNI,DIRECCION1,DIRECCION2,CPL,CPN,CPP,TELEFONO,E_MAIL1,E_MAIL2,A_MAIL3,E_MAIL4,ORIGEN ');
    SQL.Add('from docentes ');
    SQL.Add('where APPELLIDO = :parametro_ape');
    SQL.Add('order by APELLIDO');
    ParamByName('parametro_ape').AsString:= ape;
    Open;
  end;
...

Saludos.

Nota: Por favor, hacele caso a Casimiro
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #6  
Antiguo 03-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
Me sigue saliendo un error de q no se encuentran las tablas. Y la direccion esta bien puesta . Tendre mal Las propiedades del datasource, query y dbgrid. Ya no se que hacer
Responder Con Cita
  #7  
Antiguo 03-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola rogercito.

Si probaste el código que te puse y te dá ese error, creo que hay dos opciones:
  1. El nombre de la tabla no es docentes.dbf
  2. La ruta donde declaras que está ubicado docentes.dbf es incorrecta

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #8  
Antiguo 03-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
es que la ruta es la misma que utilizo todo el trabajo . .. por eso no entiendo porque me sale el error de la direccion si en todo el trabajo utilizo la misma direccion...

No sera que las propiedades del dbgrid, del datasource y del query estan mal?
Responder Con Cita
  #9  
Antiguo 03-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por rogercito Ver Mensaje
es que la ruta es la misma que utilizo todo el trabajo . .. por eso no entiendo porque me sale el error de la direccion si en todo el trabajo utilizo la misma direccion...

No sera que las propiedades del dbgrid, del datasource y del query estan mal?
Y exáctamente, ¿ Cuál es el error que te arroja ?

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #10  
Antiguo 03-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
me dice invalid directory. Pero lo raro como te decia q ese directorio lo estoy usando y en los otros procesos q hago me toma el directorio perfectamente no me sale ningun error
Responder Con Cita
  #11  
Antiguo 03-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Para sacarte toda duda, podrías probar lo siguiente:
.Create una carpeta cualquiera, C:\Temp por ejemplo.
.Copiá desde C:\Documents and Settings\Administrador\Escritorio\taf\tablas, todos los archivos cuyo nombre sea docentes (docentes.*).

Echo esto tendrías que tener docentes.* en C:\Temp.

Luego probá con este código:
Código Delphi [-]
...
var
  ape: string;
begin
  with Query do
  begin
    DatabaseName:= 'C:\Temp';  // <- Aqui indicas la nueva ruta a la BD
    Close;
    SQL.Clear;
    SQL.Add('select APELLIDO,DNI,DIRECCION1,DIRECCION2,CPL,CPN,CPP,TELEFONO,E_MAIL1,E_MAIL2,A_MAIL3,E_MAIL4,ORIGEN ');
    SQL.Add('from docentes ');
    SQL.Add('where APPELLIDO = :parametro_ape');
    SQL.Add('order by APELLIDO');
    ParamByName('parametro_ape').AsString:= ape;
    Open;
  end;
...
Tendría que funcionar sin ningún problema.

Un saludo.

Edito: Me faltó poner la asignación que orginalmente haces en tu código [ ape:=edit1.text; ].
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 03-10-2011 a las 23:43:19.
Responder Con Cita
  #12  
Antiguo 03-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
me sigue saliendo el mismo error, ya no se q hacer, probe un monton de cosas y nada funciona, necesito resolver esto urgente, Si hay alguna otra sugerencia la acepto. Gracias
Responder Con Cita
  #13  
Antiguo 04-10-2011
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Pues pon tu código que lo veamos, no podemos adivininar, no vemos tu pantalla
Responder Con Cita
  #14  
Antiguo 04-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
paso el codigo que tengo

Código SQL [-]
select  APELLIDO,DNI,DIRECCION1,DIRECCION2,CPL,CPN,CPP,TELEFONO,E_MAIL1,E_MAIL2,A_MAIL3,E_MAIL4,ORIGEN

from tabla_docentes

where APELLIDO=arametro_ape

order by APELLIDO

el codigo del boton es

Código Delphi [-]
procedure TForm38.Button1Click(Sender: TObject);
var
ape:string;
begin
 with Query1 do
  begin
    DatabaseName:= 'C:\Documents and Settings\Administrador\Escritorio\docentes';  // <- Aqui indicas la nueva ruta a la BD
    Close;
    ape:=edit1.text;
    SQL.Clear;
    SQL.Add('select APELLIDO,DNI,DIRECCION1,DIRECCION2,CPL,CPN,CPP,TELEFONO,E_MAIL1,E_MAIL2,A_MAIL3,E_MAIL4,ORIGEN ');
    SQL.Add('from docentes ');
    SQL.Add('where APPELLIDO = arametro_ape');
    SQL.Add('order by APELLIDO');
    ParamByName('parametro_ape').AsString:= ape;
    Open;
  end;
 end;

en la propiedad del QUERY tengo

en databasename vacio
y en datasource vacio

la propiedad de DATASOURCE tengo

en dataset ---> query1

la propiedad del DBGRID tengo

datasource---> datasource1

no entiendo cual es problema .. lo que tambien pasa es que el dbgrid esta vacio no sale absolutamente nada .. y me tendrian que aparecer los nombres de los campos o estoy equivocado?
Responder Con Cita
  #15  
Antiguo 04-10-2011
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
lee la respuesta de ecfisa
copia esas tablas docente.* a otra carpeta
y has la prueba como él te sugiere

ahora si no te sale error y el dbgrid esta vacio puede tratarse que el apellido que colocas en el edit no figure en la tabla o que sea parcial, entonces deberias modificar la consulta en la parte del where

Código Delphi [-]
where apellido = :Apellido
por
Código Delphi [-]
where Apellido like :Apellido

no olvides agregar el simbolo '%' al final en el like
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #16  
Antiguo 04-10-2011
rogercito rogercito is offline
Miembro
NULL
 
Registrado: jun 2011
Posts: 60
Poder: 13
rogercito Va por buen camino
muchas gracias por su ayuda. Ya pude hacer la consulta. El unico problema que tengo es que solamente me busca en la primer palabra guardada en el campo nombre de la tabla..

por ejemplo si yo pongo el apellido me lo busca perfectamente, pero si yo pongo el nombre no me muestra nada... Si me podrian ayudar con eso seria barbaro. Muchas Gracias.
Responder Con Cita
  #17  
Antiguo 04-10-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por rogercito Ver Mensaje
por ejemplo si yo pongo el apellido me lo busca perfectamente, pero si yo pongo el nombre no me muestra nada... Si me podrian ayudar con eso seria barbaro. Muchas Gracias.
Bueno, ese comportamiento pareciera lógico ¿ No ? Si estas consultando por el nombre sobre el campo APPELLIDO...

Ahora, si tenés la unión de apellido + nombre en el campo APELLIDO una forma de 'atajar' lo que te tiren en el Edit sería:
Código Delphi [-]
procedure TForm38.Button1Click(Sender: TObject);
begin
  with Query1 do
  begin
    DatabaseName:= 'C:\Documents and Settings\Administrador\Escritorio\docentes';  // <- Aqui indicas la nueva ruta a la BD
    Close;
    SQL.Clear;
    SQL.Add('select APELLIDO,DNI,DIRECCION1,DIRECCION2,CPL,CPN,CPP,TELEFONO,E_MAIL1,E_MAIL2,A_MAIL3,E_MAIL4,ORIGEN ');
    SQL.Add('from docentes ');
    SQL.Add('where APPELLIDO like :parametro_ape');
    SQL.Add('order by APELLIDO');
    ParamByName('parametro_ape').AsString:= '%' + Edit1.Text + '%';
    Open;
  end;
end;

Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 04-10-2011 a las 09:07:27.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Volver a Mostrar los registros de un Dbgrid despues de haber echo una consulta verde_esmeralda PHP 0 20-05-2011 19:03:38
Mostrar Consulta TQuery en DBGrid Paradox 7 Delphi 7 toto29 Tablas planas 4 25-08-2008 19:54:07
Problema al mostrar consulta dape PHP 2 24-11-2006 04:25:09
Mostrar dos instancias por pantalla de una consulta papulo PHP 3 13-12-2005 15:59:03
Mostrar mensaje al ejecutar una consulta HERNAN Varios 5 05-12-2003 19:56:01


La franja horaria es GMT +2. Ahora son las 02:58:07.


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
Copyright 1996-2007 Club Delphi