Ver Mensaje Individual
  #1  
Antiguo 10-02-2009
Efren2006 Efren2006 is offline
Miembro
 
Registrado: feb 2006
Posts: 172
Reputación: 19
Efren2006 Va por buen camino
Error "connection lost to Database"

Saludos

Estoy utilizando Interbase 7.0 con Delphi 2009, estoy utilizando los Componentes Interbase, estoy haciendo un programa de Sincronizacion de 2 Bases de Datos y uno de los requerimientos es Borrar todos los registros de una de las tablas, Tengo en un Listbox con todas las Tablas a Borrar, esta es la Rutina que estoy utilizando:

Código Delphi [-]
 
procedure TForm1.LimpiarClick(Sender: TObject);
Var
  I:Integer;
  Tabla:String;
begin
  If Application.MessageBox('Desea Borrar TODOS los Datos.. ?','PREGUNTA',MB_YESNO+MB_ICONERROR+MB_DEFBUTTON2)<>IdYes Then Exit;
  if ibdatabase2.Connected then
     Begin
     ProgressBar1.Max:=ListBox2.Items.Count; 
     ProgressBar1.Position:=0;
     ListBox2.ItemIndex:=0;
     for I := 0 to ListBox2.Items.Count - 1 do
        Begin
        Tabla:=Trim(ListBox2.Items[i]);
        IBScript2.Script.Clear;
        IBScript2.Script.Add('DELETE FROM '+TABLA);
        if IBScript2.ValidateScript Then
           Begin
           IBScript2.ExecuteScript;
           IBScript2.Transaction.CommitRetaining;
           End
         else
           Begin
           Application.MessageBox(PChar('Error al con el Scrip de '+Tabla+'... Error '),'ERROR',MB_OK+MB_ICONERROR);
           end;
        ProgressBar1.Position:=I+1;
        End;
     Application.MessageBox('El Proceso a Finalizado ... ','Mensaje',MB_OK+MB_ICONINFORMATION);
     ProgressBar1.Position:=0;
     End;
end;


El problema es que debo efectuar varias veces este procesos para que se haga totalemente, porque dependiendo de la tabla que este Borrando me aperece el error "connection lost to Database"

Alguna Sugerencia .. ?? o solucion al Problema ..


Gracias de Antemano
Responder Con Cita