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 :

Requête qui fonctionne sous Access mais pas JDBC


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2005
    Messages : 65
    Points : 37
    Points
    37
    Par défaut Requête qui fonctionne sous Access mais pas JDBC
    Bonjour à tous,

    J'ai une erreur assez bizarre.
    Ma classe Java fait exécute des requêtes sur une petite base Access.
    Une des requêtes renvoit 1 résultat mais "null". Si je la tape directement dans Access, elle marche correctement. J'en conclu que les drivers JDBC ne supporte pas un truc...
    Je précise que les autres requêtes marchent. Mais pas celle là...

    Voilà le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ResultSet rs = sql.exe("SELECT MAX(refClient) as ref FROM CLIENTS WHERE refClient LIKE '" + client + "*'");
    rs.next();
    System.out.println(rs.getString(1));
    //idem avec System.out.println(rs.getString("ref"));
    J'ai un joli "null" qui s'affiche.

    Si j'essaye de supprimer le MAX en tapant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "SELECT RefClient as ref FROM CLIENTS WHERE RefClient LIKE 'A*'"
    J'ai un joli message "java.sql.SQLException: [Microsoft][Gestionnaire de pilotes ODBC] État de curseur non valide.

    Par contre un simple "SELECT RefClient FROM CLIENTS" fonctionne sans problème.
    J'en conclu que je dois foirer quelque part


    edit: voilà le code de la fonction "exe" appelé lors de l'exécution de la requête.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        //Effectue une requête
        protected ResultSet exe(String req) throws ExceptionSQLNoResult, ExceptionSQLConnexion {
            try {
                if(!stmt.execute(req)) throw new ExceptionSQLNoResult();
                return stmt.getResultSet();
            } catch (SQLException s) {
                throw new ExceptionSQLConnexion();
            } 
        }

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Points : 386
    Points
    386
    Par défaut
    Vérifies que le LIKE 'A*' est valide sous JDBC.

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/07/2010, 17h15
  2. Réponses: 1
    Dernier message: 18/11/2009, 13h28
  3. Réponses: 5
    Dernier message: 13/04/2009, 23h12
  4. Script qui fonctionne sous FireFox mais pas sous IE
    Par Sebastien14 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 27/01/2009, 10h32
  5. Réponses: 2
    Dernier message: 04/06/2004, 11h11

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