salut tt monde
j'ai terminer une application avec trois Ttables dans un dossier BDD ,et je veut archiver ce dossier pour peut etre le restaurer celon les besoins.
je ne saias comment faire et j'espere votre aide
Merci
salut tt monde
j'ai terminer une application avec trois Ttables dans un dossier BDD ,et je veut archiver ce dossier pour peut etre le restaurer celon les besoins.
je ne saias comment faire et j'espere votre aide
Merci
La bonne question. J'ai peut-être une réponse (j'ai assez soufert dessus)Envoyée par SergioMaster :
Quelle BDD ?
Ce qui se conçoit bien s'énonce clairement
Et les mots pour le dire viennent aisément (Boileau)
bonjour tt le monde
BDD base de donnee BDE (Normale )
je m'explique je veut archiver une annee scolaire c'est a dire tout un repertoire contenant une ensemble de bases de donnees et si un eleve revient apres une periode pour chercher son buletin de notes je retourne a l'archive (restaurer le repertoire qui etait archivé )
Merci encore pour l'humour
encore une fois BDE n'est pas une Base de Données
BDE permet d'accéder à diverses Bases : ACCESS,PARADOX,INTERBASE etc...
donc je réitére ma question Quelle Base de Données
nota :
- si c'est paradox il y a déjà eu un post sur ce sujet (le + facile une simple copie de fichier , les musts un archivage via un programme de compression)
- si c'est interbase ou firebird , le backup
- pour access je dirais la même chose que paradox
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
Merci sergioMaster de votre attention
je suis débutant qui a de mal en langage informatique .
c'est une base PARADOX
Merci
on y' est .
maintenant quel voie choisir :
voici une partie de code que j'utilise pour envoyer un ensemble de fichier Paradox (compressé dans un zip via 7Zip 7ZA.exe ) dans mon cas le nom commence toujours par 'ST'+FL(un numero)+xxxxle + facile une simple copie de fichier , les musts un archivage via un programme de compression
[edit] ayant supprimer une partie du code (copie d'un ensemble de fichiers images) je m'aperçois qu'il serait inutile de créer un répertoire temporaire je le laisse au cas où tu ne voudrais pas faire de compression
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 // preparation d'un repertoire temporaire s'il existe je le vide if DirectoryExists(Tempdir+'\'+FL) then begin // effacer Fichiers précédents if FindFirst(TempDir+'\'+FL+'\*.*',faAnyFile-faDirectory,SearchRec)=0 then DeleteFile(TempDir+'\'+FL+'\'+SearchRec.Name); while FindNext(SearchRec)=0 do DeleteFile(TempDir+'\'+FL+'\'+SearchRec.Name); FindClose(SearchRec); end else ForceDirectories(Tempdir+'\'+FL); // sinon création // copier fichiers dans ce repertoire temporaire if FindFirst(TempDir+'\ST'+FL+'*.*',faAnyFile-faDirectory,SearchRec)=0 then begin FFile:=TempDir+'\'+SearchRec.Name; ToFile:=TempDir+'\'+FL+'\'+SearchRec.Name; MoveFile(PChar(FFile),PChar(ToFile)); end; while FindNext(SearchRec)=0 do begin FFile:=TempDir+'\'+SearchRec.Name; ToFile:=TempDir+'\'+FL+'\'+SearchRec.Name; MoveFile(PChar(FFile),PChar(ToFile)); end; FindClose(SearchRec); //*---------------------------------------------- // COMPRESSION 7-ZIP lzFile:=TempDir+'\ST'+FL+'.ZIP'; lzParam:=' a -tZIP '+lzFile+' "'+Tempdir+'\'+FL+'\*.*"'; ShellExecute(Handle,'OPEN','C:\LALET\Programmes\7ZA.EXE',PChar(lzParam),nil,SW_HIDE); //----------------------------------------
bien sûr , après il reste à soit vider les fichiers soit détruire et recréer ceux-ci .
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
Merci encore mille fois SergioMaster
j'ai du mal a reconstitué ces procedures
si vous pouvez me faire un code complet je serais tres reconnaissant
mes excuses du derangements
NB:c'est pour sauvegarder et restaurer mes données
détaillé ....
soit trois tables nommées STELV,STCLA,STNOTE (tu remarqueras que j'ai fais exprès de de prendre des noms commençant pareil , en utilisant un peu ton exemple)
STELV <- table élève , STCLA <-table Classe et STNOTE <-Table Notes
la sauvegarde se fera dans une archive(zip) nommée ST+aaaa (pour année) et seront mises dans un sous répertoire Archive
Sauvegarde sur l'évenemenent onClick d'un bouton (je reprend mon code en le modifiant)
Restauration Attention cette procédure écrase les fichiers en cours donc ne pas oublier de faire une sauvegarde avant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 // preparation d'un repertoire d'archive var ApplicationPath : String; AAAA : String; lzFile,lzParam : String; begin ApplicationPath:=ExtractFilePath(ParamStr(0)); // recuperation du repertoire de l'appli Ajouter ici le dialogue pour demander l'année (aaaa:=) if not DirectoryExists(ApplicationPath+'Archive') then ForceDirectories(ApplicationPath+'Archive); // création //*---------------------------------------------- // COMPRESSION 7-ZIP lzFile:=ApplicationPath+'Archive\ST'+AAAA+'.ZIP'; // nom de l'archive lzParam:=' a -tZIP '+lzFile+' "'+ApplicationPath+ST*.*"'; ShellExecute(Handle,'OPEN',ApplicationPath+7ZA.EXE',PChar(lzParam),nil,SW_HIDE); //----------------------------------------
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 var ApplicationDir,applicationPath : String; AAAA : String; lzFile,lzParam : String; begin ApplicationDir:=ExtractFileDir(ParamStr(0)); // recuperation du repertoire de l'appli ApplicationPath:=ExtractFilePath(ParamStr(0)); Ajouter ici un Appel à un dialogue demandant de sauvegarder l'année en cours Ajouter ici le dialogue pour demander l'année à récupéré (aaaa:=) lzFile:=ApplicationDir+'Archive\ST'+AAAA+'.ZIP'; // nom de l'archive [/COLOR]if FileExists(lzfile) then begin //*---------------------------------------------- // DECOMPRESSION 7-ZIP lzParam:=' e "'+lzfile+'" -o"'+applicationDir+'" -y'; ShellExecute(Handle,'OPEN',ApplicationPath+'7ZA.EXE',PChar(lzParam),nil,SW_HIDE); //---------------------------------------- end;
Bon, tout ceci n'est pas testé , je l'écris à la volée et j'ai un doute sur ExtractFilePath et ExtractFileDir . pour moi ..Path récupére avec le '\' ..dir sans le '\', à toi de corriger si nécessaire
bien sûr ce code nécessite 7ZIP ici(plus exactement l'executable en ligne de commande 7ZA de 7Zip) copié lui aussi dans le répertoire de l'application
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
bonjour tt monde
Merci sergiMaster
avec ces codes vous m'avez apris tant de choses que j'ai voulu laisser pour plus tard . vous etes simpa ..
--------------
je vais revenir apres l'essai
Merci beaucoup Maitre(Master)
apres l'essai j'ai recontrer quelques pbs
bouton1
st*.* = identificateur non déclarer
bouton2 : jai ajouté SHELLAPI ---> Uses
ShellExecute(Handle,'OPEN',ApplicationPath+'7ZA.EXE',PChar(lzParam),nil,SW_HIDE);
Err = types incompatibles :'string'et 'PansiChar'
voici ce que j'ai fait ici
effectivement, ici j'ai oublié une quote devant ST
et là
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 lzParam:=' a -tZIP '+lzFile+' "'+ApplicationPath+'ST*.*"';
pour un code 'a la volée' , sans filet j'ai des excuses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ShellExecute(Handle,'OPEN',Pchar(ApplicationPath+'7ZA.EXE'),PChar(lzParam),nil,SW_HIDE);
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
MErcccccccccccccccccccccciiiiiiiiiiiiiiiiiiiiiiiii
SergioMaster = Vielen Dank = very thank's
c'est resolu
MVP Embarcadero
Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
SGBD : Firebird 2.5, 3, SQLite
générateurs États : FastReport, Rave, QuickReport
OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager