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 :

pilote sun.jdbc.odbc.JdbcOdbcDriver introuvable ou erreur de débutant


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Octobre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2014
    Messages : 5
    Par défaut pilote sun.jdbc.odbc.JdbcOdbcDriver introuvable ou erreur de débutant
    Bonjour,

    j'essaye de faire une liaison entre une base donnée access et mon application java via un bridge jdbc odbc.

    Mais ça plante dès cette instruction : Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");


    Je ne trouve pas le driver sun.jdbc.odbc.JdbcOdbcDriver
    En faisant des recherches sur le forum j'ai vu que celui ci devrait se trouver dans le fichier rt.jar mais je le vois pas.

    j'ai beau eu faire des recherches toute la journée je ne comprends pas commment on peut se le procurer et si l'erreur provient vraiment de là.

    - cela peut il provenir de mon fichier de source odbc ? mais est il dejà appellé au moment ou se produit l'erreur ?
    - est ce un mauvais classpath ?
    - est ce dans mon code ???

    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
    private void formWindowOpened(java.awt.event.WindowEvent evt) {                                  
     
              try{
                       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");   // ça plante là
                       // System.out.println("driver ok");
                       cnx = DriverManager.getConnection("jdbc:odbc:thai");
                       st=cnx.createStatement();
     
                       dt = new DefaultTableModel();
                       dt.addColumn("Français");
                      dt.addColumn("Thai");
                      dt.addColumn("Ecriture");
                      dt.addColumn("Grammaire");
                      tblThai.setModel(dt);
                      afficherThai();
                  }catch(Exception e) {
                      JOptionPane.showMessageDialog(null, "erreur de connexion\n"+e.getMessage());
                  }     
        }                                 
     
     
    private void afficherThai(){
     
    try{
        dt.setRowCount(0);
        rs = st.executeQuery("select * From thai");
        while(rs.next()){
            nomF = rs.getString("nomFrancais");
            nomT = rs.getString("thaiPhonetique");
            ecritureT = rs.getString("thaiEcriture");
            gram = rs.getString("grammaire");
            Object[] thai = {nomF,nomT,ecritureT,gram};
            dt.addRow(thai);
        }
     
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, "erreur d'affichage\n"+e.getMessage());
        }
    }
     
     
        //.............///   
     
     
        private Connection cnx;
        private Statement st;
        private ResultSet rs;
        private DefaultTableModel dt;
        private int mat;
        private String nomF, nomT,ecritureT,gram;
        private int i;


    Je sais que c'est vraiment un problème de débutant mais si quelqu'un avait la gentillesse de me donner quelques pistes cela m'aiderait grandement parceque là je nage complètement. merci

  2. #2
    Membre Expert Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Par défaut
    Salut,

    Est-ce que tu utilises Java 8 ? Car si c'est le cas, le driver à été retiré par oracle (lien).

    Par contre n'ayant jamais utilisé Access, je ne sais pas si il y a une autre solution pour pouvoir y accéder (j'imagine que oui). Je laisse donc la parole à d'autre sur ce point.

    Cdt.

  3. #3
    Membre éprouvé Avatar de Satch
    Homme Profil pro
    Hypnothérapeute - Magicien
    Inscrit en
    Mars 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Hypnothérapeute - Magicien

    Informations forums :
    Inscription : Mars 2004
    Messages : 498

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    ucanaccess permet effectivement d'accéder à access en jdbc, mais de manière limitées.

    pas d'access 97
    pas de DDL très évolué
    pas/peu de support pour le multiprocess

    je pense aussi qu'il y a des restrictions sur le tri des tables.

    Si il s'agit d'une base préexistante à interfacer ou lire en one-shoot, c'est accessible, mais j'éviterais de faire un programme qui repose sur une base de donnée access à long terme.

  5. #5
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Octobre 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2014
    Messages : 5
    Par défaut
    Tout d'abord merci à tous pour ces réponses si rapides.

    Effectivement j'utilise JAVA 8.

    Je vais me pencher sur la solution UCanAccess dans un premier temps car je pense que je n'aurai pas de traitements trop compliqués à effectuer pour mon projet.

    Je voudrais développer une application type "labo de langue" qui permette à un professeur d'entrer du vocabulaire en français et en thai et de créer des exercices autour de ce vocabulaire.
    Dans un premier temps ce devrait etre une utilisation monoposte mais pourquoi pas voir plus plus grand si ça fonctionne ?

    je suis ouvert à toute suggestion concernant un meilleur SGBD, ou plus encore existe-t- il une solution java intégrée ?


    merci encore.

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Si tu n'a pas de base de données pré-existante, utiliser access pour débuter un projet c'est un très mauvais choix. C'est une des bases de données les plus mal intégrées en java

    Je te recommande si tu ne veux pas installer de server d'utiliser H2, hsqldb ou derby pour commencer. Il suffit d'intégrer le jar et dans la chaine de connexion jdbc de donnée un nom de fichier, la base de données s'y créera tout de suite.

  7. #7
    Membre Expert Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Par défaut
    Des base de données c'est pas ce qui manque, si tu as la choix de la techno à utiliser alors autant en prendre une qui soit supporté par Java.

    - H2
    - Derby
    - MySQL

    Pour n'en citer qu'elle sont très largement répandu. Avec une préférence pour H2 et Derby sont facilement intégrable dans ton projet.

    Edit: grillé

  8. #8
    Membre éprouvé Avatar de Satch
    Homme Profil pro
    Hypnothérapeute - Magicien
    Inscrit en
    Mars 2004
    Messages
    498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Suisse

    Informations professionnelles :
    Activité : Hypnothérapeute - Magicien

    Informations forums :
    Inscription : Mars 2004
    Messages : 498
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    pas d'access 97
    ça existe encore ce machin ?

  9. #9
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par Satch Voir le message
    ça existe encore ce machin ?
    Quand on doit s'interfacer avec access, en général, c'est une vieille base moisie, donc c'est un risque, oui

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 08/07/2014, 10h55
  2. Emplacement du driver sun.jdbc.odbc.JdbcOdbcDriver
    Par new_wave dans le forum Débuter
    Réponses: 3
    Dernier message: 11/06/2012, 13h28
  3. Problème Driver sun.jdbc.odbc.JdbcOdbcDriver sous Linux
    Par matthieu.parid dans le forum JDBC
    Réponses: 9
    Dernier message: 08/01/2012, 03h40
  4. Réponses: 1
    Dernier message: 06/12/2006, 14h55
  5. [Jdbc Odbc][Applet]Message d'erreur
    Par Jean Claude90 dans le forum JDBC
    Réponses: 4
    Dernier message: 31/10/2005, 09h51

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