Ajouter un ligne dans une base de donnes

cs_anisj1m
Messages postés
92
Date d'inscription
jeudi 3 août 2006
Statut
Membre
Dernière intervention
22 janvier 2009
- 19 mars 2007 à 12:04
gmi19oj19
Messages postés
545
Date d'inscription
lundi 10 mai 2004
Statut
Membre
Dernière intervention
28 septembre 2011
- 19 mars 2007 à 18:36
bonjour;
je veux inserer un ligne dans ma base de donne mais il ya un problem je ne sais ma so origine ;
voici mon code :

  String pilote = "com.mysql.jdbc.Driver";
        try{
        Class.forName(pilote);
        Connection connexion1 = DriverManager.getConnection("jdbc:mysql://localhost/base","root","pass");
        Statement statement = connexion1.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
        String sql = "SELECT * FROM utilisateur";
        ResultSet resultat = statement.executeQuery(sql);
// on se place sur la ligne à insérer
        resultat.moveToInsertRow();
//on renseigne les différents champs
        resultat.updateString("nom","nouveauNom");
        resultat.updateString("prenom","nouveauPrenom");
//on insère effectivement la nouvelle ligne
        resultat.insertRow();
        }
                        catch (Exception e2){
       
                                System.out.println("echec pilote : "+e2);
  }

merci de bien vouloir m'aider

6 réponses

Twinuts
Messages postés
5371
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
1 avril 2022
111
19 mars 2007 à 12:23
Salut,

et c'est quoi le problème? na parce que c'est bien beau de donner un bout de code mais faudrait pt'être penser à donner plus d'info....

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
0
cs_anisj1m
Messages postés
92
Date d'inscription
jeudi 3 août 2006
Statut
Membre
Dernière intervention
22 janvier 2009

19 mars 2007 à 12:31
le problem est que l'ajout n'est pas effectuer est il  m'affiche cette erreur:
echec pilote : com.mysql.jdbc.NotUpdatable: Result Set not updatable.This result set must come from a statement that was created with a result set type of ResultSet.CONCUR_UPDATABLE, the query must select only one table, and must select all primary keys from that table. See the JDBC 2.1 API Specification, section 5.6 for more details.

alors que j'ai bien fait que mon statement a un parametre comme il requiert et mon table n'a pas  de cle primaire alors je ne voit pas ou est l'erreur
0
lafolle24320
Messages postés
406
Date d'inscription
samedi 26 mars 2005
Statut
Membre
Dernière intervention
29 juin 2009
7
19 mars 2007 à 16:02
et si tu fais des setString à la place des updateString??
0
cs_anisj1m
Messages postés
92
Date d'inscription
jeudi 3 août 2006
Statut
Membre
Dernière intervention
22 janvier 2009

19 mars 2007 à 16:42
mais il n'existe pas des setString
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
lafolle24320
Messages postés
406
Date d'inscription
samedi 26 mars 2005
Statut
Membre
Dernière intervention
29 juin 2009
7
19 mars 2007 à 17:05
ok
0
gmi19oj19
Messages postés
545
Date d'inscription
lundi 10 mai 2004
Statut
Membre
Dernière intervention
28 septembre 2011
2
19 mars 2007 à 18:36
J'vais peut être dire une bêtise, mais à vue de nez, tu effectues une selection et non un ajout avec ta requete. Du coup, la ligne insérée, au niveau du ResulSet, elle serait pas un peu inexistante ?
0