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 :

Problèmes d'espaces dans mes résultat de requète


Sujet :

JDBC Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 142
    Points : 56
    Points
    56
    Par défaut Problèmes d'espaces dans mes résultat de requète
    Bonjour,

    après avoir exécutée une requête SQL sur une bdd Oracle chaque données contenues dans mon résultat comportent des espaces en fin de chaine ex: "1 ".

    La valeur que je souhaite exclusivement est bien seulement "1" ! Donc comment supprimer ces caractères en trots ?

    Pour infos le code que j'utilise mais en me connectant a une base de données MySQL me retourne bien que "1"

    Mes champs sons des char(32) ce qui fait pour l'exemple "1 " soit 31 caractères d'espaces !

    Comment puis-je régler ce problème pour avoir le mème résultat qu'avec une base de données MySQL ?

    Merci beaucoup

  2. #2
    Membre éclairé Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Points : 861
    Points
    861
    Par défaut
    Tu peux nous donner un peu de code stp

    Tu utilises quel driver JDBC ?
    Ignorer c'est aussi croire que l'on sait.
    Merci d'essayer d'écrire correctement.
    Pas de questions techniques par MP SVP.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 142
    Points : 56
    Points
    56
    Par défaut
    Driver : Oracle9i 9.2.0.8 JDBC Drivers

    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
     
    // Création de la requète
    			String Requete = "SELECT * FROM utilisateur WHERE Login_Utilisateur='"+LoginUtilisateur+"' AND pwd_Utilisateur='"+PwdUtilisateur+"'";
     
    			// Execution et recupération du résultat
    			ResultSet mon_resultat = ConnexionBddOracle().executeQuery(Requete);
     
    			while (mon_resultat.next()) {
    				UnUtilisateur.setIdUtilisateur(mon_resultat.getString(1));
    				UnUtilisateur.setLogin(mon_resultat.getString(2));
    				UnUtilisateur.setNom(mon_resultat.getString(4));
    				UnUtilisateur.setPrenom(mon_resultat.getString(5));
    				UnUtilisateur.setAdresse1(mon_resultat.getString(6));
    				UnUtilisateur.setAdresse2(mon_resultat.getString(7));
    				UnUtilisateur.setAdresse3(mon_resultat.getString(8));
    				UnUtilisateur.setCodePostal(mon_resultat.getString(9));
    				UnUtilisateur.setCodeCommune(mon_resultat.getString(10));
    				UnUtilisateur.setVille(mon_resultat.getString(11));
    				UnUtilisateur.setTelephoneFix(mon_resultat.getString(12));
    				UnUtilisateur.setFax(mon_resultat.getString(13));
    				UnUtilisateur.setMail(mon_resultat.getString(14));
    				UnUtilisateur.setTelephone2(mon_resultat.getString(15));
    			}
    Voila voila mais en faite je croi avoir une piste ! mes champ sont des char alors la taille est fix ! si j'utilise varchar2 la longueur s'adaptera selon la taille de la donnée enfin je test

  4. #4
    Membre éclairé Avatar de remika
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    806
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 806
    Points : 861
    Points
    861
    Par défaut
    A priori sur le site d'Oracle j'ai vu qu'il y a un bug rapporté là-dessus, quel est le nom du jar jdbc que tu utilises ?

    Sinon utilise des PreparedStatement, typiquement la construction de ta requête à la main ici permet de te connecter à ton appli très facilement avec de l'injection SQL (comme login: ' OR ''=' )

    Ton while ne sert à rien a priori.
    Ignorer c'est aussi croire que l'on sait.
    Merci d'essayer d'écrire correctement.
    Pas de questions techniques par MP SVP.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 142
    Points : 56
    Points
    56
    Par défaut
    C'est bon j'ai résolu le problème :

    Il fallait bien changer le type CHAR en VARCHAR2 ce qui m'évite d'avoir des espace en trop si tous les caractères ne son pas utilisé

    Merci pour ton aide

    tchao

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

Discussions similaires

  1. Requête avec trois tables : doublons dans mes résultats
    Par botitine dans le forum Langage SQL
    Réponses: 11
    Dernier message: 20/03/2014, 14h02
  2. Réponses: 1
    Dernier message: 01/02/2009, 19h45
  3. Problème d'espaces dans une requête SQL
    Par Wonesek dans le forum SQL
    Réponses: 9
    Dernier message: 22/04/2008, 16h46
  4. Problèmes d'espaces dans mes entrées
    Par Sanka76 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 12/02/2007, 09h35
  5. Problème d'espace dans les varibles passées par GET !
    Par boukay dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 07/03/2006, 14h36

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