Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Fallo del restore (https://www.clubdelphi.com/foros/showthread.php?t=56683)

Vlady 23-05-2008 19:59:44

Fallo del restore
 
Hola amios del club delphi estoy trabajando con delphi 7 y firebird 2.0, tengo problemas al recuperar mi base de datos despues de haber realizado un backup, con el backup no tengo problemas y hasta lo puedo recuperar usando cualquier admnistrador como IBexpert pero no he podido realizarlo mediante codigo en mi aplicacion, esta es la funcion q me corro para realizar la restauracion pero me aparece un error:

Código Delphi [-]

with DMServicios.IBRestore do
   begin
      Active := True;
      try
         Screen.Cursor := crHourGlass;
         DatabaseName.Clear;
         BackupFile.Clear;
         MRestore.Lines.Clear;

         // Cargamos las opciones que nos indiquen
         Options := [];
         if chkIndices.Checked  then  Options  := Options + [DeactivateIndexes];
         if chkShadow.Checked   then  Options  := Options + [NoShadow];
         if chkValidate.Checked then  Options  := Options + [NoValidityCheck];
         if chkReplace.Checked  then  Options  := Options + [Replace];
         if chkCreate.Checked   then  Options  := Options + [CreateNewDB];
         // ¿Quieren ver el progreso?
         Verbose := chkVerboseRestore.Checked;

         // Indicamos la base de datos destino
         DatabaseName.Add(EDb.Text);
         // El archivo GBK origen
         BackupFile.Add(EGbk.Text);
         // Cerramos la conexión con la base de datos.
         // En una aplicación real, tendriamos que cerrar todas las ventanas activas
         // que tengan una conexión con tablas de la base de datos
         DataM.Desconectar;
         // Comenzar
         ServiceStart;
         // Si se quiere ver el progreso...
         if Verbose then
             begin
                While not Eof do
                    MRestore.Lines.Add(GetNextLine);
               
                MRestore.Lines.Add('¡ PROCESO TERMINADO !');
             end;
        finally
          Active := False;
         // Vovemos a conectar con la base de datos
         DataM.Conectar;
         Screen.Cursor := crDefault;
         ShowMessage('  COPIA RESTAURADA CON EXITO, !!! SE CERRARÁ LA APLICACIÓN !!! ');
         Application.Terminate;
      end;
   end;


el codigo corre bien pero cuando llega a esto

Código Delphi [-]
        // Si se quiere ver el progreso...
         if Verbose then
             begin
                While not Eof do
                    MRestore.Lines.Add(GetNextLine);
               
                MRestore.Lines.Add('¡ PROCESO TERMINADO !');
             end;

si se deja verbose como true aparece el siguiente error
"page size is allowed only on restore or create"
y si lo dejo false no realiza nada, he buscado por todos los medios conocidos y no se a q se debe este error, si alguien me puede colaborar le agradeceria, Algo q se me olvidaba anotar es q utilizo los componentes InterBase Admin, para estos menesteres


La franja horaria es GMT +2. Ahora son las 05:59:56.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi