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 :

Impossiblité d'accès à une base de données sous Mysql en java sous Ubuntu


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Par défaut Impossiblité d'accès à une base de données sous Mysql en java sous Ubuntu
    Bonjour.
    Habituellement, je développe en java sous Windows. Ce n'est que récemment que j'ai commencé à développer dans un environnement LINUX, particulièment UBUNTU. J'utilise l'EDI Netbeans 6.5. J'ai créé une base de données sous Mysql à laquelle j'éssaye d'accéder via une classe Java mais j'arrive toujour pas à y accéder. J'ai utilisé dans ma classe java le Driver jdbc.odbc.JdbcOdbcDriver qui semble marcher puisque le message d'erreur auquel je bute sors au niveau de la tentative de connexion à la base de données.Le message d'erreur est : Impossible de se connecter à la base de données. J'ai utilisé comme URL de ma base de données le chemin suivant: jdbc:mysql:3306//personne ou personne est la base de données que j'ai créé au niveau de Mysql.Alors ma question est de savoir si comme sous Windows, on doit créer une source de données sous LINUX et si oui comment le faire pour que je puisse accéder à ma base de données ou bien si c'est autre chose.
    Votre aide me sera d'une grande utilité.
    Merci.

  2. #2
    Membre émérite Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Par défaut
    Salut !

    Tu devrais montrer le code de cette classe de connexion, peut-être que quelqu'un y verra quelque-chose...

    Bonne chance !

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Par défaut Le code java de la classe en question
    Oui bonjour.
    Voilà le code de la classe java en question

    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    import java.sql.*;
    public class TestJDBC {
        private static void affiche(String message) {
      System.out.println(message);
    }
    private static void arret(String message) {
      System.err.println(message);
      System.exit(99);
    }
    public static void main(String[] args){
    Connection con=null;
    ResultSet resultats= null;
    String requete="";
     
    // chargement du pilote
    try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
     
    }catch(ClassNotFoundException e){
      arret("Impossible de charger le pilote jdbc:odbc");}
     
     
    //connection a la base de données
    affiche("connection a la base de donnees");
    try {
    String DBurl = "jdbc:mysql://localhost:3306/personne";
    con=DriverManager.getConnection(DBurl, "root","");
    }catch(SQLException e){
        arret("Connection à la base de donnees impossible");}
     
    //creation et execution de la requête
    affiche("creation et execution de la requête");
    requete = "SELECT * FROM mogo";
     
    try {
      Statement stmt = con.createStatement();
      resultats = stmt.executeQuery(requete);
    } catch (SQLException e) {
      arret("Anomalie lors de l'execution de la requête");
    }
     
    //parcours des données retournees
    affiche("parcours des données retournees");
    try {
      ResultSetMetaData rsmd = resultats.getMetaData();
      int nbCols = rsmd.getColumnCount();
      boolean encore = resultats.next();
      while (encore) {
        for (int i = 1; i <= nbCols; i++)
          System.out.print(resultats.getString(i) + "");
        System.out.println();
        encore = resultats.next();
      }
      resultats.close();
    } catch (SQLException e) {
      arret(e.getMessage());
    }
     
    affiche("fin du programme");
    System.exit(0);
    }
    }

    Merci pour votre aide.
    Cordialement

  4. #4
    Membre émérite Avatar de fraco
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2006
    Messages : 750
    Par défaut
    Le message d'erreur est : Impossible de se connecter à la base de données.
    Ce n'est donc pas le message d'erreur qui est dans ton code...

    }catch(SQLException e){
    arret("Connection à la base de donnees impossible");}
    ça pourrait venir de la base de données ? par ex. tu n'aurais pas les droits suffisants ?

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 276
    Par défaut
    Donne nous la vaie exception, pas ton message d'erreur qui ne nous sert à rien.

    Ensuite, tu n'utilises pas la bonne classe de ton driver: utilise plutôt :

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Octobre 2009
    Messages : 5
    Par défaut Le message
    Quand j'utilise le driver com.mysql.jdbc.Driver là c'est le message Impossible de charger le pilote jdbc. C'est la raison pour laquelle j'ai utilisé l'autre c'est à dire le sun.jdbc.odbc.JdbcOdbcDriver et comme j'ai vu que cela passait c'est pourquoi je l'ai gardé.

    Je vous donne le message en intégralité après l'exécution par Netbeans quand j'utilise com.mysql.jdbc.Driver:

    run:
    Impossible de charger le pilote jdbc:odbc
    Java Result: 99
    BUILD SUCCESSFUL (total time: 0 seconds)

    Le message en intégralité après l'exécution par Netbeans quand j'utilise sun.jdbc.odbc.JdbcOdbcDriver:

    run:
    connection a la base de donnees
    Connection à la base de donnees impossible
    Java Result: 99
    BUILD SUCCESSFUL (total time: 0 seconds)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [C#] Accés à une base de données AS400
    Par Green Hornet dans le forum Accès aux données
    Réponses: 8
    Dernier message: 14/11/2011, 11h26
  2. Réponses: 4
    Dernier message: 15/01/2005, 16h05
  3. Accès à une base de données ACCESS
    Par Invité dans le forum C++Builder
    Réponses: 3
    Dernier message: 07/01/2005, 08h23
  4. [JDBC]acces à une base de données mysql
    Par sehaba dans le forum JDBC
    Réponses: 13
    Dernier message: 07/12/2004, 00h39
  5. Réponses: 2
    Dernier message: 01/10/2004, 15h13

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