Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > Conexión con bases de datos
Register FAQ Members List Calendar Guía de estilo Search Today's Posts Mark Forums Read

Conexión con bases de datos

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 22/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
TQuery y Dbgrid

Hola a todos, mi pregunta es como relacionar una TQuery en un DBgrid.
Porque lo único que tiene el DBgrid es el DataSource, pero me aparecen los DataSource de las Tablas, no de la Query.
Gracias
Reply With Quote
  #2  
Old 22/07/2008
Caro's Avatar
*Caro* Caro is offline
Moderadora
 
Join Date: Jul 2004
Location: Cochabamba, Bolivia
Posts: 2,544
Poder: 25
Caro Va por buen camino
Hola golf2008, tu Query tiene que estar enlazado a un DataSource y ese DataSource es el que enlazas con tu DBGrid.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Reply With Quote
  #3  
Old 22/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
Gracias Caro por tu tiempo, pero lo tengo así configurado.
Tengo un Data Modulo donde están los Datasource y en el formulario el TQuery.
Este TQuery está relacionado con el DataSource que está en el DataModulo y el DBGrid con el mismo DataSource.
Gracias igual
Reply With Quote
  #4  
Old 22/07/2008
RolphyReyes's Avatar
RolphyReyes RolphyReyes is offline
Miembro
 
Join Date: Aug 2004
Location: Santo Domingo
Posts: 285
Poder: 23
RolphyReyes Va por buen camino
Smile

Saludos.

Creo conveniente que te des una vuelta por el wiki del Club.
__________________
Gracias,
Rolphy Reyes
Reply With Quote
  #5  
Old 22/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
????????????????????
Reply With Quote
  #6  
Old 22/07/2008
marcoszorrilla's Avatar
marcoszorrilla marcoszorrilla is offline
Capo
 
Join Date: May 2003
Location: Cantabria - España
Posts: 11,221
Poder: 10
marcoszorrilla Va por buen camino
Siguiendo lo apuntado por los compañeros/as te tiene que funcionar, pero incidiendo en lo mismo.

Necesitas un Tquery a este le conectas un DataSource y a éste último tu rejilla.

Puedes tener todos los componentes en el formulario o en el DataModulo, pero enlazadas en la forma descrita.

Un Saludo.
__________________
Guía de Estilo de los Foros
Quote:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Reply With Quote
  #7  
Old 22/07/2008
duilioisola's Avatar
[duilioisola] duilioisola is offline
Miembro Premium
 
Join Date: Aug 2007
Location: Barcelona, España
Posts: 1,806
Poder: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
En el DM (TDataModule):
TQuery1
Datasource1.Dataset = TQuery1

En el Form (TForm)
DBGrid1.Datasource = DM.Datasource1
Reply With Quote
  #8  
Old 22/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
Gracias a todos, pero como dice marcoszorrilla no importa si está el DataModulo o en el Form.
El tema es que no me funciona.
Por ejemplo, pongan un TQuery, un DBGrid y un TEdit .
En el TEdit ingreso el Código del Cliente, al presionar <enter> ejecuto la query
SELECT * FROM clientes WHERE codigo='+Edit.text;
Se supone que en el DBGRID el puntero me tiene que quedar apuntando al Cliente del cual ingrese el código.
Pero me queda en el primer registro.

Gracias igual
Reply With Quote
  #9  
Old 22/07/2008
Caro's Avatar
*Caro* Caro is offline
Moderadora
 
Join Date: Jul 2004
Location: Cochabamba, Bolivia
Posts: 2,544
Poder: 25
Caro Va por buen camino
Quote:
Originally Posted by golf2008 View Post
SELECT * FROM clientes WHERE codigo='+Edit.text;
Con esa consulta te debería mostrar el registro o los resgistros donde el codigo es igual a tu Edit.Text y es normal que te aparezca el puntero en el primer registro. Tu dices que apunte al cliente del cual has introducido el codigo, pero con tu consulta ya lo tienes. Quieres que se siga mostrando toda la lista de tus clientes en tu DBGrid y sobre eso solo posicionarte en el cliente que tiene el codigo que has introducido?? si es así puedes utilizar la función Locate de tu Query.

Sería bueno que expliques mas sobre lo que quieres hacer.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Reply With Quote
  #10  
Old 22/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
Caro lo que quiero es que en el DBgrid aparezca el/los registros de la tabla Cliente filtrada por la Query.
Por ejemplo si en el TEdit pongo un código o categoría, quiero que luego de ejecutarse la Query muestre en el DBgrid el/los Clientes que se corresponden con el código o categoría ingresada.
Saludos
Reply With Quote
  #11  
Old 22/07/2008
Caro's Avatar
*Caro* Caro is offline
Moderadora
 
Join Date: Jul 2004
Location: Cochabamba, Bolivia
Posts: 2,544
Poder: 25
Caro Va por buen camino
Como estas ejecutando tu Query?, te pongo un ejemplo:

Código Delphi [-]
procedure TForm1.EditKeyPress(Sender: TObject; var Key: Char);
begin
 if key=#13 then
  begin
    Query1.Close;
    Query1.SQL.Text := 'SELECT * FROM clientes WHERE codigo='+Edit.Text;
    Query1.Open;
 
     //O
 
    Query1.Active:=False;
    Query1.SQL.Text:='SELECT * FROM clientes WHERE codigo='+Edit.Text;
    Query1.Active:=True;
  end;

Y para la categoria es solo aumentar un or en tu consulta, lo anterior funciona si tu campo codigo es entero, sino fuera entero debes añadir comillas.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Reply With Quote
  #12  
Old 22/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
Caro gracias por tu tiempo, yo utlizo la segunda opción de consulta.
Pero mas allá de eso no logro mostrar en el DBGrid el resultado de la consulta ejecutada con el TQuery.
Básicamente es ese mi problema.
Gracias
Reply With Quote
  #13  
Old 22/07/2008
marcoszorrilla's Avatar
marcoszorrilla marcoszorrilla is offline
Capo
 
Join Date: May 2003
Location: Cantabria - España
Posts: 11,221
Poder: 10
marcoszorrilla Va por buen camino
Si has hecho las conexiones según lo que te han indicado, es posible que el problema sea que la consulta no devuelva ningún dato.

Por lo que te aconsejo que no pongas ninguna claúsula Where simplemente:
Código SQL [-]
Select * From MiTabla

Así podrás ir descartando los fallos que hacen que no te funcione la consulta correctamente.

Un Saludo.
__________________
Guía de Estilo de los Foros
Quote:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Reply With Quote
  #14  
Old 22/07/2008
duilioisola's Avatar
[duilioisola] duilioisola is offline
Miembro Premium
 
Join Date: Aug 2007
Location: Barcelona, España
Posts: 1,806
Poder: 22
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
También puedes enviar el archivo .dfm del datamodulo y del form para que lo veamos. Yo creo que el problema está en cómo unes el DataSource con el TQuery y el DBGrid.
Reply With Quote
  #15  
Old 23/07/2008
golf2008 golf2008 is offline
Miembro
 
Join Date: Feb 2008
Posts: 157
Poder: 19
golf2008 Va por buen camino
Por fin funcionó.
El tema es que hay que insertar otro TDataSource para que la consulta se relacione al DBgrid.
En total tiene que haber un TTable con su TDataSource.
Un TQuery, otro TDataSource (relacionando el TQuery en el Dataset) y el DBGRid relacionado al último TDataSource.
Gracias a todos por su tiempo
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
TTable o TQuery ?? Que uso ??? dinover7 Conexión con bases de datos 3 16/05/2007 18:54
TQuery nenufer Conexión con bases de datos 2 22/05/2006 16:41
Actualizar CAMPO del registro seleccionado con DBGrid,TQUERY y UpdateSQL cronixxx Conexión con bases de datos 0 05/07/2005 23:33
Ocultar movimiento cursor en dbGRid al recorrer TQuery. setry2 Conexión con bases de datos 2 23/03/2005 15:19
Búsquedas a través de TTable y/o TQuery y resultado en DBGrid nax Conexión con bases de datos 5 11/02/2005 05:08


All times are GMT +2. The time now is 06:46.


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