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 :

Pb ordre insertion - Mysql


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 125
    Par défaut Pb ordre insertion - Mysql
    Bonjour à tous,

    J'ai un problème assez simple mais je ne sais comment le résoudre. J'utilise une appli java pour lire et écrire des infos dans une base mysql (easyPhp 1.8).

    Lorsque j'insère des données, je lis un tableau de mon interface graphique (une jXtable) et je réalise des INSERT inclus dans une boucle While parcourant les lignes du tableau. Avant d'effectuer chaque requete, je l'affiche à l'écran afin d'observer l'ordre dans lequel elles sont faires.

    A la lecture des informations, j'obtiens les memes données, dans mon tableau, mais l'ordre est changé.

    J'ai regardé en base par phpmyAdmin et effectivement, l'ordre d'insertion n'est pas respecté. Il y a une incohérence entre l'ordre des requetes INSERT et l'ordre où les tuples sont stockés.

    Comment corriger ce problème ?
    Merci de votre aide.

  2. #2
    Membre expérimenté Avatar de Roy Miro
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    273
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 273
    Par défaut
    Bonjour,
    Comment tu parcours les entrées de la table? Avec l'instruction
    ?
    Si c'est le cas fait attention avant de lancer ton parcours, fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    resultset.beforeFirst()
    pour être sûr d'avoir le "pointeur" (sur ta table) qui pointe avant la 1ère entrée.
    Car je pense que ton problème vienne du fait que le "pointeur" ne se trouve pas avent le début de ta table. Ainsi ton application traite d'abord une autre ligne que la première.

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 125
    Par défaut
    effectivement, je la parcours avec des .next():

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    base=new GestionBD(ParamBase);
    sRequete = "SELECT * FROM ma_table WHERE id = '"+sCurId+"'";
    base.requeteSelect(sRequete);
    res = base.getRS();
    while(res.next()) 
    {
         affiche les valeurs
    }
    J'ai tenté le "res.beforeFirst()" avant la boucle while, mais ca ne change rien. Et ce que je trouve bizarre, c'est qu'a la lecture de ma table dans phpmyadmin, je vois bien un ordre inversé.

    L'ordre que je vois dans phpmyadmin correspond à l'ordre d'affichage lors de la lecture des valeurs. Je pense donc que le mélange se fait lors de l'insertion des données. Mais pourquoi....

  4. #4
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Là c'est dû à ta méthode d'insertion... Si tu ne nous donnes pas ton code d'insertion, on va avoir du mal à te répondre
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 125
    Par défaut
    La partie de code d'insertion:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    base=new GestionBD(ParamBase);
    for( int iCpt = 0; iCpt < jXTable.getRowCount(); iCpt++ )
    {
        sRequete = "INSERT INTO ma_table values('"+_modelCatalogue.getValueAt(iCpt,6)+"','"+jComboBox_Kits.getSelectedItem().toString().trim()+"','"+jXTable.getValueAt(iCpt,0).toString().trim()+"','"+sFormateDescr(jXTable.getValueAt(iCpt,1).toString().trim())+"','"+jXTable.getValueAt(iCpt,3).toString().trim()+"','"+jXTable.getValueAt(iCpt,4).toString().trim()+"')";
        System.out.println("la requete: "+sRequete);
        base.requete(sRequete);
    }
    base.close();

  6. #6
    Membre Expert
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Par défaut
    Oui mais on a aussi besoin de ta méthode requete de GestionBD ...

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

Discussions similaires

  1. select ordre insert
    Par elharet dans le forum SQL
    Réponses: 11
    Dernier message: 26/04/2007, 11h53
  2. [MySQL] Récupérer $_POST et insertion MySql
    Par hugo69 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/12/2006, 20h23
  3. Problèmede insert MySQL avec les DECIMAL
    Par SuperCed dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/04/2006, 17h04
  4. Problème sur requête insert mysql
    Par kcizth dans le forum Requêtes
    Réponses: 5
    Dernier message: 04/02/2006, 18h37

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