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 avec une requette inserer


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    630
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 630
    Par défaut problème avec une requette inserer
    Salut, merci de bien vouloir m'aider

    j'ai essayé de modifier la premiere colonne de la premiere ligne de ma table mais ça n'a pas marché un message d'erreur ::
    Connected
    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.



    voici mon code

    try
    {
    Class.forName("org.gjt.mm.mysql.Driver").newInstance();
    conn = DriverManager.getConnection(url, userName, password);
    System.out.println("Connected");

    Statement instruction = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);

    String sql = "select * from matable ";
    ResultSet resultat = instruction.executeQuery(sql);
    resultat.first();
    //on récupère la valeur de la colonne "nom"
    String nom1 = resultat.getString("nom");
    //on met à jour la valeur de la colonne "nom"
    resultat.updateString("nom", "nouveauNom");
    //on met à jour la valeur dans la table
    resultat.updateRow();
    String nom2 = resultat.getString("nom");
    System.out.println("Ancien nom = "+nom1+
    "Nouveau nom = "+nom2);


    }

    catch(Exception e)
    {
    System.out.println( e );
    }

    // Create table with database data



    }

  2. #2
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Statement instruction = conn.createStatement();
    Tout simplement, sinon vu comme tu crées ton statement, il faisait appel à un resulSet précédent qui n'existe pas.

    Citation Envoyé par ulysse031
    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
    C'est ce que disait l'erreur

  3. #3
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    630
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 630
    Par défaut
    merci mais je n'ai pas compris ta réponse et j'ai toujours le meme problème

  4. #4
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Tu as toujours la même erreur en ayant changé la ligne de code que j'ai cité?

  5. #5
    Membre éclairé
    Inscrit en
    Novembre 2006
    Messages
    630
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 630
    Par défaut
    oui mon ami je coince encore 'ai mis cette ligne
    Statement instruction = conn.createStatement();

  6. #6
    Membre émérite
    Avatar de sironimo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mai 2004
    Messages : 669
    Par défaut
    Le problème doit venir de là

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    //on met à jour la valeur de la colonne "nom"
    resultat.updateString("nom", "nouveauNom");
    //on met à jour la valeur dans la table
    resultat.updateRow();
    Essaie plutôt de faire la requête d'update à la main et dis moi ce qu'il en est. Par à la main, je veux dire tu emploies le langage sql normal, comme pour ton select au-dessus

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec une instruction OUTER /Postgres
    Par Volcomix dans le forum Langage SQL
    Réponses: 14
    Dernier message: 21/04/2004, 16h56
  2. problème avec une requête imbriquée
    Par jaimepasteevy dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2003, 10h29
  3. Problème avec une procédure stockée
    Par in dans le forum Langage SQL
    Réponses: 4
    Dernier message: 27/05/2003, 15h33

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