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 18-12-2007
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Exclamation Problema cargar combo box from DB

Estoy haciend lo siguiente:

Código:
Query.SQL.Text := 'Select Producto from Productos order by Producto asc';
Query.Open;
Query.ExecSQL;
Combo.Clear;
WHile Query.FindNext Do
Begin
    Combo.Items.Add(Query.Fields[0].AsString);
end;
Query.Close;
y me presenta el siguiente error:

http://www.yourfilehost.com/media.php?cat=image&file=screenshot.JPG


que podra ser?
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #2  
Antiguo 18-12-2007
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
Ese error lo recuerdo en Delphi 5 cuando no tiene el parche para el ADO, porque mejor en lugar de utilizar ese procedimiento porque no usas un TDBLookupComboBox ???
Responder Con Cita
  #3  
Antiguo 18-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
hola, no es necesario hacer un open y luego un execsql porque es practicamente lo mismo, y estas haciendo un close luego de abrir:

Código:
Query.Close;
Query.SQL.Clear;
Query.SQL.Text := 'Select Producto from Productos order by Producto asc';
Query.Open;
Query.first;
if not Query.eof then
Begin
    Combo.Items.Add(Query.Fields[0].AsString);
    Query.next;
end;
Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.

Última edición por enecumene fecha: 18-12-2007 a las 19:15:55.
Responder Con Cita
  #4  
Antiguo 19-12-2007
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por enecumene Ver Mensaje
hola, no es necesario hacer un open y luego un execsql porque es practicamente lo mismo, y estas haciendo un close luego de abrir:

Código:
Query.Close;
Query.SQL.Clear;
Query.SQL.Text := 'Select Producto from Productos order by Producto asc';
Query.Open;
Query.first;
if not Query.eof then
Begin
    Combo.Items.Add(Query.Fields[0].AsString);
    Query.next;
end;
Saludos.

Gracias a ambos por la ayuda... te comento enecumene, que tuve que poner el open porque si solo utilizaba el Query.execsql, me dice que no se podia hacer la operacion solicitada en un closed dataset, entonces opte por hacer eso... voy a probar tu consejo y les cuento como me fue...
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #5  
Antiguo 19-12-2007
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 18
Nomad Va por buen camino
Cita:
Empezado por enecumene Ver Mensaje
hola, no es necesario hacer un open y luego un execsql porque es practicamente lo mismo, y estas haciendo un close luego de abrir:

Código:
Query.Close;
Query.SQL.Clear;
Query.SQL.Text := 'Select Producto from Productos order by Producto asc';
Query.Open;
Query.first;
if not Query.eof then
Begin
    Combo.Items.Add(Query.Fields[0].AsString);
    Query.next;
end;
Saludos.
Ya probe la solucion propuesta por encumene y me da exactamente el mismo error.
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #6  
Antiguo 19-12-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 21
enecumene Va por buen camino
Al parecer el error dice no hay registros en la tabla segun en mi entender, pero intentalo no con el F9 sino ya compilado a ver si sigue saliendo el error, porque me parece bastante raro.

ahh otra cosa en que evento de que componente estas usando?

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #7  
Antiguo 19-12-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Bueno, aqui hay un pequeño detalle, estas usando solo una función if pero para hacer un "barrido" de información, deberias de usar un WHILE

Código:
Query.SQL.Clear;
Query.SQL.Text := 'Select Producto from Productos order by Producto asc';
Query.Open;
Query.first;
WHILE not Query.eof DO begin
    Combo.Items.Add(Query.Fields[0].AsString);
    Query.Next;
end;
Query.Close;
Ahora, tambien hay que asegurarnos que la consulta realmente tenga datos...

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney

Última edición por egostar fecha: 19-12-2007 a las 17:56:15. Razón: Cambio de THEN por DO
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
problema al cargar dato fernando1973 SQL 5 25-04-2007 15:39:24
Problema al cargar proyecto =S Ken_Masters Varios 4 28-11-2006 19:27:19
Problema al cargar imagenes pjmedina Varios 6 23-11-2006 16:22:48
problema con combo box maui Conexión con bases de datos 9 20-05-2004 06:34:12
Problema al cargar Combo plmperez Conexión con bases de datos 5 11-02-2004 11:26:06


La franja horaria es GMT +2. Ahora son las 07:03:09.


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