Ver Mensaje Individual
  #4  
Antiguo 01-02-2007
salDer salDer is offline
Registrado
 
Registrado: feb 2007
Posts: 7
Reputación: 0
salDer Va por buen camino
Cita:
Empezado por Bicho
Hola bienvenido al ClubDelphi!

Antes que nada, échale un vistazo a la Guía de Estilo y verás que tú pregunto no debe ir en este foro, sino mejor en el de Bases de datos.
Tambien puedes usar el buscador antes de postear por si este tema ya se ha tratado otras veces.

En cuanto a tu pregunta, tienes varias opciones:

1 - Copiar el fichero de la base de datos (.gdb) de la ruta de origen a la de destino. Para ello debes asegurarte de que no haya ninguna conexión abierta o activa sobre esa base de datos. Así que de primeras los componentes IbDatabase, IbTable, IbQuery, etc que tengas para conectarte, deben estar con la propiedad Active := False y/o (según el componente) connected := False o usar el método Close para cerrar las conexiones de cada uno.
Una vez desconectado, puedes usar las funciones CopyFile (unit Windows) o tambien MoveFile y MovoFileEx (tambien en la unit windows).
Ejemplo:


Código Delphi [-]
function Backup(origen, destino :string) : String;
begin
//Primero desconectamos todo
Ibtable1.Close;
IbDataBase1.Connected := False; //o IbDataBase1.Disconnect;

//intentamos copiar el fichero
copyfile(origen, destino, False); //El ultimo parametro indica si queremos para si el fichero de destino existe o no. Ponemos false y reescribe el fichero
end;





2 - Usando los componentes de backup-restore que existen por ahí y que dudo que vengan en TurboDelphi, ya que lo desconozco por completo (aun no lo he instalado)

Saludos
Hola, el comando copyfile no es exactamente lo que yo keria, ya que yo keria seleccionar el destino con un SaveDialog o algo por el estilo.
Y ¿Cual es la herramienta con la cual hago que salga una barra de progreso?, ya que al ejecutarse el copyfile no hace nada visual. Es simplemente para hacer notar que se ha guardado el archivo.
Responder Con Cita