Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-11-2005
Avatar de alt126
alt126 alt126 is offline
Miembro
 
Registrado: dic 2004
Posts: 171
Poder: 20
alt126 Va por buen camino
Realizar copia de seguridad de una base de datos

El codigo siguiente es para, teniendo instalada una base de datos ODBC, hacer una copia del fichero de la base de datos, indicando el destino.

sdCopia es un TSaveDialog.
El tratamiento que se hace con la fecha, es para sustituir los "/" por "-", ya que los "/", no estan permitidos en el nombre del archivo.

En definitiva, lo que hace es buscar la ruta de la base de datos, a partir del registro de windows y luego añadirle al nombre del fichero destino, la fecha actual. Por ultimo permite a traves de un dialogo de guardar archivo, seleccionar el destino de la copia.

Cita:

#include <registry.hpp>
...
...
...

//Generamos una copia de seguridad.
TRegistry *registrowindows = new TRegistry;
String nombreorigen,fecha;
//Buscamos en el registro donde esta la base de datos.
//a partir del ODBC.
registrowindows->OpenKey("Software",false);
registrowindows->OpenKey("ODBC",false);
registrowindows->OpenKey("ODBC.INI",false);
registrowindows->OpenKey("BaseDatosFacturas",false);
nombreorigen = registrowindows->ReadString("DBQ");
fecha=DateToStr(Date());
fecha.Delete(3,1);
fecha.Insert("-",3);
fecha.Delete(6,1);
fecha.Insert("-",6);
sdCopia->FileName = "BaseDatos - " + fecha;
if(sdCopia->Execute())
{
CopyFile(nombreorigen.c_str(),sdCopia->FileName.c_str(),true);
MessageDlg("Copia de seguridad realizada", mtInformation,TMsgDlgButtons() << mbOK, 0);
}
else
MessageDlg("Se ha cancelado la Copia de seguridad", mtWarning,TMsgDlgButtons() << mbOK, 0);
__________________
Un saludo

Antonio
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 10:26:27.


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
Copyright 1996-2007 Club Delphi