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ème UPDATE SET


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 44
    Points : 25
    Points
    25
    Par défaut Problème UPDATE SET
    Salut les amis ! Bref ! G plusieurs CheckBox dans mon JFrame ! je veux une fois que tout les JCheckBox sont selectionnés Inserer dans une seule colonne de ma table (qui contient plusieurs colonnes) "dossier complet" quand la colonne N° de dossier reçoit le getText() d'une autre classe ! Voilà mon code qui marche pas !!
    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
     private void BtnenregistrerActionPerformed(java.awt.event.ActionEvent ev){
        try{
          if( demande.isSelected() && copie.isSelected() && auto.isSelected() && status.isSelected() && carte.isSelected() && attes.isSelected()
    && certi.isSelected() && attesta.isSelected() && bul.isSelected());
          {
        	  String query2 = "UPDATE entreprise SET dossier_administratif = ?  WHERE N_de_dossier = "+V.TxtDoss.getText()+"";
                try{
        	  java.sql.PreparedStatement P1 = C.prepareStatement(query2);
        	  P1.setString(13, " Dossier administratif complet ");
        	  P1.executeUpdate();
        	  JOptionPane.showMessageDialog(null,"  Dossier administratif COMPLET ! ");
        	  }catch(Exception e) {
        		  e.printStackTrace() ;
        			System.out.println("Erreur : " + e.getMessage());
        			}
          }
          if ( demande.isSelected() || copie.isSelected() || auto.isSelected() || status.isSelected() || carte.isSelected() || attes.isSelected()
    || certi.isSelected() || attesta.isSelected() || bul.isSelected());
          { 
        	  String query3 = "UPDATE entreprise  SET dossier_administartif VALUES = 'Dossier administratif incomplet' WHERE N_de_dossier = "+V.TxtDoss.getText()+"";
         try{
        	 java.sql.PreparedStatement P2 = C.prepareStatement(query3);
       	  P2.setString(13, " Dossier administratif incomplet ");
       	  P2.executeUpdate();
       	  JOptionPane.showMessageDialog(null,"  Dossier administratif INCOMPLET ! ");
         }	
     
    		catch(Exception e) {
    			System.out.println("Erreur : " + e.getMessage());
    		}
    		}
     
       }catch(Exception e){
         	System.out.println(e.getMessage()+ "/" + e.getStackTrace());
    	  }
    }
    Aidez moi SVP

  2. #2
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Prends l'habitude de nous donner la pile d'erreur quand tu nous montre du code, ça nous facilite la tâche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private void BtnenregistrerActionPerformed(java.awt.event.ActionEvent ev){
    Rien a voir mais prends l'habitude d'utiliser les conventions de codage, à savoir que le nom d'une méthode commence toujours par une minuscule.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    void leNomDeMaMethodeAuComplet()
    Pareil pour le nom des variables
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String leNomDeMaVariable;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String query2 = "UPDATE entreprise SET dossier_administratif = ?  WHERE N_de_dossier = "+V.TxtDoss.getText()+"";
    Pourquoi ne binder que la moitié des variables ?
    N_de_dossier est bien de type VARCHAR dans ta base ? car la tu mets une string sur quelque chose qui pour moi est de type NUMBER.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    String query3 = "UPDATE entreprise  SET dossier_administartif VALUES = 'Dossier administratif incomplet' WHERE N_de_dossier = "+V.TxtDoss.getText()+"";
    P2.setString(13, " Dossier administratif incomplet ");
    Je ne vois pas ou tu utilises le bind dans ta requête.
    De plus pourquoi tu utilises l'index de paramètre N°13 ?? Ne devrais tu pas utiliser l'index N°1 ?

    Bref, beaucoup de choses à dire. Je te conseille de faire un tour ici pour voir comment utiliser les requêtes préparées

    Cdt.

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Inscrit en
    Juillet 2013
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations forums :
    Inscription : Juillet 2013
    Messages : 44
    Points : 25
    Points
    25
    Par défaut
    Effectivement j'avais un problème en ce qui concerne la requête ! J'ai corrigé la requête grâce à votre lien par celle ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    String query2 = "UPDATE entreprise SET dossier_administratif = ?  WHERE N_de_dossier = ? ";
                try{
        	  java.sql.PreparedStatement P1 = C.prepareStatement(query2);
        	  P1.setString(1, " Dossier administratif complet ");
        	  P1.setString(2, V.TxtDoss.getText());
        	  P1.executeUpdate();
    Merci Mais malgré ça lorsque j'appuie sur le bouton enregistrer rien n'a changé ! Est ce que mon code java est correcte ?

  4. #4
    Membre expérimenté Avatar de Nico02
    Homme Profil pro
    Developpeur Java/JEE
    Inscrit en
    Février 2011
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Developpeur Java/JEE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 728
    Points : 1 622
    Points
    1 622
    Par défaut
    Citation Envoyé par Nico02 Voir le message
    Prends l'habitude de nous donner la pile d'erreur quand tu nous montre du code, ça nous facilite la tâche
    Je peux pas trop t'aider sans la trace..

    Le type de ta colonne 'N_de_dossier' est bien un VARCHAR en BDD ?? Car si c'est un NUMBER tu vas avoir des soucis en lui donnant une String..

  5. #5
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    ce serait pas un simple problème de COMMIT manquant des fois ?
    si ta connexion n'est pas en autocommit il faut commiter explicitement après un UPDATE.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. Problème Update Set Sous interrogation
    Par P'tit Pierre dans le forum Débuter
    Réponses: 2
    Dernier message: 21/10/2010, 10h14
  2. [Tableaux] Problème dans ma requête UPDATE SET
    Par mickado dans le forum Langage
    Réponses: 7
    Dernier message: 02/05/2007, 23h41
  3. Probléme dans ma requête UPDATE SET
    Par mickado dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/05/2007, 17h30
  4. [INTERBASE][UPDATE SET WHERE] problème de requete
    Par exclusif dans le forum Langage SQL
    Réponses: 3
    Dernier message: 06/03/2006, 21h10
  5. Problème UPDATE
    Par Eltaz dans le forum Langage SQL
    Réponses: 7
    Dernier message: 06/07/2004, 11h37

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