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 :

Qui me corrige cette erreur !


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Par défaut Qui me corrige cette erreur !
    Bonjour,

    je suis entrain de chercher un candidat dans une base de donnée (mysql), j'ai utilisé jTextField, et j'ai écris cette requête:

    String req= "select *from user where Prenom LIKE '"+jTextField5.getText()+"%' OR Numinscri='"+Integer.parseInt(jTextField5.getText())+"''";

    aprés le runM s'affiche un erreur : Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: "b"

    et si je supprime cette continue " OR Numinscri='"+Integer.parseInt(jTextField5.getText())+"' " de la requete ,ça marche bien !!
    qui peut m'aider !

    Cordialement ..

  2. #2
    Membre émérite Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Par défaut
    Bonjour,
    visiblement tu utilises le même champ texte pour saisir soit un prénom, soit un identifiant numérique.
    Or tu vas systématiquement essayer de traiter ton champ comme un entier puisque cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String req= "select *from user where Prenom LIKE '"+jTextField5.getText()+"%' OR Numinscri='"+Integer.parseInt(jTextField5.getText())+"''";
    Va forcément faire le "parseInt", qui plante quand tu tapes "b" dans le champ texte.

    Une solution rapide serait de tester si le JTextField est un nombre ou non avant de faire ta requête en fonction.
    Cependant la solution la plus propre me semble être d'utiliser un autre JTextField pour saisir l'identifiant.

  3. #3
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Par défaut
    merci pour le réponse,

    if(Integer.isInt(jTextField5.getText())){... !!

    j'ai pas sur est ce que cette écriture vraix ou non !

    tu peut m'aider !

    Cordialement

  4. #4
    Membre émérite Avatar de Jidefix
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    742
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 742
    Par défaut
    Il n'existe pas de méthode "isInt".
    Le plus rapide pour repérer un entier est de faire le test suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if(jTextField5.getText().matches("\\d+")){
    ...
    }

  5. #5
    Membre averti
    Inscrit en
    Mai 2012
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Mai 2012
    Messages : 22
    Par défaut


    merci beaucoup,
    le problème résolu

    cordialement ..

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 21/05/2011, 02h36
  2. [V6] Qui a déjà vu cette erreur INCROYABLE ?
    Par joemon dans le forum Designer
    Réponses: 2
    Dernier message: 27/03/2009, 09h25
  3. Réponses: 4
    Dernier message: 11/01/2008, 21h37

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