Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-04-2004
fabriciof fabriciof is offline
Miembro
 
Registrado: abr 2004
Posts: 26
Poder: 0
fabriciof Va por buen camino
DBlistbox

estimados amigos, escribo este email para hecerte una consulata acerca de las bases de datos , pretendo crear una base de datos que contenga ademas de los labels y buttons un dblistbox en esta base de datos pretendo almacenar caracteristicas de varias especies de plantas , pudiendo seleccionar el nombre de apartir del dblistboxy poder visualizar las propiedades, estoy utilizando un query , un data source , ya configure los campos del query y ya conecte tanto el dblistbox como el data source entre si ademas de definir el field que quiero mostar, el problemas es que cuando ejecuto o pongo query1.active:=true no obtengo ningun resultado , no se si tengo que adicionar algun codigo para poder visualizar es field.

gracias por tu comprension
Responder Con Cita
  #2  
Antiguo 17-04-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
No está del todo claro lo que quieres hacer, pero restringiéndome a como mostrar los resultados en una consulta:

La consulta tiene una propiedad Tstrings que posee un botón de elipsis, ...
si pulsas en él puede escribar el SQL correspondiente siempre que vaya a ser estático.

Código:
Select * from Clientes
Esto sería un ejemplo simple para visualizar todos los clientes y todos los campos de dicha tabla.

Si tienes que armar al vuelo el SQL, tendrás que utilizar algo como esto:
Código:
Query1.Close;
Query1.Sql.Add('Select Nombre, Apellidos, codigo, fecha');
Query1.Sql.Add('From Clientes');
Query1.Sql.Add('Where codigo = '+QuotedStr(Edit1.Text));
Query1.Open;
Si conectas el DataSource de esta consulta a una rejilla, podrás ver los resultados en pantalla.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 19-04-2004
fabriciof fabriciof is offline
Miembro
 
Registrado: abr 2004
Posts: 26
Poder: 0
fabriciof Va por buen camino
memoria insuficiente

gracias , me gutaria explicarme mucho mejor , pretendo crear una base de datos que contenga una serie de propiedades , que me muestre todas la especies de plantas en un listbox , y que cuando yo haga clic sobre algun nombre del listbox me aparescan las propiedades dentro de unos tedit, intente la siguiente consulta

query1.close;
query1.clear;
edit1.text:=query1.sql.add('select cropname from crop where cpnm='+listbox1.items[listbox1.itemindex]+' ');

pero dentro de tedit me aparece 0
luego intente

con
edit1.text:=query1.sql.add('select cropname from crop where cpnm='past' ');
donde pas es uno de los items de mi listbox y aun me dio 0

aveces me pasa que me da el mensaje de insuficient memory

por favor ayudeme , ya que este proceso me esta tomando mucho tiempo
Responder Con Cita
  #4  
Antiguo 19-04-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Tendrías que explicar cuales son los campos de la tabla que consultas para saber exactamente como retomar los valores, pero suponiendo que la consulta esté bien planteada para recuperar los valores:

Con esto recuperarías el primer campo que te devuelve la consulta:

Edit1.Text:=Query.Fields[0].AsString;

Lo mejor es que pongas un DataSource conectado al Tquery y una rejilla conectada al DataSource, para ver que resultados te devuelve la consuslta y luego aplicas en consecuencia el ejemplo que he puesto.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 19-04-2004
fabriciof fabriciof is offline
Miembro
 
Registrado: abr 2004
Posts: 26
Poder: 0
fabriciof Va por buen camino
hola de nuevo y gracias , sabes hice lo que me dijiste y aun asi tengo un erro, luego trabaje con visual fox pro y obtuve el resultado correcto, salvo por una columna en la cual aunque existe el record PAST no me entrega resultado , es decir , cuando hago la consulta con cualquier otra columna todo sale bien

el campo cpnm es el problematico cuando hago una consulta , adicionando alguna rectriccion con otro campo como en este caso

select cpnm from crop2 where cropname='Agricultural Land-Generic'

obtengo resultado

pero sia hago la operacion inversa

select cropname from crop2 where cpnm='hay'

no tengo ningun resultado , a que se debe??

una vez verificado esto aplique como tu me dijiste a un db grid para poder visualizar el resultado de la busqueda

with query1 do
begin
close;
sql.Clear;
sql.add('select cpnm from crop2 where cropname='Agricultural Land-Generic');
open;
sql.free;
end;

y me salio error y como siempre ese insuficient memory que me trae loco

no se si podria mandate mi base de datos y mi aplicacion a tu email para que puedas darle un vistazo , siempre y cuando no sea una molestia , comprometiendome despues a entregar mis resultados , como es foro requiere

gracias
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


La franja horaria es GMT +2. Ahora son las 12:43:38.


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