Connexion MySQL en JAVA

penellope Messages postés 73 Statut Membre -  
 Net4ever -
Bonjour
j'ai besoin de me connecter a une base MySQL en java mais je sais pas comment faire j'ai telecharcger le driver mm.mysql mais je n'arrive pas a me connecter

42 réponses

  • 1
  • 2
  • 3
Résumé de la discussion

Connexion à une base MySQL en Java et difficultés liées au chargement du driver JDBC sont au cœur des échanges, certains utilisateurs évoquant des erreurs de classpath. Des réponses suggèrent des ressources pratiques, comme un tutoriel de connexion MySQL via Java, des conseils sur le chemin d'accès au driver et des exemples de configuration. En cas de souci, certains points reviennent, notamment la syntaxe du classpath, l'emplacement du driver dans le système et l'utilisation d'exemples de code JDBC. D'autres interventions touchent des aspects pratiques comme le port de connexion, la primauté des pilotes compatibles et des précautions lors de l'importation des bibliothèques.

Généré automatiquement par IA
sur la base des meilleures réponses
  1. Net4ever
     
    Bonjour,
    voilà un tutoriel très simple pour faire une connexion Mysql en Java

    http://www.javamafia.com/langage-java-j2ee/tutoriels/54-tuto-connexion-mysql-via-java.html

    Bonne Chance :)
    7
  2. penellope Messages postés 73 Statut Membre 1
     
    a tout hasard la syntaxe du class path c'est bien chemin de ton source;chemin du drivers ?
    1
  3. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    il me semble, voici un exemple d'un exercice

    package exercicesjdbc;
    

    import java.sql.*;

    public class GestionCafe {

    final String myBridge = "sun.jdbc.odbc.JdbcOdbcDriver";
    private static Connection con;
    private Statement sta;

    public GestionCafe()throws ClassNotFoundException,SQLException {
    doConnection();
    }

    private void doConnection()throws ClassNotFoundException,SQLException{

    Class.forName(myBridge);
    con = DriverManager.getConnection("jdbc:odbc:COFFEEBREAKDB","","");
    sta = con.createStatement();
    }

    public void createTables() throws SQLException{

    int sales = sta.executeUpdate("CREATE TABLE Sales (cof_id INTEGER, sup_id INTEGER, price INTEGER, amount INTEGER)");
    int suppl = sta.executeUpdate("CREATE TABLE Suppliers(sup_id INTEGER, sup_name VARCHAR(50), street VARCHAR(50), city VARCHAR(20), state VARCHAR(2),zip INTEGER)");
    int coffees = sta.executeUpdate("CREATE TABLE DataCoffees(cof_id INTEGER, cof_name VARCHAR(20))");
    int invent = sta.executeUpdate("CREATE TABLE DataInventory(cof_id INTEGER,amount INTEGER)");
    }

    public void fillSales()throws SQLException{

    int set1 = sta.executeUpdate("INSERT INTO Sales VALUES(1,101,8,20)");
    int set2 = sta.executeUpdate("INSERT INTO Sales VALUES(2,49,9,10)");
    int set3 = sta.executeUpdate("INSERT INTO Sales VALUES(3,150,10,5)");
    int set4 = sta.executeUpdate("INSERT INTO Sales VALUES(4,101,9,40)");
    int set5 = sta.executeUpdate("INSERT INTO Sales VALUES(5,49,10,20)");
    }
    public void fillSuppliers()throws SQLException{

    int set1 = sta.executeUpdate("INSERT INTO Suppliers VALUES(101,'Acme,inc','99 Market Street','Groundsville','CA',95199)");
    int set2 = sta.executeUpdate("INSERT INTO Suppliers VALUES(49,'Superior Coffee','1 Party Place','Mendocino','CA',95460)");
    int set3 = sta.executeUpdate("INSERT INTO Suppliers VALUES(150,'The High Ground','100 Coffee Lane','Meadows','CA',93966)");
    }

    public void fillCoffees()throws SQLException{

    int set1 = sta.executeUpdate("INSERT INTO DataCoffees VALUES(1,'Colombian')");
    int set2 = sta.executeUpdate("INSERT INTO DataCoffees VALUES(2,'French_Roast')");
    int set3 = sta.executeUpdate("INSERT INTO DataCoffees VALUES(3,'Espresso')");
    int set4 = sta.executeUpdate("INSERT INTO DataCoffees VALUES(4,'Colombian_Decaf')");
    int set5 = sta.executeUpdate("INSERT INTO DataCoffees VALUES(5,'French_Roast_Decaf')");
    }
    public void fillInventory()throws SQLException{

    int set1 = sta.executeUpdate("INSERT INTO DataInventory VALUES(1,100)");
    int set2 = sta.executeUpdate("INSERT INTO DataInventory VALUES(2,300)");
    int set3 = sta.executeUpdate("INSERT INTO DataInventory VALUES(3,250)");
    int set4 = sta.executeUpdate("INSERT INTO DataInventory VALUES(4,500)");
    int set5 = sta.executeUpdate("INSERT INTO DataInventory VALUES(5,750)");
    }
    public void consultTableSales()throws SQLException{

    ResultSet query = sta.executeQuery("SELECT cof_id,sup_id,price FROM Sales WHERE cof_id=3 OR cof_id=5");
    while(query.next()){
    System.out.println( query.getInt(1)+", "+query.getInt(2)+", "+query.getInt(3));
    }
    }

    public static void main (String args[]) {

    try{
    GestionCafe gc = new GestionCafe();
    //gc.createTables();
    //gc.fillSales();
    //gc.fillSuppliers();
    //gc.fillCoffees();
    //gc.fillInventory();
    gc.consultTableSales();
    con.close();
    }
    catch(ClassNotFoundException ce){

    System.out.println("Class not found exception "+ ce.getMessage());
    }
    catch(SQLException se){

    System.out.println("SQL Exception occured "+ se.getMessage());
    System.out.println("SQL Exception occured "+ se.getSQLState());
    }
    }
    }


    Chouba
    Casque Bleu forumique
    1
  4. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    salut

    peux tu montrer la manière dont tu t'y prends ???

    Chouba
    Casque Bleu forumique
    0
    1. penellope Messages postés 73 Statut Membre 1
       
      Voila la maniere dont je m'y prend je pense que le probleme viens de cette ligne: ConnAccess=DriverManager.getConnection("jdbc:odbc:BD1");
      J'ai copier le drivers dans mon environnement de travail et j'ai creer le class path(correctement je pense)
      Mais je sais pas comment faire pour jdbc





      import java.sql.*;
      import java.util.*;
      import java.sql.Connection;
      import java.sql.DriverManager;



      public class Connect {


      public static Connection Conn;
      public static int Choix;

      public static void afficherDrivers()
      {
      //affichage de la liste des drivers charges
      Enumeration drivers=DriverManager.getDrivers();
      System.out.println("Liste des drivers charges");
      while(drivers.hasMoreElements())
      {
      System.out.println(drivers.nextElement());
      }
      }
      /*----------------------------------------------------
      Cette methode permet de charger le driver necessaire
      pour acceder a la base de donnée MySQL
      ----------------------------------------------------*/

      public static void ChargerDriver()
      {
      //chargement du driver
      try
      {
      Class.forName("org.gjt.mm.mysql.Driver");
      }
      catch(ClassNotFoundException e)
      {
      System.out.println("erreur: "+e);
      }
      }
      /*----------------------------------------------------
      Cette methode nous permet de nous connecter
      a la base de donnée
      ----------------------------------------------------*/
      public static Connection ConnexionBase()
      {
      try
      {//Connection ConnAccess=DriverManager.getConnection("jdbc:odbc:BD1");
      Conn=DriverManager.getConnection("jdbc:odbc:xindoc");
      System.out.println("Connection MySQL effectuee\n\n\n");
      Conn.setAutoCommit(false);
      Conn.close();
      }
      catch(SQLException e)
      {
      System.out.println("erreur ConnexionBase"+e);
      }
      return Conn;
      }

      }

      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    salut

    as tu enregistré ta base de données dans les sources de données odbc de ton système d'exploitation?

    Chouba
    Casque Bleu forumique
    0
  7. penellope Messages postés 73 Statut Membre 1
     
    Ben en fait c'est ca mon probleme je ne sais pas comment fair e
    0
  8. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    re

    quel système d'exploitation?? W2k?

    Chouba
    Casque Bleu forumique
    0
  9. penellope Messages postés 73 Statut Membre 1
     
    oui c'est bien ca w2k
    0
  10. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    bon...

    Démarrer/Paramètres/Panneau de Configuration/Outils d'administration/Sources de données (ODBC)

    tu vas dans l'onglet "sources de données fichier"

    tu cliques sur ajouter, tu sélectionnes le pilote à associer, ensuite tu sélectionne ta bd. Tu auras un écran de confirmation, puis un écran de configuration ou tu devras de nouveau sélectionner la base et puis voilà

    8)

    Chouba
    Casque Bleu forumique
    0
  11. penellope Messages postés 73 Statut Membre 1
     
    oui ca je l'ai fait mais quand je compile mon code ca ne marche pas
    j'ai selectionner ma base etc....
    mais j'ai cette erreur

    Liste des drivers charges
    erreur: java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
    Liste des drivers charges
    erreur ConnexionBasejava.sql.SQLException: No suitable driver
    0
  12. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    salut

    essaye ça

    ConnAccess=DriverManager.getConnection("jdbc:odbc:BD1","",""); 
    


    Chouba
    Casque Bleu forumique
    0
  13. penellope Messages postés 73 Statut Membre 1
     
    j'ai essayer mais ca ne marche pas
    aurais tu une autre suggestion?
    0
  14. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    je cherche, je cherche

    Chouba
    Casque Bleu forumique
    0
  15. penellope Messages postés 73 Statut Membre 1
     
    j'ai un exemple du mem type (mais moin long)
    mais je ne pense pas que ce resolve le probleme de Mysql
    0
  16. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    non, désolé 8(((

    Chouba
    Casque Bleu forumique
    0
  17. penellope Messages postés 73 Statut Membre 1
     
    tu as lu mon mesage concernant le classpath ?
    0
  18. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    de quel class path tu veux parler?

    Chouba
    Casque Bleu forumique
    0
  19. penellope Messages postés 73 Statut Membre 1
     
    du classpath que tu saisi quand tu fait un clic droit sur poste de travail puis tu vas sur l'onglet avancee puis variable d'environnement
    0
  20. choubaka Messages postés 5534 Date d'inscription   Statut Modérateur Dernière intervention   2 113
     
    perso, je n'utilise pas les variables d'environnement pour ce genre d'opération.

    Chouba
    Casque Bleu forumique
    0
  21. penellope Messages postés 73 Statut Membre 1
     
    comment tu fait alors?
    si tu as une suggestion je suis preneuse
    0
  • 1
  • 2
  • 3