Modification de toute la table au lieu d'une seulle ligne

liondes Messages postés 70 Date d'inscription samedi 21 juillet 2012 Statut Membre Dernière intervention 3 mars 2015 - 5 sept. 2012 à 00:48
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 5 sept. 2012 à 11:44
Salut tout le monde
SVP j'ai toujours besoin à votre aide
mon brobleme c'est que la modification (UPDATE table SET) se fait sur toute la table et non pas sur un seul enregistrement voila mon code du bouton "Enregistrer" Qui fonctionne bien dans la partie d'ajout et non pour la partie de modification
    private void enregistrerActionPerformed(java.awt.event.ActionEvent evt) {                                            
    //methode doublant pour verifier l'xistance de la ressource
        try {
            
         boolean doublant=false;
        for(int j=0;j<dt.getRowCount()-1;j++)
        {
        if(ressourcetxt.getText().equals(dt.getValueAt(j, 1)))
        {doublant = true;
        break;
        }}
    //Enregistrement D'ajout    
        if(Id.getText().toString().equals(""))
        {
        if (ressourcetxt.getText().equals("")||passwordtxt.getPassword().toString().equals(""))
        {
          JOptionPane.showMessageDialog(null, "Veuillez Remplire Toutes Les Cases !");
          ressourcetxt.requestFocus();
        }
        else if(doublant ==false)
        {                   
        st.executeUpdate("INSERT INTO user (Ressource,Pass,Service,Priv) Values ('"+ressourcetxt.getText().toString()+"','"+new String (passwordtxt.getPassword()).toString()+"','"+servicecmb.getSelectedItem().toString()+"','"+privilegecmb.getSelectedItem().toString()+"')");
        JOptionPane.showMessageDialog(null, "Utilisateur Ajouté Avec Succès");
        afficheliste();
        liste.setEnabled(true);
        premier.setEnabled(true);
        dernier.setEnabled(true);
        modifier.setEnabled(true);
        supprimer.setEnabled(true);
        nouveau.setEnabled(true);
        i=dt.getRowCount()-1;
        sedeplacer();
        }    
        else{
          JOptionPane.showMessageDialog(null, "Cette Ressource est déjà existante !");                 
          ressourcetxt.setText("");
          passwordtxt.setText("");
          ressourcetxt.requestFocus();   
        }}
        else
    {
  //Enregistrement De la modification             
    st.executeUpdate("UPDATE user SET Ressource='"+ressourcetxt.getText().toString()+"',Pass = '"+new String (passwordtxt.getPassword()).toString()+"',Service = '"+servicecmb.getSelectedItem().toString()+"',Priv = '"+privilegecmb.getSelectedItem().toString()+"'");
    afficheliste();
    }}
catch(Exception e){
            JOptionPane.showMessageDialog(null, "Erreur D'ajout ou de modification !\n"+"Contactez votre administrateur"+e.getMessage() );
        }  
    }    

3 réponses

liondes Messages postés 70 Date d'inscription samedi 21 juillet 2012 Statut Membre Dernière intervention 3 mars 2015 1
5 sept. 2012 à 01:11
Salut tout le monde
C'est bien j'ai trouvé la sollution c'est dans ligne suivante
st.executeUpdate("UPDATE user SET Ressource='"+ressourcetxt.getText().toString()+"',Pass = '"+new String (passwordtxt.getPassword()).toString()+"',Service = '"+servicecmb.getSelectedItem().toString()+"',Priv = '"+privilegecmb.getSelectedItem().toString()+"'");

la faute c'est la clause where manquante comme ca
st.executeUpdate("UPDATE user SET Ressource='"+ressourcetxt.getText().toString()+"',Pass = '"+new String (passwordtxt.getPassword()).toString()+"',Service = '"+servicecmb.getSelectedItem().toString()+"',Priv = '"+privilegecmb.getSelectedItem().toString()+"' where Num ="+Id.getText());
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
5 sept. 2012 à 11:42
Salut,

new String (passwordtxt.getPassword()).toString(), tu peux le remplacer par passwordtxt.getPassword()

ressourcetxt.getText().toString() -> ressourcetxt.getText()

servicecmb.getSelectedItem().toString() : je pense que tu vas avoir des soucis si tu n'as pas surchargé la méthode toString du contenu de la conbobox. Si c'est des String, supprimes le toString()
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
5 sept. 2012 à 11:44
Est ce que tu es certain que tous les attributs sont des VARCHAR ?
0
Rejoignez-nous