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 :

Synchronisation entre une JTable et un ResultSet


Sujet :

JDBC Java

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 84
    Points : 61
    Points
    61
    Par défaut Synchronisation entre une JTable et un ResultSet
    Bonjour,
    j'essaie désespérément de créer une JTable qui soit lié au contenu d'un ResultSet. Pour cela j'ai créé un TableModel correspondant à ma ResultSet.

    Techniquement, cela marche bien. C'est à dire que ma JTable se remplit avec le contenu de la base, et quand je modifie une cellule de JTable, la base est modifiée en conséquence. Par contre, là où cela foire lamentablement c'est pour que la JTable reflète la valeur modifiée.

    Le scénario que j'observe est en effet le suivant:
    • Je modifie la cellule (0,0). Le setData() est bien appelé et fait à la fois le UpdateString correspondant à la mise à jour du champ, et le UpdateRow() de mise à jour de la base,
    • Ensuite un getData() est appelé pour la remise à jour de la cellule. Sauf que ce foutu getData() renvoie la valeur précédente au lieu de la nouvelle valeur.


    Je n'arrive pas à comprendre pourquoi il renvoie l'ancienne valeur sachant que je suis même allé jusqu'à forcer un refreshRow(), et que mon Statement a été créé par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    On dirait que j'ai un cache quelque part qui m'embête, mais je ne sais pas où. La base utilisée est une base MySQL (serveur WampServer) à laquelle j'accède via une connexion ODBC, donc via le driver sun.jdbc.odbc.JdbcOdbcDriver.

  2. #2
    En attente de confirmation mail
    Homme Profil pro
    Ensimag
    Inscrit en
    Octobre 2011
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ensimag
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 57
    Points : 97
    Points
    97
    Par défaut
    Bonsoir,

    as tu activer l'autocommite dans ton sgbd, con.setAutoCommit(true)

    je ne sais pas si tu fermes la connexion après chaque transaction,

    je te conseille d'utiliser jdbc, odbc a manifestement beaucoup de problèmes.

    pour ton row tu dois faire un accès bd pour récupère la dernière valeur enregistrée.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 84
    Points : 61
    Points
    61
    Par défaut
    Citation Envoyé par mouddene Voir le message
    Bonsoir,

    as tu activer l'autocommite dans ton sgbd, con.setAutoCommit(true)

    je ne sais pas si tu fermes la connexion après chaque transaction,

    je te conseille d'utiliser jdbc, odbc a manifestement beaucoup de problèmes.

    pour ton row tu dois faire un accès bd pour récupère la dernière valeur enregistrée.
    A priori non. Enfin comme j'ai réussi à convaincre mon client d'abandonner ODBC j'ai moins de problèmes maintenant. Merci.

Discussions similaires

  1. Problème de bind entre une JTable et une BD
    Par snips67 dans le forum NetBeans Platform
    Réponses: 1
    Dernier message: 13/09/2010, 14h39
  2. Réponses: 4
    Dernier message: 20/01/2010, 11h40
  3. Lien entre une JTable et une List
    Par guilllet dans le forum Composants
    Réponses: 3
    Dernier message: 26/10/2009, 16h47
  4. Réponses: 0
    Dernier message: 07/08/2008, 17h43
  5. Synchronisation entre une base locale et distante
    Par gege87270 dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 09/11/2007, 14h04

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