Moyen simple de sauvegarde
Bonjour à tous.
Le code suivant copie une B.D.D vers un Flash Disque:
Code:
1 2 3 4
| procedure TForm1.SauvegarderClick(Sender: TObject);
begin
FileUtil.CopyFile('C:\Base\REGISTRE.GDB','F:\Base\REGISTRE.GDB',[cffOverWriteFile]) ;
end; |
Pensez-vous que c'est une méthode efficace de sauvegarder une B.D.D?
merci d'avance.
Correction de 'moyen simple de sauvegarde'
Bonjour à tous :P
On fait la duplication d'une BDD en cous d'utilisation n'est pas possible qu'après sa déconnexion, et de préférence
suivie par la fermeture de l'application à l'aide d'un bouton(FermerSauvegarder) et d'un Timer, comme le montre l'exemple suivant.
(cela exige que la propriété connected de IBCONNECTION doit être False et que celle ci est connectée par programmation)
Code:
1 2
| var
Accueil: TAccueil;i:integer;USB:String; |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| procedure TAccueil.FormCreate(Sender: TObject);
var f:TextFile; s:string;
begin
Try
AssignFile(f,ExtractFilePath(Application.ExeName)+'Configuration\NomUSB.txt'); //NomUSB.txt doit contenir le nom USB ex:F
Reset(f);
readln(f,s); // recueil du Nom de USB.
USB:=Trim(s);
CloseFile(f);
Except
ShowMessage('Fichier sauvegarde déplacé!');
end;
end; |
Code:
1 2 3 4 5
| Enabled=False,Interval=100:
procedure TAccueil.Timer1StartTimer(Sender: TObject);
begin
i:=0; //initialisation de la variable i.
end; |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| procedure TAccueil.FermerSauvegarderClick(Sender: TObject);
Var Src,Dest:String;
begin
IBConnection1.Connected:=False ; //déconnection de la BDD pour pouvoir la dupliquer.
Src:=ExtractFilePath(Application.ExeName)+'DataBase\REGISTRE.FB';
Dest:=USB+':\DataBase\REGISTRE.FB';
if not FileUtil.DirPathExists(USB+':\DataBase') then
FileUtil.CopyFile(Src,Dest,[cffCreateDestDirectory])
else
FileUtil.CopyFile(Src,Dest,[cffOverWriteFile]) ;
Timer1.Enabled:=true ;
end; |
Code:
1 2 3 4 5 6 7
| procedure TAccueil.Timer1Timer(Sender: TObject);
begin
if i<15 then
i:=i+1
else
Application.Terminate ;
end; |
merci à tous 8-)