PDA

Ver la Versión Completa : Fallo del restore


Vlady
23-05-2008, 19:59:44
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:



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


// 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