Partage
  • Partager sur Facebook
  • Partager sur Twitter

modifier une ligne de sql a partir de java

    24 avril 2015 à 22:11:42

    Bonsoir,

    j'ai un probleme dans mon application java, je travaille avec netbeans et avec une base de donnée sql

    j'ai cree un bouton modifier, mais quand je veux modifier une ligne selectionné toute la table est modifié je ne sais pas ou est le probleme

    voici le code du bouton modifier :

    try {
                
                if (JOptionPane.showConfirmDialog(null,"Confirmer la modification","modification",JOptionPane.YES_NO_OPTION) == JOptionPane.OK_OPTION){
                
            String sql="UPDATE EMPLOYE SET ID = '"+tfIDemploye.getText()+"',nom='"+tfnomemploye.getText()+"', prenom='"+tfprenomemploye.getText()+"', salaire='"+tfsalaireemploye.getText()+"', age='"+tfageemploye.getText()+"' ";
             pstmt=con.obtenirconnexion().prepareStatement(sql);
             pstmt.execute();
            afficheremploye();}
         }catch(Exception e)
        {JOptionPane.showMessageDialog(null,"Erreur de modification \n"+e.getMessage());}

    merci de m'aider 



    -
    Edité par bye0101 24 avril 2015 à 22:14:43

    • Partager sur Facebook
    • Partager sur Twitter
      25 avril 2015 à 0:43:28

      Slu,

      je pense que t'as pas précisé la ligne à modifier.

      Ta requête devrais ressembler à un truc comme ça :

              String sql="UPDATE EMPLOYE SET ID = '"+tfIDemploye.getText()+"',nom='"+tfnomemploye.getText()+"', prenom='"+tfprenomemploye.getText()+"', salaire='"+tfsalaireemploye.getText()+"', age='"+tfageemploye.getText()+"' where ID = "ID de l'enregistrement à modifier"



      • Partager sur Facebook
      • Partager sur Twitter
      Jacques Le Roi
        25 avril 2015 à 2:06:51

        KaskoIssouf normalement la ligne est deja selectionnée par la sourie 

        • Partager sur Facebook
        • Partager sur Twitter
          25 avril 2015 à 2:11:14

          KaskoIssouf normalement la ligne est deja selectionnée par la sourie 

          • Partager sur Facebook
          • Partager sur Twitter
            25 avril 2015 à 19:15:09

            Bonjour.

            Comme dit par KaskoIssoufou, il te manque la clause WHERE dans ta requête.
            La requête UPDATE met à jour les colonnes (dans la clause SET (contenant les couples "colonne=valeur")), et permet de limiter les lignes mises à jour grâce à la clause WHERE (où il y a les filtres).
            Voir le cours de SQL si besoin.

            La requête SQL n'a aucun lien avec la ligne sélectionnées dans ta vue.
            Le Controlleur doit savoir retrouver la ligne correspondante, et le Service doit mettre à jour cette ligne.

            • Partager sur Facebook
            • Partager sur Twitter
            Angular 2 est l'avenir, jQuery c'est de la merde !!! - Java 8 c'est l'an 2016+ (programmez en 1 ligne)
              28 avril 2015 à 1:06:19

              Exactement Pinguet62,

              Quand on met pas la clause WHERE c'est toute la table qui sera mise à jours si c'est un "update" et idem si c'est un "delete".

              • Partager sur Facebook
              • Partager sur Twitter
              Jacques Le Roi

              modifier une ligne de sql a partir de java

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown