Backup & Restauração

Para efetuar a cópia:

 

procedure TFormCopia.BitBtn1Click(Sender: TObject);

var

  I: Integer;

begin

  // Database para controle

  Database1.Connected := True;

  // Seleciona local de destino da cópia

  Table2.DatabaseName := DirectoryListBox1.Directory;

  with Session1 do

  begin

    Active := True;

    // Retorna o nome das tabelas

    GetTableNames('AliasName', '*.*', True, True, Memo1.Lines);

  end;

  for I:= 0 to Memo1.Lines.Count - 1 do

  begin

    // Tabela origem

    Table1.TableName := Memo1.Lines[I];

    // Tabela destino

    Table2.TableName := Memo1.Lines[I];

    BatchMove1.Execute;

  end;

end;

 

Para efetuar a restauração:

 

procedure TFormRestaura.BitBtn1Click(Sender: TObject);

var

  I: Integer;

begin

  Database1.Connected := True;

  // Origem da restauração 

  Table2.DatabaseName := DirectoryListBox1.Directory;

  with Session1 do

  begin

    Active := True;

    // Retorna nomes das tabelas

    GetTableNames(Table2.DatabaseName, '*.*', True, True, Memo1.Lines);

  end;

  for I:= 0 to Memo1.Lines.Count - 1 do

  begin

    // Tabela origem

    Table1.TableName := Memo1.Lines[I];

    // Tabela destino

    Table2.TableName := Memo1.Lines[I];

    BatchMove1.Execute;

  end;

end;

 

Após restaurar por este método, você deve recriar os índices.