Cita:
Empezado por ElMug
En la base de datos, no quiero cambios fijos. Solo quiero que el dataset este vacio antes de mandar un Query.
Me encontre esto apenas:
Código:
var
ds : TSomeDataSet
begin
ds.First;
while NOT ds.Eof do
begin
if TRUE then
ds.Delete;
ds.Next;
end;
end;
En Lazarus el dataset equivale al SQLQuery1, a ver si esto se ve factible como principio.
A mi me parece que si y (lo voy a tratar al rato) relacionando esto:
sqlquery1.DataSource.DataSet.delete;
con el codigo arriba citado.
Gracias.
|
El código que pones, suponiendo que funciona (*), lo que hace es borrar todos los registros del query, pero, según comentas, no es lo que quieres hacer, y, si así fuera, entonces sería mejor una sentencia como la que te puse en mi último mensaje.
(*) Esto lo digo porque no toda consulta SQL es modificable, es decir, una consulta SQL deuelve un conjunto de registros pero no necesariamente podemos editar o borrar estos registros a partir del componente.
Aunque creo que te falta explicar con mayor claridad lo que quieres hacer, creo que lo que deseas hacer, corresponde, en realidad, a cerrar el SQLQuery:
Código SQL
[-]
SQLQuery1.Close; // Cierras la consulta y con ello el DBGrid asociado se pone en blanco.
SQLQuery1.SQL.Text = 'aquí el texto de la nueva consulta';
SQLQuery1.Open; // Lanzas la nueva consulta
// Saludos