Connexion PhpMyAdmin avec Eclipse
Numbyscuit
Messages postés
18
Date d'inscription
Statut
Membre
Dernière intervention
-
Nadong -
Nadong -
Bonjour,
J'ai une base statistiquesdb créée avec PhpMyAdmin, situé dans localhost (j'utilise Wamp, toussa, et je n'ai pas modifié mes paramètres pseudo administrateur/mdp par défaut). Afin de m'assurer que la connexion avec la BDD fonctionne, j'utilise le code ci-dessous sensé m'afficher les éléments de la colonne "index" située dans la table "fichier". Mais rien ne se passe...
Merci d'avance pour vos réponses. Le code a été fait avec des fragments trouvé çà et là sur le net, la documentation a ce sujet étant très souvent anglophone et/ou mal expliquée.
J'ai une base statistiquesdb créée avec PhpMyAdmin, situé dans localhost (j'utilise Wamp, toussa, et je n'ai pas modifié mes paramètres pseudo administrateur/mdp par défaut). Afin de m'assurer que la connexion avec la BDD fonctionne, j'utilise le code ci-dessous sensé m'afficher les éléments de la colonne "index" située dans la table "fichier". Mais rien ne se passe...
import java.io.*; import java.sql.*; public class TestBDD { /** * @param args */ public static void main(String[] args) throws Exception { // TODO Auto-generated method stub try { Class.forName("com.mysql.jdbc.Driver").newInstance(); String url = "jdbc:mysql://localhost/phpmyadmin/statistiquesdb"; // a JDBC url String username = "root"; String password = ""; Connection connection = DriverManager.getConnection(url, username, password); Statement stat = connection.createStatement(); ResultSet resultat = stat.executeQuery("SELECT * FROM fichier"); System.out.println(resultat.getString("index")); resultat.close(); stat.close(); connection.close(); } catch (Exception ex) { // traitement de l'erreur } } }
Merci d'avance pour vos réponses. Le code a été fait avec des fragments trouvé çà et là sur le net, la documentation a ce sujet étant très souvent anglophone et/ou mal expliquée.
5 réponses
salut..
j'ai une meme application qui marche bien
1. ajouter cette ligne : resultat.next();
après la ligne suivante :
ResultSet resultat = stat.executeQuery("SELECT * FROM fichier");
("resultat.next();"est obligatoire pour ce positionner sur la première ligne de la table).
c'es ca marche pas :
2. changer le chemin pour ta base comme suite :
String url = "jdbc:mysql://localhost/statistiquesdb";
bonne chance.
j'ai une meme application qui marche bien
1. ajouter cette ligne : resultat.next();
après la ligne suivante :
ResultSet resultat = stat.executeQuery("SELECT * FROM fichier");
("resultat.next();"est obligatoire pour ce positionner sur la première ligne de la table).
c'es ca marche pas :
2. changer le chemin pour ta base comme suite :
String url = "jdbc:mysql://localhost/statistiquesdb";
bonne chance.
Petite remarque au passage : c'est une très mauvaise idée de court-circuiter les Exceptions, parce qu'en cas d'erreur il n'y a aucun moyen de savoir ce qui s'est passé. Tu devrais soit faire quelque chose dans le traitement de l'erreur (au minimum un affichage de celle-ci), soit enlever ton try/catch et laisser le throws Exception faire son travail.
Une fois cette modification faite, j'imagine que ton programme va être un peu plus bavard sur le problème, donc indiques nous quelle est l'erreur affichée...
catch (Exception ex) { ex.printStackTrace(); }
Une fois cette modification faite, j'imagine que ton programme va être un peu plus bavard sur le problème, donc indiques nous quelle est l'erreur affichée...
Bonjour à tous,
Si je peux me permettre j'ai utilisé ce code, car dans ma recherche pour une connexion java eclipse >> mysql PHPMyAdmin je suis tombé sur ce forum.
En reprenant le code ci-dessus je retrouve les erreurs suivantes :
Cordialement
Si je peux me permettre j'ai utilisé ce code, car dans ma recherche pour une connexion java eclipse >> mysql PHPMyAdmin je suis tombé sur ce forum.
En reprenant le code ci-dessus je retrouve les erreurs suivantes :
java.lang.ClassNotFoundException: com.mysql.jdbc.DriverPourriez-vous me donner un petit coup de main ou peut-être préfèreriez-vous que j'ouvre une nouvelle conversation pour ce problème ?
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:188)
at pDicoBDD.DicoBDD.main(DicoBDD.java:15)
Cordialement
Bonsoir,
Avant de faire
Avant de faire
Class.forName("com.mysql.jdbc.Driver"), il faut que tu ajoutes le connecteur MySql dans ton projet, sinon il ne connaîtra pas la classe Driver. Tu dois donc télécharger le jar sur https://dev.mysql.com/downloads/connector/j/ puis l'ajouter à ton classpath
Bonsoir,
Merci bien pour ce lien...
Le téléchargement s'est bien passé.
J'ai encore un problème est-ce à cause de l'emplacement ?
Voici le message :
Merci bien pour votre aide
Merci bien pour ce lien...
Le téléchargement s'est bien passé.
J'ai encore un problème est-ce à cause de l'emplacement ?
Voici le message :
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'phpmyadmin/dicobdd'Je suis désoler j'ai encore quelque problème pour déchiffrer les messages d'erreur d'Eclipse...
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.Util.getInstance(Util.java:384)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1052)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4232)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4164)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:926)
at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1748)
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1288)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2506)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2539)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2321)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:832)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:46)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:417)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:344)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:215)
at pDicoBDD.DicoBDD.main(DicoBDD.java:19)
Merci bien pour votre aide
Bonsoir,
Les messages d'erreurs d'exécutions ne sont pas ceux d'Eclipse, mais directement ceux de Java. Eclipse n'affiche ses propres messages que pour les avertissements ou erreurs de compilation (qu'il souligne en jaune ou rouge)
Ici le problème est assez clair, je prends la première et la dernière ligne de la stack trace :
Unknown database 'phpmyadmin/dicobdd' at pDicoBDD.DicoBDD.main(DicoBDD.java:19)
Alors il faudrait regarder ton code, mais dans ta classe DicoBDD, ligne 19, tu configures une base de données "phpmyadmin/dicobdd" qu'il ne connaît pas. Soit parce qu'elle n'existe pas, soit parce que ton serveur n'est pas allumé ou mal configuré, ou tout simplement à cause d'une mauvaise utilisation des méthodes Java pour s'y connecter.
Les messages d'erreurs d'exécutions ne sont pas ceux d'Eclipse, mais directement ceux de Java. Eclipse n'affiche ses propres messages que pour les avertissements ou erreurs de compilation (qu'il souligne en jaune ou rouge)
Ici le problème est assez clair, je prends la première et la dernière ligne de la stack trace :
Unknown database 'phpmyadmin/dicobdd' at pDicoBDD.DicoBDD.main(DicoBDD.java:19)
Alors il faudrait regarder ton code, mais dans ta classe DicoBDD, ligne 19, tu configures une base de données "phpmyadmin/dicobdd" qu'il ne connaît pas. Soit parce qu'elle n'existe pas, soit parce que ton serveur n'est pas allumé ou mal configuré, ou tout simplement à cause d'une mauvaise utilisation des méthodes Java pour s'y connecter.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question