Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Backup/Restore sqlite (https://www.clubdelphi.com/foros/showthread.php?t=82262)

camiz 15-02-2013 18:22:40

Backup/Restore sqlite
 
Hola amigos del foro Quisiera que me ayuden con esto del Backup/ Restore de una base de datos sqlite

alguien podria darme un ejemplo.

gracias.

Casimiro Notevi 15-02-2013 20:18:32

En la web de sqlite, en la sección de preguntas frecuentes, en el buscador pones "backup" y aparecen muchas entradas, eliges una y encuentras algo así:
Te dejo el enlace para que le eches un vistazo.

Cita:

The "backup" method

The "backup" method makes a backup copy of a live database. The command syntax is like this:
dbcmd backup ?source-database? backup-filename
The optional source-database argument tells which database in the current connection should be backed up. The default value is main (or, in other words, the primary database file). To back up TEMP tables use temp. To backup an auxiliary database added to the connection using the ATTACH command, use the name of that database as it was assigned in the ATTACH command.
The backup-filename is the name of a file into which the backup is written. Backup-filename does not have to exist ahead of time, but if it does, it must be a well-formed SQLite database.
The "restore" method

The "restore" method copies the content a separate database file into the current database connection, overwriting any preexisting content. The command syntax is like this:
dbcmd restore ?target-database? source-filename



camiz 17-02-2013 06:06:02

disculpa mi ignorancia casimiro, pero no entiendo la informacion que hay en esa pagina y menos como adaptarla a mi aplicacion, quisiera algo parecido al backup restore para firebird que se hace con componentes TIBBackupService TIBRestoreService.

como puedo hacer para SQLite, quisiera saver si hay librerias u otra forma.
aca tengo un codigo que solamente copia el archivo.

Código Delphi [-]
var
o, d: String;
begin
d := txt_ruta.Text;
o := ExtractFilePath(Application.ExeName) + 'Datos\SPRO.db3';

CopyFile(pChar(o),pchar(d + '\BD' + FormatDateTime('ddmmyyyy' + 'hhnnss AM/PM', Now()) + '.bak'),false);
Application.MessageBox('Backup realizado con exito!','Mensaje',mb_Ok+MB_ICONINFORMATION);

end;

se que alguien tiene el aporte que necesito espero me den una ayudita...

Casimiro Notevi 17-02-2013 11:29:10

Si lo que quieres es hacer un backup 'normal' por seguridad, está bien así, copias la base de datos y listo.

En firebird, cuando haces backup y restore no estás solamente copiando la base de datos, sino que al mismo tiempo está comprobándola y solucionando posibles problemas, además de eliminar basura.

Si quieres comprobar la integridad de la BD sqlite, creo recordar que hay algún parámetro del tipo: integrity-check

camiz 17-02-2013 18:08:30

Cita:

En firebird, cuando haces backup y restore no estás solamente copiando la base de datos, sino que al mismo tiempo está comprobándola y solucionando posibles problemas, además de eliminar basura.

Casimiro, este mismo procedimiento quiero implementar en mi aplicacion que estoy desarrollando en delphi.
si no sería mucho pedirte un ejemplo, y obtener el ejemplo sería de lujo... jaja.

gracias de todas maneras, e navegado por la web en busca de una pista de ejemplo para delphi no existe o no les gusta compartir, quizas he buscado mal, el ultimo recurso esta aqui...

Casimiro Notevi 17-02-2013 20:38:14

Para testearla, desde la línea de comandos: sqlite3 basedatos.db "pragma integrity_check"

No hay más que hacer eso, lee el enlace que te he puesto antes :confused:


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

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