Delphi - Curioso error en datasets

 
Vista:

Curioso error en datasets

Publicado por Perkins (2 intervenciones) el 06/08/2007 10:18:57
Ocurrre algo raro en una aplicacion:

Se trata de una aplicacion que mediante bde graba datos en una bbdd (access) y luego los lee.

Lo hace bien, pero si se le hace repetir la operacion varias veces, despues de un número aleatorio de estas a la hora de leer aparece el Tquery vacio (la siguiente vez que se lee se vuelve a leer bien, de echo es lo unico q se me ha ocurrido para arreglarlo). Esto es, con la misma sql, el mismo objeto.... solo tengo que volver a hacer el active := false; active := true; y vuelve a estar bien.... pq ocurre esto? a alguien le ha pasado antes?
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:Curioso error en datasets

Publicado por perkins (2 intervenciones) el 06/08/2007 12:09:00
De hecho solo se arregla asi si se ejecuta desde el ide de delphi, si se ejecuta el ejecutable no se subsana el error....

Que horror.

Ademas en XP no ocurre... en 2000 si....
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

RE:Curioso error en datasets

Publicado por juancho (193 intervenciones) el 06/08/2007 12:49:05
No lo entiendo...se te borra la propiedad que guarda la sentencia al llamarla un numero de veces?, o sea que te da error como si fuera que la propiedad esta vacia?...
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

RE:Curioso error en datasets

Publicado por Richard (59 intervenciones) el 08/08/2007 06:19:50
Podrias Poner el codigo que utilizas.. para poder ayudarte??

a lo mejor estas insertanto, actualizando o eliminando registros con un Active..?..debiendo hacerlo con .ExecSQL..

TuQuery.Sql.Clear;
TuQuery.Sql.Text:='Delete from tu_Tabla Where Campo1=Valor1';
TuQuery..ExecSQL;

si lo que quieres es recuperar datos..

podrias...

TRY
TuQuery.Sql.Clear;
TuQuery.Sql.Text:='Select * From Tabla';
TuQuery.Open;

IF TuQuery.RecordCount > 0 THEN
BEGIN
WHILE NOT TuQuery.Eof DO
BEGIN
TuQuery.Next;
END;
END;

FINALLY
TuQuery.Close;
END;
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