Delphi - Problemas con Query

 
Vista:

Problemas con Query

Publicado por lavtaro (2 intervenciones) el 01/03/2001 02:00:56
Primero que todo te agradezco por leer el mensaje. Tengo que enviar datos a una plainlla Excel. Recorro una tabla (Table1) y por cada registro de esta tabla busco registros coincidentes en otra tabla por medio de una consulta de esta forma.

procedure EnvíaDatos;
begin
while not Table1.eof do
begin
Query.Close;
Query.ParamByName('Codigo').AsInteger := Table1Codigo.AsInteger;
Query.ExecSQL;
Query.Open;
Query.first;
...
... //Envío los datos a la planilla.
...
Table1.Next;
end;
end;

El problema es que cuando envío los datos por segunda vez (invoco EnvíaDatos) aparece el siguiente error:

Proyect Prueba.exe raised exception class EDBEngineError with 'Too many open tables
Table c:\prueba\detalle.db'. Process stopped.

Agradecería cualquier ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problemas con Query

Publicado por Antonio M. Estévez (24 intervenciones) el 01/03/2001 08:43:52
Dos sugerencias:
· Añade la línea Table1.First al comienzo
· Quita la línea Query.ExecSQL. ExecSQL se utiliza cuando la consulta no devuelve un conjunto de datos( por ejemplo se borran o se modifican registros); Open se utiliza cuando la consulta devuelve un conjunto de datos, como supongo que es este caso, ya que no has enviado el código SQL de la consulta.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Un problema con los querys

Publicado por Erick (1 intervención) el 03/03/2001 03:41:30
Tengo un pequeño problema, como se manejan los set of results en delphi?
por ejemplo si hago:
select campo1 from tabla where campo2='x cosa';
en general me regresa un conjunto de resultados, y no solo uno, ahora como puedo por ejemplo ver esos resultados en un grid?, en pocas palabras como manejo ese set of results.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar