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 :

Requete like en java


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2008
    Messages : 13
    Par défaut Requete like en java
    Bonjour je veux effectuer une requête avec une condition de type like avec une preparedStatement mais il ne me retourne aucun résultat et je n'arrive pas a trouver mon erreur . Voila le code de ma méthode de recherche :

    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
    static Vector rechDescr(String descr)
        {
            Vector vProd = new Vector();
            String numProd;
            String description;
            double phTva;
            int i = 0;
            try
            {
                String req = "select * from Produits where descr = ?";
                PreparedStatement pst = connect.prepareStatement(req);
                pst.setString(1, "%"+descr+"%");
                ResultSet rs = pst.executeQuery();
                while(rs.next())
                {
                        System.out.println("Passez ici");
                        numProd = rs.getString("NUMPROD");
                        description = rs.getString("DESCR");
                        phTva = rs.getDouble("PHTVA");
                        vProd.add(new ProduitDB(numProd,description,phTva));
                }
                pst.close();            
            }
            catch(SQLException e)
            {
                System.out.println("Erreur requete sql: "+e);
            }
            return vProd;
        }
    Le code qui appelle cette méthode :
    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
    public ProduitDB rechDescr()
        {
        ProduitDB prod = null;
        System.out.println("Entrez la description du produit : ");
        String descr = Lecture.lireString();
     
        Vector prodRech = ProduitDB.rechDescr(descr);
        if(prodRech.size() == 0)
        {
            System.out.println("Aucun produit ne correspond a cette description");
            return null;
        }
        else
        {
            int i = 0;
            while(i < prodRech.size())
            {
                prod = (ProduitDB)prodRech.elementAt(i);
                System.out.println((i+1)+":");
                affiche(prod);
                i++;
            }
            boolean erreur;
            do
            {
                erreur = false;
                System.out.println("Entrez le numero correspondant a votre recherche : ");
                int num = Lecture.lireInt();
                if(num >=1 && num <= prodRech.size())
                {
                    prod = (ProduitDB)prodRech.elementAt((num-1));
                }
                else
                {
                    System.out.println("Entrez un nombre valide ! ");
                    erreur = true;
                }
            }
            while(erreur);
        }
        return prod;
        }

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

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

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Par défaut
    Bonjour,

    Je n'ai pas pris le temps de regarder en détail, mais ta requête utilise un '=' tu devrais de toute façon mettre un like:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String req = "select * from Produits where descr LIKE ?";

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    764
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 764
    Par défaut
    Citation Envoyé par setto Voir le message
    Bonjour je veux effectuer une requête avec une condition de type like avec une preparedStatement mais il ne me retourne aucun résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String req = "select * from Produits where descr = ?";
    PreparedStatement pst = connect.prepareStatement(req);
    pst.setString(1, "%"+descr+"%");
    Tu devrais sans doute commencer par utiliser une clause "like" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String req = "select * from Produits where descr like ?";
    PreparedStatement pst = connect.prepareStatement(req);
    pst.setString(1, "%"+descr+"%");

  4. #4
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2008
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2008
    Messages : 13
    Par défaut
    hooo merci une erreur d'inattention désolé de vous avoir dérangé ...

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

Discussions similaires

  1. Requete Google en JAVA
    Par pip1000 dans le forum Développement Web en Java
    Réponses: 1
    Dernier message: 04/10/2006, 08h18
  2. Requete Like sur un numérique
    Par cell dans le forum Requêtes
    Réponses: 2
    Dernier message: 26/07/2006, 15h51
  3. Interclassement MySql et requete Like
    Par Sylvain245 dans le forum Requêtes
    Réponses: 1
    Dernier message: 22/01/2006, 14h23
  4. Requete LIKE
    Par polux23 dans le forum Requêtes
    Réponses: 2
    Dernier message: 22/06/2005, 16h25
  5. Requete like en ASP
    Par ahage4x4 dans le forum ASP
    Réponses: 3
    Dernier message: 20/06/2005, 14h59

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