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 :

Connexion BDD Java


Sujet :

JDBC Java

  1. #1
    Membre à l'essai
    Femme Profil pro
    Inscrit en
    Avril 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2012
    Messages : 45
    Points : 19
    Points
    19
    Par défaut Connexion BDD Java
    Bonjour, j'ai besoin de votre aide pour savoir pour quoi ce bout de code ne me donne pas le résultat attendu :
    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
      String sel = null;
                    sel = (String) AfficherRDP.jList1.getSelectedValue();
                    String Nom = sel;
                    String req = "SELECT * FROM `post` where Nom='" + Nom + "'";
                    Statement stmt;
     
                    DBConnector cnx = new DBConnector();
     
                    stmt = (Statement) cnx.conn.createStatement();
                    System.out.println("Nom:" + Nom);
                    ResultSet r = stmt.executeQuery(req);
     
                   while (r.next()) {
     
                        String val = r.getString("val");
                        int pl = r.getInt("place");
                        int tr = r.getInt("transition");
                        System.out.println("P:  " + pl + "T:  " + tr + "val:" + val);
     
                        int k;
                        String var;
                        Matrice_ PRE = new Matrice_(pl, tr, "PRE BD");
                        PRE.initialisation();
     
                        Matrice_ POST = new Matrice_(tr, pl, "POST BD");
                        POST.initialisation();
     
                        StringTokenizer str = new StringTokenizer(val, "/");
                        //   for (int i = 0; i < pl && str.hasMoreElements(); i++) {
                        for (int j = 0; j < tr && str.hasMoreElements(); j++) {
                            for (int l = 0; l < tr && str.hasMoreElements(); l++) {
     
                                var = (String) str.nextElement();
                                k = Integer.parseInt(var);
     
                                PRE.inserer(j, l, k);
                                PRE.initialisation();
                                PRE.Afficher();
                            }
                        }
                    }
     
                }
     
            });
    d'après le résultat tout ce qui après la boucle while ne s’exécute pas et je ne comprend pas pk et je n'est pas de message d'erreur

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Il n'y a rien après ta boucle while...

    Par contre si tu veux dire que tu ne rentre pas dans ta boucle while, ben c'est que ton resultSet est vide, donc que rien dans la base de données ne correspond à ta requête.

  3. #3
    Membre actif
    Homme Profil pro
    Développeur Java/JavaEE
    Inscrit en
    Août 2014
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java/JavaEE

    Informations forums :
    Inscription : Août 2014
    Messages : 194
    Points : 290
    Points
    290
    Par défaut
    Bonjour,

    Je te conseil tout d'abord d'enlevé les simples cotes que tu met pour préciser la table que tu es entrain de travailler dessus.
    Sinon essai d'écrire ta requête sans condition, si ça marche alors ta première requête paramétré ne renvoie aucune ligne sinon tu as un autre problème dans un autre niveau.

  4. #4
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Bonjour,
    Je pense que la classe PreparedStatement est faite pour plus de souplesse et de sécurité. pourquoi ne pas l'utiliser .
    Par ailleurs, vas y un peu doucement. Avant de faire compliqué dans ta boucle while, essaie juste d'afficher les résultats d'un champ renvoyés par ta requête pour voir si le problème ne vient pas d'elle (requête).
    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
     
            String nom = AfficherRDP.jList1.getSelectedValue().toString();
            String req = "SELECT * FROM post where Nom = ? ";
            try (PreparedStatement ps = cnx.prepareStatement(req)) {
                //Passage de paramètre
                ps.setString(1, nom);
                //Exécution de la requête puis récupération du ResultSet
                ResultSet rs = ps.executeQuery();
                while (rs.next()) {                
                    System.out.println(rs.getString("val"));
                }
                rs.close();
            } catch (Exception e) {
                e.printStackTrace();
            }
    Plus tu apprends sérieusement, plus tu te rapproches d'un savoir noble. Une chose est certaine, les difficultés ne s'écarteront de ton chemin...

    Tu es nouveau dans le développement Android, la page des COURS est là pour te faciliter la vie
    Tu peux trouver la réponse à ta question dans la FAQ
    Retrouvez mon tutoriel sur la consommation des services web SOAP
    Pense à voter positivement en appuyant sur en bas à droite de la réponse qui t'a donné une piste de solution.

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/11/2014, 16h25
  2. Java et connexion BDD SQLite sur une VM
    Par Cdébryha dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 07/05/2013, 16h38
  3. Connexion BDD oracle impossible depuis java
    Par pauselol dans le forum JDBC
    Réponses: 5
    Dernier message: 10/06/2012, 14h26
  4. pb de connexion bdd
    Par picoti2 dans le forum Bases de données
    Réponses: 6
    Dernier message: 16/03/2004, 18h53
  5. [BCB6] DBGrid et mode de connexion BDD... demain
    Par Seb des Monts dans le forum C++Builder
    Réponses: 5
    Dernier message: 19/01/2004, 13h56

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