Ver Mensaje Individual
  #8  
Antiguo 09-08-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por ElMug Ver Mensaje
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
Responder Con Cita