Connection a Mysql via java

Résolu
Salut les gens,

Je commence en java alors soyez gentils plzzzzz :-)

J'essai de me connecter a ma base de donner Mysql en passant par un programme en java développé sous eclipse dont voici le code :


import java.sql.*;

class affichage{

public static void main(String[] args){

	String pilote = "com.mysql.jdbc.Driver";

	try{
		Class.forName(pilote);
 
		Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/test","root","pass");
 
		Statement instruction = connexion.createStatement();
 
		ResultSet resultat = instruction.executeQuery("SELECT * FROM ANNONCE");
		while(resultat.next()){

			
			System.out.println("---------------------------");
			System.out.println("N° ID_ANNONCE: "+resultat.getInt("ID_ANNONCE"));
			System.out.println("N° ID_MODELE: "+resultat.getInt("ID_MODELE"));
			System.out.println("Descriptif: "+resultat.getString("DESCRIPTIF"));

		}
	}
	catch (Exception e){

		System.out.println("echec pilote : "+e);
	}

	}
}



Il me semble avoir bien placer mes pilote mysql mais je suis pas sur ( je les ais mis la où il y a mon code java).

Et voici ce que cela m'affiche :
echec pilote : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

Auriez-vous une solution a me proposé siouplé.

28 réponses

Résumé de la discussion

Le problème central est l'échec du chargement du pilote MySQL dans un programme Java utilisant JDBC, visible par l'erreur java.lang.ClassNotFoundException: com.mysql.jdbc.Driver lorsque la connexion est tentée. Des réponses recommandent de télécharger le connecteur JDBC de MySQL et d'ajouter le fichier jar au chemin du projet, par exemple dans Eclipse via Propriétés > Java Build Path. En cas de version plus récente, le nom de la classe pilote peut être com.mysql.cj.jdbc.Driver et la chaîne de connexion doit refléter le nom de la base et le port correct, par exemple jdbc:mysql://localhost:3306/base. Autre nuance utile, certains retours indiquent qu'un conflit entre anciens et nouveaux jars peut bloquer le chargement et qu'il faut nettoyer les anciennes versions du classpath pour stabiliser la connexion.

Bobot (l’IA à votre service)
  1. Hello,

    Télécharge le Jar du JDBC de Mysql sur le site officiel (merci google).

    Il faut ajouter le jar du JDBC dans le path du projet.
    Sous Eclipse > Clic droit sur ton projet > Properties > Java Build Path > Onglet Libraries > Bouton Add External Jar ou Add Jar en fonction de la localisation du jar.
    Avec ça, ça devrait fonctionner.

    Bon courage
    1. merci pour ton aide l'ajout du jar dans la bibliothèque à résolu mon problème.bye
    2. bonjour tout le monde,
      je suis débutante avec la programmation en Jade sous eclipse , je cherche comment connecté ma base MYSQL avec le JADE qlq peut m'aider????
    3. et avec JGraps comment fait-on stp, pour utiliser ses bases de données dan le code java?
    4. j'ai des problèmes avec la connexion a la base et voila le code

      package projet;

      import java.beans.Statement;
      import java.sql.Connection;
      import java.sql.DriverManager;
      import java.sql.ResultSet;
      import java.sql.SQLException;

      public class menu {

      /**
      * @param args
      */
      public static void main(String[] args) {
      // TODO Auto-generated method stub

      try
      {
      Class.forName("com.mysql.jdbc.Driver");
      String url = "jdbc:odbc:C:/Users/hamdi/AppData/Local/Temp/QUERY.LOG";
      Connection conn = DriverManager.getConnection("jdbc:mysql://localhost/Hamdi" +
      "user=root"+"password=''");

      Statement stat = conn.createStatement();

      String query = "insert into tableau values hassen ,90,1";

      ResultSet resultat = stat.executeQuery(query);

      while(resultat.next()){

      System.out.println("---------------------------");
      System.out.println(""+resultat.getInt("age"));
      System.out.println(""+resultat.getString("nom"));
      System.out.println(""+resultat.getInt("id"));
      }

      } catch(Exception ex)
      {
      System.out.println(ex.getMessage());

      }
      }}
    5. tu l'as pas compilé ton code
  2. Eclipse IDE for Java Developers
    Version: Indigo Service Release 1

    En regardant vos exemples
    Sous eclises dans "Propriétés" du projet
    Chemin de compilation Java
    Bibliothèques
    j'ai ajouter une premier fois le zip.

    j'ai supprimer tous les éléments et j'ai décompressé le zip mysql-connector-java-5.1.18-bin.zip
    J'ai donc ajouter la deuxième fois le mysql-connector-java-5.1.18-bin.jar.

    + les

    dans le deux cas : je reçois l'erreur

    [Ljava.lang.StackTraceElement;@79414306
    Acces à la base impossible: java.lang.NullPointerException

    le code

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    // Notice, do not import com.mysql.jdbc.*
    // or you will have problems!
    import java.sql.Statement;

    public class LoadDriver {
    public static void main(String[] args) {

    Connection laConnection; // Identifiant de la connection
    Statement transmission = null; // Permet l'interconnection
    ResultSet leResultat; // extraction des données de la requête

    try {
    // The newInstance() call is a work around for some
    // broken Java implementations
    System.out.println("Acces à la base");
    Class.forName("com.mysql.jdbc.Driver").newInstance();

    laConnection = DriverManager.getConnection(
    "jdbc:mysql://localhost/rift", "root", "");
    leResultat = transmission
    .executeQuery("SELECT * FROM competence");

    } catch (Exception ex) {
    // handle the error
    System.out.println(ex.getStackTrace());
    System.out.println("Acces à la base impossible: " + ex);
    }
    }
    }
    1. salut
      tu doit télécharger mysql-connector version 5 :voila le site https://dev.mysql.com/downloads/connector/odbc/5.0.html
      et tu doit le décompressé .dans la décompression tu trouvera un fichier.jar vous le copiez par suite le coller dans un dossier (crée un dossier dans votre projet éclipse avec le nom lib ) et coller le fichier .jar
      :)
      1. merci bcp ,ca ma aider a resoudre mon problem
    2. salut
      tu ajoute le mysql-connector.jar aux programme file/java/jre/lib

      tu ajoute les librairies mysql connector en cliquant sur le projet ajout librairies
      1. slt,moi aussi j'ai recontré se problem, et enfin j trouvé la solution. tu besoin d'un fichier qui s'appel "Mysql.jar"(bibliotheque) et ajouter leur chemin ds votre fichier Classpath.
        1. salem; je crois que vous n'avez pas placer le fichier .jar dans le bon emplacement. sous éclipse: votre projet -> propriétes->java build path->librairie->ajout extrenal->add external parh
          1. salut,
            tu doit ajouter le jar : mysql-connector
            et tu auras le resultat de ton code
            bon courage
            1. je pence que tu n as pas de connection avec MYSQL database
              le driver mysql jdbc est downloaded????
              verifier le passwoord du MYSQL
              il doit etre le meme dans le le code
              merci
              1. 3assssssssssssssbq
            2. pour me connecter à mysql j'ai telecharger "mysql-connector-java-5.0.8.tar.gz" dans mon bureau
              mais je ne sais rien faire avec:ou dois je le mettre,comment l'ajouter à la bibliothek de mon projet!
              jai fais toutes les instructions que vous avez dit mais j'ai toujours le meme probleme probleme:

              Sous Eclipse > Clic droit sur ton projet > Properties > Java Build Path > Onglet Libraries > Bouton Add External Jar ou Add Jar en fonction de la localisation du jar:
              je ne sé pa ou trouver le jar .
              lorske je clik sur Add External jar keske je doi selectionner ??????
              c'est urgent !!
              merci d'avance les experts!!
              1. Bonjour

                Je pense que vous devez installer le driver "mysql connector.jar" et le ajouter a l'application

                comme ca: rightmouse click on the project
                choose properties
                choose Library
                add le driver mysql

                je pense que ca marche

                merci
                1. salut
                  jai fais toutes les instructions que vous avez dit mais j'ai toujours le probleme "driver not found"
                  ca fait troi jours que je suis la dessus et j'ai vraiment pas de temps
                  j'utilise eclipse, mysql connector 5.1.7
                  alors est ce que vous pouvez me dire exactement ou je dois mettre mon connector ou bien n'importe quoi qui pourrai m'aider
                  merci d'avance
                2. @astrocybernautebonjour
                  driver not found" cela veut dir que tu n as pas de coonection
                  essayer un autre driver jdbc
                  en tous ca tu dois l`ajouter a la librairy du projet
                  I had this problem but I solved inside Netbeans
                  the name of you project is red now?
                  can write the exception that you get?
                3. @hamidjustement je crois avoir fais la conexion correctement mais jai ourtant cette erreur alors peut etre que je me tompe quelquepart
                  je l'ai deja ajouté a la librairie de mon projet, je traville sur eclipse et jarrive a voir mon conector dans le menu à gauche
                  et non je n'ai pas une erreur en rouge dans mon projet
                  j'avais crée mon propre post pour poser ma question et jy ai ajouté tout mon code si tu veux le voir :
                  http://www.commentcamarche.net/forum/affich 12601971 probleme driver mysql non trouve java?#dernier

                  thanks you
              2. je veux savoir comment configurer eclipse3.2 pour utiliser les bases de données,
                et qu'est ce qu'il faut télécharger?
                j'ai un projet à rendre dans 15jours
                svp c trés urgent
                1. exuse mon Français!!
                  ton java ne reconné pas le chemin ou le Driver Mysql se trouve alors il faut le rajouter dans ton CLASSPATH
                  avec quel IDE java tu travail comme ça je vais t'aider a le rajouter ton ta CLASSPATH (netbeans ou eclipse ou kawa....)
                  1. hello salut tt le monde
                    je suis un débutant et je n'arrive pas à établir la connexion entre mysql jdbc et mon base des données c-à-d j'ai déja une BD mysql et eclipse et je telecharger le driver jdbc connector mais je sais cment faire le lien et c'est pour mon projet donc please vos solutions j'attent bientot ok a+
                    1. Salut,
                      je viens de suivre ce tuto est ca marche nickel. Merci à tous.
                      Sauf qu'il faut utiliser le "Connector/J 5.0" donc le premier lien proposé et c'est bon !!
                      En tout cas, si besoin d'aide on est la. ++
                    2. @iboumizabonjour,
                      j'ai suivi de même les étapes, sauf que... ca ne marche pas, une erreur étrange :
                      à priori, après débugage c'est sur la ligne "Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost:3036/mailBox","login", "passe");

                      l'erreur est : "com.mysql.jdbc.exceptions.MySQLSyntaxErrorException : you have an error in your SQL syntax : check the manual that correspond to your MySQL server version for right syntax to use near '?????????????????' at line 1

                      si j'écrit à la place : Connection connexion = DriverManager.getConnection("jdbc:mysql:mailBox","login", "passe");

                      j'obtient : java.sql.SQLException : No driver found for jdbc:mysql:mailBox

                      quelqu'un a une idée? merci d'avance
                  2. salut
                    j`ai un probleem, je veux connecter java avec Mysql maid dans le paquette WAMP est ce que c`est possible de faire ca. je utilise le mysql de wamp
                    merci
                    1. slt hamid,
                      j'ai le même problème que toi ,est ce que c'est possible ,et est ce que ça a marché pour toi ?
                      Merci
                  3. Au secours...
                    J'ai un gros problème en ce qui concerne l'accés à la base de donnée... J'ai tout d'abord eut une erreur lang (detecté grace a un catch) que j'ai réussi a régler je ne sais pas comment (en essayant de suivre tout ce qui se disait sur tout les forum...mas ca reste flou pour moi) apparament, il ne trouvait pas mon driver.
                    Puis j'ai eu l'erreur "bad handshake"... En trouvant des info par-ci par là, il m'a semblé que la version du driver n'était pas la bonne, j'ai donc voulu changé... Enfin bref, maintenant, j'arrive même plus a me remettre en configuration qui marche. Est ce que quelqu'un aurait une méthode claire avec où mettre quels fichiers et quoi mettre dans le code?

                    Pour ma part, je programme avec NotePad++, MySQL 5.0, j2sdk1.4.2_13.
                    Je sais, c'est un peu rétrograde comme manière de faire, mais c'est ce qu'on nous demande en cours...
                    1. De rien,
                      a+
                      1. bonjour ,
                        Pour me connecter à mysql via java j'ai telecharger "mysql-connector-java-5.0.8.tar.gz" dans mon bureau
                        mais je ne sais rien faire avec:ou dois je le mettre,comment l'ajouter à la bibliothek de mon projet!
                        jai fais toutes les instructions que vous avez dit mais j'ai toujours le meme probleme probleme:

                        Sous Eclipse > Clic droit sur ton projet > Properties > Java Build Path > Onglet Libraries > Bouton Add External Jar ou Add Jar en fonction de la localisation du jar:
                        je ne sé pa ou trouver le jar .
                        lorske je clik sur Add External jar keske je doi selectionner ??????
                        c'est urgent !!
                        merci d'avance monsieur!!
                    2. YOUHOU CA MARCHE!!!!!!!!!!!

                      En fait le probleme venai du fait que j'avai deja installer un jar dans mon dossier mais il devai mal fonctionner et qd j'ai rajouter le tien jai oublier de virer le mien, ce que je vien de voir ^^

                      Alors j'ai virer le mien, enlever le "/ " apres le nom de ma base ( je croiyai qu'il en fallai un pour finir le chemin mais il m'affichai "nom de base incorrect") et voila ca fonctionne.

                      Bon bah merci du coup de main ca m'a bien dépanner, ca fesai un moment que je galèrai la dessus ^^.

                      Voila @++ et merci encore.
                      • 1
                      • 2