Répétez apres moi :J'aime PBAdonf. J'aime PBAdonf. J'aime PBAdonf.

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.
  • Index
  •  » Base de données
  •  » [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

#1 07-09-2010 10:39:49

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

[RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Bonjour à tous,

Je souhaiterai par le biais d'un système d'ouverture/fermeture/sauvegarde ouvrir/fermer/sauvegarder une base de
données de mon application (celle alimentant cette application en données )

Comment puis-je m'y prendre ?

Par avance, merci.

PS: Je suis sous PB9 et ASA8

Doctor Z.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#2 07-09-2010 11:27:21

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Salut,
    Si c'est une base locale ASA tu peut la sauvegarder par un simple copy de fichier ( sauvegarde du fichier.db et fichier.log éventuel)
    Pour faire celà il ne faut pas que ta base soit ouverte.

    Sinon tu peut également par code réaliser ton opération de la manière suivant sous PB :

Code: PB

string  ls_mysql

ls_mysql = "BACKUP DATABASE DIRECTORY 'C:\\temp\\' WAIT BEFORE START WAIT AFTER END "

EXECUTE IMMEDIATE :ls_Mysql USING sqlca ;

Le répertoire de sauvegarde est automatiquement créé même si ce dernier n'existe pas.


La syntaxe complète du BACKUP est la suivante :

Code: PB

BACKUP DATABASE
DIRECTORY backup-directory
[ WAIT BEFORE START ]
[ WAIT AFTER END ]
[ DBFILE ONLY ]
[ TRANSACTION LOG ONLY ]
[ TRANSACTION LOG RENAME [ MATCH ] ]
[ TRANSACTION LOG TRUNCATE ]
[ ON EXISTING ERROR ]
[ HISTORY { ON | OFF } ] 


Dans l'aide de ASA fait une recherche sur BACKUP STATEMENT pour avoir toutes les explications.

Hors ligne

 

#3 07-09-2010 12:49:41

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Yanis a écrit:

Salut,
    Si c'est une base locale ASA tu peut la sauvegarder par un simple copy de fichier ( sauvegarde du fichier.db et fichier.log éventuel)
    Pour faire celà il ne faut pas que ta base soit ouverte.

    Sinon tu peut également par code réaliser ton opération de la manière suivant sous PB :

Code: PB

string  ls_mysql

ls_mysql = "BACKUP DATABASE DIRECTORY 'C:\\temp\\' WAIT BEFORE START WAIT AFTER END "

EXECUTE IMMEDIATE :ls_Mysql USING sqlca ;

Le répertoire de sauvegarde est automatiquement créé même si ce dernier n'existe pas.


La syntaxe complète du BACKUP est la suivante :

Code: PB

BACKUP DATABASE
DIRECTORY backup-directory
[ WAIT BEFORE START ]
[ WAIT AFTER END ]
[ DBFILE ONLY ]
[ TRANSACTION LOG ONLY ]
[ TRANSACTION LOG RENAME [ MATCH ] ]
[ TRANSACTION LOG TRUNCATE ]
[ ON EXISTING ERROR ]
[ HISTORY { ON | OFF } ] 


Dans l'aide de ASA fait une recherche sur BACKUP STATEMENT pour avoir toutes les explications.

Merci Yanis pour ton explication, cependant je souhaiterai avoir un fichier par base de données et donc pouvoir les
sauvegarder directement dans mon application.

Ainsi, lorsque je clique sur le bouton d'ouverture de fichier, je devrai pouvoir avoir la liste des fichiers (= base de
données) que j'ai auparavant sauvegardé.

Comment puis-je faire cela ?


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#4 07-09-2010 13:00:08

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Salut,
   Pourquoi tu me dis 1 fichier par base de donnée, est ce que tu as plusieurs bases ouverte avec le même moteur ASA.
   
   La sauvegarde dans ton application c'est le code que je t'ai mis  avec la fonction execute immediate

   Si ce qui te gène c'est le nom du fichier de sauvegarde à toi d'utiliser la fonction PB : GetFileSaveName et de renommer ta sauvegarde à l'aide du nom de fichier récupérer.

Si ce n'est pas çà décrit exactement ce que tu désire faire.

Hors ligne

 

#5 07-09-2010 13:15:36

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Yanis a écrit:

Salut,
   Pourquoi tu me dis 1 fichier par base de donnée, est ce que tu as plusieurs bases ouverte avec le même moteur ASA.
   
   La sauvegarde dans ton application c'est le code que je t'ai mis  avec la fonction execute immediate

   S'il ce qui te gène c'est le nom du fichier de sauvegarde à toi d'utiliser la fonction PB : GetFileSaveName et de renommer ta sauvegarde à l'aide du nom de fichier récupérer.

Si ce n'est pas çà décrit exactement ce que tu désire faire.

OK, je me suis mal exprimé, je vais faire simple.

Imaginons que j'ai une application qui tourne sur 3 clients A, B, C, ayant chacun sa base A, B et C.

Je souhaiterai dans mon application pouvoir ouvrir chacun de leur fichier de base de données.

Merci.

Doctor Z.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 

#6 07-09-2010 13:45:35

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Salut,
    Tu démarre un engine avec le start et tu spécifie ton nom de fichier de base de donnée avec dbf le tout dans le dbparm de l'objet transaction.

Code: pb

SQLCA.DBMS = "ODBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "ConnectString='Driver=Adaptive Server Anywhere 9.0;" + &
               "DBF=C:\TEMP\easdemo105.db;UID=dba;PWD=sql;" + &
               "Start=C:\Program Files\Sybase\SQL Anywhere 9\win32\dbeng9.exe -d -c8m'"
CONNECT USING sqlca ; 


Ce code te permet de lancer n'importe quelle base et ou quelle soit sans que celle ci soit définit dans l'ODBC.

Hors ligne

 

#7 14-09-2010 13:36:57

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Salut,

    Je te relance sur ce message pour savoir ci celà te suffisait ou as tu pris une autre voie ?

Hors ligne

 

#8 15-09-2010 10:34:41

Doctor Z  
Moderador
Award: PanchoeNacho
Lieu: Vale Figueira (Lisbonne)
Date d'inscription: 30-05-2006
Messages: 756
Pépites: 1,003,082
Banque: 877,135,234,297,804

Re: [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Bonjour Yanis,

Non c'est bon, j'ai effectivement suivi tes préconisations et c'est ce que j'espérais.

Je vais fermer le topic.

Merci encore.

Doctor Z.


http://www.userbars.com/i/543606.gif
Olivença, l'oubliée
Si tu es alentejane, que Dieu te bénisses, si tu ne l'es pas, que Dieu te pardonnes.

Hors ligne

 
  • Index
  •  » Base de données
  •  » [RESOLU] ASA8 - Ouvrir/sauvegarder un fichier contenant une base de données

Pied de page des forums

Propulsé par FluxBB 1.2.22