Partage
  • Partager sur Facebook
  • Partager sur Twitter

connextion base de donnée MYSQL

probleme avec pilote jdbc

    20 janvier 2007 à 17:15:32

    salut
    je veux développer une application client-serveur en utilisant la base de données Mysql avec JBuilder
    j'ai téléchargé pilote mysql-connector-java-3.0.17-jar puis je l'ai ajouté dans la bibiotheque de mon projet ,et j'ai une base de donnée nommé mabase qui se trouve dans le fichier test dans mysql serveur 5
    mais je n'arrive pas a connceté a ma base de donnée voici le code :
    package exem;


    // librairie pour utiliser les classes pour la base de données
    import java.sql.*;

    public class Exemple
    {
            public static void main(String argv[])
            {
                    BaseDeDonnee basededonnee = new BaseDeDonnee();
            }
    }

    class BaseDeDonnee
    {
            Connection connection = null;

            public BaseDeDonnee()
            {
                    connexion();
                    affichage();
            }

            // Connexion à la base de donnees
            public void connexion ()
            {
                    try
            {
                            // Chargement des drivers SQL
                            Class.forName ("org.gjt.mm.mysql.Driver").newInstance();
                    }
                    catch (ClassNotFoundException a)
                    {
                            System.out.println ("Driver non trouve");
                    }
                    catch (Exception b)
                    {     
                            System.out.println ("Problème sur chargement de driver JDBC");     
                    }

                    try
            {              
                            // Etablissement de la connexion avec la base
                            connection = DriverManager.getConnection ("jdbc:mysql://localhost/Table/", "root", "");
                    }
                    catch (SQLException c)
                    {       
                            System.out.println ("Connexion refuse ou base inconnu");
                    }
                    catch (Exception d)
                    {
                            System.out.println ("Problème sur connexion");   
                    }
            }
            public void affichage()
            {
                    ResultSet rs   = null;

                    try
                    {
                            // Exécution des requêtes
                            Statement stmt = connection.createStatement();
                            String requete = null;

                            requete = "SELECT Nom, Prenom, Adresse From personne";

                            rs = stmt.executeQuery(requete);

                            System.out.println("");

                            while (rs.next())
                            {
                                    // Affichage les resultats de la requete SQL
                                    System.out.println("Nom : "+rs.getString(1));
                                    System.out.println("Prenom : "+rs.getString(2));
                                    System.out.println("Adresse : "+rs.getString(3));
                                    System.out.println("");
                            }
                    }
                    catch (Exception d)
                    {
                            System.out.println ("Problème la requete");          
                    }
            }
            public void fin_connexion()
            {
                    try
                    {
                            // Fermeture de la connexion
                            connection.close();
                    }
                    catch (Exception d)
                    {
                            System.out.println ("Problème sur la fermeture de connexion")
                    }
            }
    }


    j'ai un message :driver non connu
    connexion refuse ou base inconnu
    probleme la requete

    merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      20 janvier 2007 à 17:40:19

      moi j'ai une classe qui à le meme objectif que la tienne


      import java.sql.Connection;
      import java.sql.DriverManager;
      import java.sql.SQLException;

      import com.mysql.jdbc.ResultSet;
      import com.mysql.jdbc.Statement;

      /**
       * implémentation finie
       * @author mythrys
       *
       */

      public class DataBaseImpl {
              private String serveur;
              private String user;
              private String mdp;
              private String base;
              private boolean ok;
              private Connection conn;
              private Statement st;
             
              //1: remplit de vide le tout
              //2: on indique que les paramètres ne sont pas initialiser
              public DataBaseImpl() {
                      this.serveur = "";
                      this.user = "";
                      this.base = "";
                      this.mdp = "";
                      this.ok = false;
              }
             
              //1: vérifie que les paramètres sont initialiser
              //2: définit l'url en fonction des paramètres
              //3 on ouvre la connection et on renvoie les exceptions si il y en a
              public void open() throws DataBaseException {
                      //1
                      if(!ok)
                              throw new DataBaseException("paramètre non initialiser");
                     
                      //2
                      String url = "jdbc:mysql://" + serveur + "/" + base + "?user=" + user + "&password=" + mdp;
                      //3
                      try {
                              Class.forName("com.mysql.jdbc.Driver").newInstance();
                              conn = DriverManager.getConnection(url);
                              st = (Statement) conn.createStatement();
                      }       
                      catch(SQLException e) {
                              throw new DataBaseException(e);
                      }
                      catch(InstantiationException e) {
                              e.printStackTrace(System.err);
                              throw new DataBaseException(e.getMessage());
                             
                      }
                      catch(IllegalAccessException e) {
                              e.printStackTrace(System.err);
                              throw new DataBaseException(e.getMessage());
                      }
                      catch(ClassNotFoundException e) {
                              e.printStackTrace(System.err);
                              throw new DataBaseException(e.getMessage());
                      }
                     
              }
             
              //1: vérifie que les paramètres sont initialiser
              //2: ferme la connection ou renvoie une exception
              public void close() throws DataBaseException {
                      //1
                      if(!ok)
                              throw new DataBaseException("paramètre non initialiser");
                     
                      //2
                      try {
                              conn.close();
                      }
                      catch(SQLException e) {
                              throw new DataBaseException(e);
                      }
              }
             
              //1: vérifie que les paramètres sont initialiser
              //2: vérifie que la requete n'est pas nulle
              //3: on exécute la requete et on renvoie une exception si il y a eu un problème
              public ResultSet query(String requete) throws DataBaseException {
                      //1
                      if(!ok)
                              throw new DataBaseException("paramètre non initialiser");
                     
                      //2
                      if(requete == null)
                              return null;
                      //3
                      try {
                              return (ResultSet) st.executeQuery(requete);
                      }
                      catch(SQLException e) {
                              throw new DataBaseException(e);
                      }
                     
                     
              }
             
              //1: définir les paramètres
              //2: signaler que les paramètres sont initialiser
              public void setParametre(String serveur, String user, String mdp, String base) {
                      //1
                      this.serveur = serveur;
                      this.user = user;
                      this.base = base;
                      this.mdp = mdp;
                      //2
                      this.ok = true;
                     
              }
             
              /**
               * exécute une requete sql qui ne demande pas de retour de résultat
               * @param requete la requete à exécuter non null et en conformité avec la syntaxe sql
               * @throws SQLException
               */

              public void execute(String requete) throws DataBaseException {
                      //test des variable
                      if(requete == null)
                              return;
                      try {
                              st.execute(requete);
                      }
                      catch(SQLException e) {
                              throw new DataBaseException(e);
                      }
              }
      }




      et le nom du driver est pas le meme

      essaye celui ci
      com.mysql.jdbc.Driver
      • Partager sur Facebook
      • Partager sur Twitter
        20 janvier 2007 à 18:58:56

        merci mais je coince j'ai telechargé le fichier mysql-connector-java-5.0.4 sur mon pc et j'ai essayé de l'ajoué sur la libray mysql-connector-java-5.0.4-bin.jar
        mais j'ai toujours des erreurs comme :
        package com.mysql.JDBC not exist at ligne 7
        package com.mysql.JDBC not exist at ligne 8
        cannot resolve symbol:classstatement in class exem.data base Implat ligne 22
        • Partager sur Facebook
        • Partager sur Twitter
          20 janvier 2007 à 19:40:45

          jdbc doit être en minuscule
          parce la dans ton erreur=> c'est en majuscule
          • Partager sur Facebook
          • Partager sur Twitter
            20 janvier 2007 à 22:14:32

            désolé je coince encore j'aimerais bien que vous m'aidez pour m'avancer
            je passe es heures devant mon pc mais rien de spécial
            j'ai toujours les memes erreurs essayez de m'expliquer étapes par étapes
            merci
            • Partager sur Facebook
            • Partager sur Twitter
              22 janvier 2007 à 16:52:54

              please

              j'ai un message <Cannot connect to server>

              voici les cordonnées /

              Connection conn = null;
              String url = "jdbc:mysql://localhost/test";
              String userName = "root";
              String password = "198215";
              Class.forName ("jdbc").newInstance ( ); ????





              comment je peux modifier CLASSPATH de façon à ce que mon package soit reconnu

              • Partager sur Facebook
              • Partager sur Twitter

              connextion base de donnée MYSQL

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown