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 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 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
Rejoignez-nous