IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

SQLDump et Java


Sujet :

JDBC Java

  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut SQLDump et Java
    Bonjour.

    Je développe en ce moment une application avec une base de données mysql.
    Je cherche à faire la sauvegarde de ma base de donnée MYSQL à l'aide de mySQLDump.
    J'ai développé le fonction suivante mais quand je la lance rien ne se passe. J'ai vérifié et revérifié le chemins d'accès de mysqldump et la syntaxe mais je ne trouve pas mon erreur .
    Est-ce que quelqu'un peut m'aider ?

    Merci

    CODE :

    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
    33
    34
    35
    36
    37
    38
    39
     
    public class SQLDump 
    {
        public JFileChooser dialogPath;
     
        public void saveDB()
        {
     
            try{
     
                Process p = Runtime.getRuntime().exec("\"C:\\Program Files\\MySQL\\MySQL Server 5.0\\bin\\mysqldump.exe\" -u root -psimon1 listecd > c:\\listecd.sql");
     
                System.out.println("\"C:\\Program Files\\MySQL\\MySQL Server 5.0\\bin\\mysqldump.exe\" -u root -psimon1 listecd > c:\\listecd.sql");
                }
                catch(Exception e)
                {
                    System.out.println("dump = " + e);
                }
            }
     
        private class MonFiltreAToi extends FileFilter {
            public boolean accept(File f) {
                boolean accepte = false;
                if (f.isDirectory())
                    accepte = true;
                if (f.getName().endsWith("sql") || f.getName().endsWith("SQL"))
                    accepte = true;
                if(f.getName().endsWith("lnk"))
                    accepte = false;
                return accepte;
            }
     
            public String getDescription() {
                return "Fichiers SQL";
            }
     
        }
     
    }

  2. #2
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Tu devrais trouver avec un peu de recherche sur ce forum plein d'infos sur Runtime.exec(..) ... En l'occurence, tu ne peux comme ça rediriger la sortie vers un fichier ... A toi de rediriger la sortie en Java ...

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut
    J'ai réussi à modifier mon code en mettant le temps (je viens de finir mes partiels) et la redirection pour creer mo, fichier .sql marche. Maintenant, j'ai un autre soucis, le fichier sauvegardant mes bases de données créé par mon programme n'est pas le même que celui que je créé en ligne de commande.
    Bien sur quand j'essaye de restaurer mes bases de données à l'aide du fichier créé par mon programme en java, ca ne marche pas SQL trouve une erreur de syntaxe.

    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
    33
    34
    35
    36
    37
    38
    public void saveDB()
        {
            dialogPath = new JFileChooser();
            dialogPath.showSaveDialog(null);
            String fileURL = dialogPath.getSelectedFile().getPath();
            sauvegardePass passRead = new sauvegardePass();
            String pass = passRead.lireFichier();
            try{
     
                Process p = Runtime.getRuntime().exec("\"C:\\Program Files\\MySQL\\MySQL Server 5.0\\bin\\mysqldump.exe\" -u root -p"+ pass + " listecd");
     
                File sqlDump = new File(fileURL);
                FileWriter fw=null;
                try 
                {
                    fw = new FileWriter(sqlDump);
                }
                catch (IOException ex) 
                {
                } 
                InputStream in = p.getInputStream();
                InputStreamReader xx = new InputStreamReader(in,"utf8");
                char[] chars=new char[1024];
                int ibyte=0;
                while((ibyte=xx.read(chars))>0)
                {
                fw.write(chars);
                }
                fw.close(); 
     
     
                }
     
                catch(Exception e)
                {
                    System.out.println("dump = " + e);
                }
            }
    Je n'ai pas développé la fonction qui me permet de restaurer mes bases à partir du fichier .sql créé par mon prog. Pour tester le fichier, j'utilise la lligne de commande winwin.

    Est-ce que j'ai une erreur dans mon code de sauvegarde ?

  4. #4
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Quand tu regardes le fichier et que tu le compares avec un fichier mysqldump fait à la main, c'est quoi la différence ? C'est pas un problème d'encoding ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Avril 2006
    Messages : 201
    Par défaut
    tu pourrais mettre deux trois commentaire sur ton code ya des chose que je ne comprend pas et en ce moment j'essai de faire la même chose que toi

    merci d'avance

  6. #6
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut
    En fait quand je lance la création du fichier, elle se passe bien. C'est ensuite quand je compare le contenu des deux fichiers (celui créé en ligne de commande et celui créé avec mon logiciel) qu'il y a des différences. C'est différence se traduise par des ajouts de caractères.
    J'ai utilisé l'encodage utf8 pour la création de ma fonction.
    Si tu veux, je peux t'envoyer les fichiers par mp pour que tu puisses comparés. En plus, il y a une différence de taille asez importante, l'un fait 4Ko et l'autre 7Ko.

    Je suis à bout, j'ai essayé beaucoup de chose mais la je ne vois plus.

    piqpen, dès que j'arrive à bien gérer mon truc je te tiens au courant.

  7. #7
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Ben tu peux linker les fichiers ici non ?

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Par défaut
    Bonjour a tous, j'ai le meme probleme qui traine depuis un peux trop longtemps dans mon appli.
    J'utilise le meme procede que scaillea :
    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
    if(result != JFileChooser.CANCEL_OPTION){
                dir = fileChooser.getSelectedFile().getPath();
                //System.out.println("dir,langage,skin: "+dir+", "+langage+", "+skin);
                savePreferences();
                String connect = new String("mysqldump -u"+user+" -p"+password+" -h"+host+" --default-character-set=utf8 "+dbname);
                String fichier = new String(dir+"/"+dbname+".sql");
                //String[] req = {connect, " > ", fichier};
                File sqlDump = new File(fichier);
                FileWriter fw=null;
                try{
                    fw = new FileWriter(sqlDump);
                }catch (IOException ex){
                    System.out.println("erreur d'ouverture OUT [DumpSql]\n"+ex.getMessage());
                } 
     
                try{
                    process = runtime.exec(connect);
                    InputStream in = process.getInputStream();
                    InputStreamReader xx = new InputStreamReader(in,"utf8");
     
                    char[] chars=new char[1024];
                    int ibyte=0;
                    while((ibyte=xx.read(chars))>0){
                     fw.write(chars);
                    }
                    fw.close(); 
                }catch(IOException ex){
                    System.out.println("Erreur ecriture du dump [DumpSql]\n"+ex.getMessage());
                }
            }else{
                System.out.println("erreur lors de selection de dir\n"+fileChooser.getSelectedFile());
            }
    Mais ca cre un fichier de plusieur Mo de trop:
    dump par sql : 69ko, dump avec appli: 75ko
    et surtout se melange les pattes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    /*!40000 ALTER TABLE `client` DISABLE KEYS */;
    LOCK TABLES `client` WRITE;
    INSERT INTO `client` VALUES (1,'particulier','','ANDRE','Alain','2 rue beauflery','','33400','Bordeaux','France','05.53.18.31.02','','','wordsbybord@gmail.com',0),(2,'particulier','','Laro','Nicolas','','','34000','Montpellier','','','','','',0),(3,'particulier','','DUGENOUX','Robert','3 rue de la jallade','','33000','Bordeaux','France','05.56.36.23.87','','','dugenoux@hotmail.com',0),(4,'particulier','','RENARD','julien','6 rue du bougaviller','apt 3, bat 2','34000','Montpellier','France','04.55.16.34.07','','','renard@hotmail.fr',0),(5,'entreprise','La jonconde','Sian','jang','2 avenue collbert','','69000','Lyon','France','','','','',0),(8,'particulier','','Dilan','Bob','','','','','','','','','',0);
    NULL,
      `fax` varchar(30) default NULL,
      `mail` varchar(30) default NULL,
      `nbrOeuvres` int(11) NOT NULL default '0',
      PRIMARY KEY  (`identifiant`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1;
    Je pense que ca doit venir d'un probleme de buffer ou autre, j'ai aussi entendu parler d'une repartition des sorties pour aleger le processus.. L'appli doit pouvoir dump un quantite importante de donnees (images ...) alors si le dump plante avec 69 ko c'est la misere.

  9. #9
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Ca ne serait pas ton tableau qui cause le problème ?
    Si tu remplaces
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    fw.write(Arrays.copyOf(chars,ibyte));
    en supposant que tu es en Java 1.6 ?

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Par défaut
    Hehe ca marche merci. par contre si je dump des images (longblob) je n'arrive pas a restaurer semble que mysql interprette des lignes du blob et me retourne une erreure :
    ERROR at line 2006: Unknown command '\''.
    Je vais faire des comparaisons avec la facon dont mysql ecrit son dump et mon fichier reecrit. Il va me faloir minimiser le dump car il n'y a que vi qui arrive a ne pas lagger en affichant le dump :/
    Enfin un GRAND merci pour cette ligne, faudrais que je mette plus a l'i/o moi ;p je passe trop de temps avec les requettes et le gui ...

    ps: oui je suis sous 1.6 avec le mysql-connector 5.06, j'adore les sort et filters de JTable avec la 1.6 ;p

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Par défaut
    Re,
    En fait ce doit être le charset qui n'est pas bon.
    Je liste ci dessous le debut d'une image (le même nombre de characteres)
    mysqldump:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ÿØÿà\0^PJFIF\0^A^B\0\0^A\0^A\0\0ÿÛ\0C\0^H^F^F^G^F^E^H^G^G^G   ^H\n^L^T\r^L^K^K^L^Y^R^S^O^T^]\Z^_^^^]\Z^\^\ $.\' \",#^\^\(7),01444^_\'9=82<.342ÿÛ\0C^A                 ^L^K^L^X\r\r^X2!^\!22222222222222222222222222222222222222222222222222ÿÀ\0^Q^H\0T\0?^C^A\"\0^B^Q^A^C^Q^AÿÄ\0^_\0\0^A^E^A^A^A^A^A^A\0\0\0\0\0\0\0\0^A^B^C^D^E^F^G^H       \n^KÿÄ\0µ^P\0^B^A^C^C^B^D^C^E^E^D^D\0\0^A}^A^B^C\0^D^Q^E^R!1A^F^SQa^G\"q^T2<81><91>¡^H#B±Á^URÑð$3br<82> \n^V^W^X^Y\Z%&\'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz<83><84><85><86><87><88><89><8a><92><93><94><95><96><97><98><99><9a>¢£¤¥¦§¨©ª²³´µ¶·¸¹ºÂÃÄÅÆÇÈÉÊÒÓÔÕÖרÙÚáâãäåæçèéêñòóôõö÷øùúÿÄ\0^_^A\0^C^A^A^A^A^A^A^A^A^A\0\0\0\0\0\0^A^B^C^D^E^F^G^H        \n^KÿÄ\0µ^Q\0^B^A^B^D^D^C^D^G^E^D^D\0^A^Bw\0^A^B^C^Q^D^E!1^F^RAQ^Gaq^S\"2<81>^H^TB<91>¡±Á       #3Rð^UbrÑ\n^V$4á%ñ^W^X^Y\Z&\'()*56789:
    mon appli:
    ����\0^PJFIF\0^A^B\0\0^A\0^A\0\0��\0C\0^H^F^F^G^F^E^H^G^G^G ^H\n^L^T\r^L^K^K^L^Y^R^S^O^T^]\Z^_^^^]\Z^\^\ $.\' \",#^\^\(7),01444^_\'9=82<.342��\0C^A ^L^K^L^X\r\r^X2!^\!22222222222222222222222222222222222222222222222222��\0^Q^H\0{\0�^C^A\"\0^B^Q^A^C^Q^A��\0^_\0\0^A^E^A^A^A^A^A^A\0\0\0\0\0\0\0\0^A^B^C^D^E^F^G^H \n^K��\0�^P\0^B^A^C^C^B^D^C^E^E^D^D\0\0^A}^A^B^C\0^D^Q^E^R!1A^F^SQa^G\"q^T2���^H#B��^UR��$3br� \n^V^W^X^Y\Z%&\'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz���������������������������������������������������������������������������\0^_^A\0^C^A^A^A^A^A^A^A^A^A\0\0\0\0\0\0^A^B^C^D^E^F^G^H \n^K��\0�^Q\0^B^A^B^D^D^C^D^G^E^D^D\0^A^Bw\0^A^B^C^Q^D^E!1^F^RAQ^Gaq^S\"2�^H^TB���� #3R�^Ubr�\n^V$4�%�^W^X^Y\Z&\'()*56789:
    Désolé pour le "" mais si je metle code généré par l'appli en balise code les chara [?] sont interprete en code couleur

    Pourtant les 2 doivent etre encode en UTF8 je comprends pas trop.
    je dump ma DB avec le script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysqldump -uXX -pXX -h127.0.0.1 --default-character-set=utf8 goeuvredb > /home/XX/programmation/GOeuvre/utilities_projet/goeuvre.sql;
    et le code de l'appli est au dessus ;p

    Par contre j'enregistre mes données avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Connection = DriverManager.getConnection("jdbc:mysql://"+host+"/"+dbname+"?requireSSL=false&useUnicode=true&characterEncoding=UTF-8&jdbcCompliantTruncation=false", user, password);

  12. #12
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    C'est assez normal : tu lis l'inputstream sous forme de caractères et tu enregistres de même sous forme de caractères dans le fichier.
    Mais les images, c'est du binaire !

    Essaye un peu ça :
    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
     
    if(result != JFileChooser.CANCEL_OPTION){
                dir = fileChooser.getSelectedFile().getPath();
                //System.out.println("dir,langage,skin: "+dir+", "+langage+", "+skin);
                savePreferences();
                String connect = new String("mysqldump -u"+user+" -p"+password+" -h"+host+" --default-character-set=utf8 "+dbname);
                String fichier = new String(dir+"/"+dbname+".sql");
                //String[] req = {connect, " > ", fichier};
                File sqlDump = new File(fichier);
                FileOutputStream fw=null;
                try{
                    out = new FileOutputStream(sqlDump);
                }catch (IOException ex){
                    System.out.println("erreur d'ouverture OUT [DumpSql]\n"+ex.getMessage());
                } 
     
                try{
                    process = runtime.exec(connect);
                    InputStream in = process.getInputStream();
     
                    byte[] bytes=new byte[1024];
                    int ibyte=0;
                    while((ibyte=in.read(bytes))>0){
                     out.write(bytes);
                    }
                    out close(); 
                }catch(IOException ex){
                    System.out.println("Erreur ecriture du dump [DumpSql]\n"+ex.getMessage());
                }
            }else{
                System.out.println("erreur lors de selection de dir\n"+fileChooser.getSelectedFile());
            }

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Par défaut
    Ok merci un grand merci chtig ca marche au poil, j'ai juste du modifier la partie try/catch sinon il me manquait des morceaux ;p
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    process = runtime.exec(connect);
    InputStream in = process.getInputStream();
     
    byte[] bytes=new byte[1024];
    int ch = 0;
    while((ch=in.read(bytes)) != -1){
        out.write(bytes, 0, ch);
    }
    out.close(); 
    in.close();
    Me reste plus qu'a m'inspirer de ca pour la restauration ;p

  14. #14
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Eh ben oui l'abruti que je suis !
    En changeant pour traiter du binaire au lieu des chars, je suis reparti de ton code d'origine qui avait ce problème d'écrire tout le temps le tableau complet et que je t'avais indiqué lol

    Si c'est bon n'oublie pas le tag

  15. #15
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut
    En tout cas, je vais essayez ça pur le fw.vrite. Ensuite, si ca résoud mon problème, je vais sauté au plafond et je me pencherais sur la restauration que je n'ai toujours pas faite . J'ai pas beaucoup de temps en ce moment

  16. #16
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 6
    Par défaut
    Citation Envoyé par Scaillea
    En tout cas, je vais essayez ça pur le fw.vrite. Ensuite, si ca résoud mon problème, je vais sauté au plafond et je me pencherais sur la restauration que je n'ai toujours pas faite . J'ai pas beaucoup de temps en ce moment
    Pour la restauration ca m'interesse aussi ;p Pour le moment je n'ai pas reussit et je n'ai pas le temps de travailler dessus vu mes deadlines sur d'autres parties.

    Chtig pour le tag resolu ce n'est pas mon thread, faudra que scaillea le face.

  17. #17
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut
    Normalement, ce Week-end j'ai un pote qui lui a continué ses études d'informatiques. Cette visite va avoir pour conséquences un week-end complet de programmation donc normalement j'aurai je pense bien avancé pour la restauration . Je vous tiens au courant .

  18. #18
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 11
    Par défaut
    Ca y est. J'ai fini la restauration à partir d'un fichier SQL d'une base de donnée avec une interface JAVA. Je me suis pas pris la tête et j'ai créé un code qui créé un .bat. C'est dans ce .bat que la ligne de commande de restauration par SQL est mise. Ensuite, j'exécute ce .bat qui me fait la restauration.

    public void restoreDB()
    {
    dialogPath = new JFileChooser();
    dialogPath.showSaveDialog(null);
    String fileURL = dialogPath.getSelectedFile().getPath();
    try {
    System.out.println(Calendar.getInstance().getTime());
    System.out.println(getMysqlFolder());
    System.out.println(Calendar.getInstance().getTime());
    File file = new File("restore.bat");
    if (!file.exists())
    file.createNewFile();
    FileWriter writer = new FileWriter(file);
    String SQLPath = PropertyReader.getProperty(PropertyReader.PROPERTY_MYSQLFOLDER);
    writer.write("\"C:\\Program Files\\MySQL\\MySQL Server 5.0\\bin\\mysql\" -u root -psimon1 listecd<" + fileURL);
    writer.flush();
    writer.close();
    Runtime.getRuntime().exec("restore.bat");
    //file.delete();
    } catch (IOException e) {
    e.printStackTrace();
    }
    }

Discussions similaires

  1. le Java est la continuité du C++ ???
    Par Vincent PETIT dans le forum Débats sur le développement - Le Best Of
    Réponses: 33
    Dernier message: 25/08/2005, 20h17
  2. Envoi de Datagrames par IP en JAVA
    Par the java lover dans le forum Développement
    Réponses: 2
    Dernier message: 14/08/2002, 11h44
  3. directx et java?? possible??
    Par jiraiya dans le forum DirectX
    Réponses: 3
    Dernier message: 09/07/2002, 19h55
  4. webcam : lire sur un port usb en c/c++ ou java. sous win. ?
    Par flo007 dans le forum Choisir un environnement de développement
    Réponses: 2
    Dernier message: 24/05/2002, 23h24
  5. Service de nommage java C++
    Par Anonymous dans le forum CORBA
    Réponses: 3
    Dernier message: 15/04/2002, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo