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 :

PreparedStatement probleme serieux


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 133
    Par défaut PreparedStatement probleme serieux
    Je vous en prie ce problème me tracasse pendant 3 jours !! j'arrive pas a résoudre !, en fait, je veut ajouter un sportif, il ne s'ajoute pas convenablement (Cin = 0, ...) malgré que j'ai bien saisi !
    une exception Sql est levée ...
    Le principe est de vérifier si le sportif est existant par son CIN, sinon l'ajouter !
    enfin voila un morceau du code :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    public void ExecuterRequette(JPanel pan,int Cin,String Nom, String Prenom, java.sql.Date Daten, java.sql.Date Datea, int Tel, double Poids, String Adresse, java.sql.Date Datep)
        {
            boolean existe = false;
            try {
    
            //connection a la base de données
            String DBurl = "jdbc:odbc:sportif";
            con = DriverManager.getConnection(DBurl);
    
            PreparedStatement stmt= con.prepareStatement("Insert INTO infosinscri(Cin, Nom, Prenom, DateNaiss, DateAdhes, Tel, Poids, Adresse, DatePaiement) Values (?, ?, ?, ?, ?, ?, ?, ?, ?)");
    
                requete = "Select * From infosinscri ";
                Statement statement = con.createStatement();
                resultats = statement.executeQuery(requete);
                boolean encore = resultats.next();
    
                int CIN;
    
                while((encore)&&(existe))
                {
                    CIN = resultats.getInt(1);
                    
                    if(CIN == Cin)
                    {
                        JOptionPane.showMessageDialog(pan, "Ce numero de CIN est present dans la base !\nVerifiez votre saisie\nImpossible d'ajouter a la base !", "CIN Existant !", JOptionPane.ERROR_MESSAGE);
                        encore = false;
                        existe = true;
                     }
                    encore = resultats.next();
                 }
    
            if(!existe)
            {
                
                                stmt.setInt(1, Cin);
                                System.out.println("Wadjo Checkpoint");
                                stmt.setString(2, Nom);
                                stmt.setString(3, Prenom);
                                stmt.setDate(4, Daten);
                                stmt.setDate(5, Datea);
                                stmt.setInt(6, Tel);
                                stmt.setDouble(7, Poids);
                                stmt.setString(8, Adresse);
                                stmt.setDate(9,Datep);
                                stmt.execute();
                                System.out.println("nb mise a jour = "+stmt.executeUpdate());
                                JOptionPane.showMessageDialog(pan, "Ajout de "+Nom+" "+Prenom+" est effectué\n avec succès !", "Succès d'ajout!",JOptionPane.INFORMATION_MESSAGE) ;
    
    
     
                }
                                resultats.close();
                }
    
               catch (SQLException e) {
              JOptionPane.showMessageDialog(pan, e.getMessage(), "Doubons !",JOptionPane.ERROR_MESSAGE) ;
            }
    
    
        }
    Le problème normalement est dans la ligne en rouge ...
    Merci infiniment je suis devenu fou a cause de ce programme !

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Citation Envoyé par wajdy Voir le message
    une exception Sql est levée ...
    Et bien sûr, on est supposé deviner laquelle?

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 133
    Par défaut
    non !! j'ai oublié de mentionné c'est SQLException " doublons ... " dans la base, alors qu'il n'existe pas de doublons !!, ca ajoute l'entrée et me lève cette exception.

  4. #4
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Salut,

    Citation Envoyé par wajdy Voir le message
    non !! j'ai oublié de mentionné c'est SQLException " doublons ... " dans la base, alors qu'il n'existe pas de doublons !!, ca ajoute l'entrée et me lève cette exception.
    c'est quoi ton clé primaire ?

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 133
    Par défaut
    La Carte d'identité nationale

  6. #6
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Citation Envoyé par wajdy Voir le message
    La Carte d'identité nationale
    Apparemment, tu as fait deux enregistrement dan ta base de données avec le méme numéro CIN.
    Pour être sur, essayer d'enlever la propriété PIMARY_KEY du champ CIN à titre de vérification

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

Discussions similaires

  1. Probleme serieux launcher
    Par Destroileur dans le forum VB.NET
    Réponses: 3
    Dernier message: 02/08/2013, 00h16
  2. Probleme serieux avec Ant Apache
    Par mixany dans le forum ALM
    Réponses: 0
    Dernier message: 26/05/2011, 22h57
  3. Probleme Serieux Sur Les Constructeurs
    Par aderfat dans le forum C++
    Réponses: 31
    Dernier message: 10/07/2007, 17h03
  4. Serieux probleme de conception
    Par anykeyh dans le forum Langage
    Réponses: 11
    Dernier message: 24/02/2006, 22h52
  5. Réponses: 13
    Dernier message: 10/05/2004, 16h49

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