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 :

Ralentissement d'eclipse suite à insert into


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Par défaut Ralentissement d'eclipse suite à insert into
    Bonjour

    Suite à l'acquisition d'un fichier texte j'insère dans une table une partie des données via des rqte du type insert into. L'insertion porte sur environ 18000 enregistrements mais eclipse s'essouffle rapidement. Le code d'execution est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    try{stmt.execute(sql);}catch(final SQLException e){}
    Y-a-t-il une solution à mon pb ?
    Merci d'avance

  2. #2
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Pour réaliser des insertions de masses, il faut passer par un preparedStatement et une execution batch (que tu execute toutes les 1000 lignes par exemple). De plus vérifie que l'autocommit est à false et que tu ne fais pas un commit à chaque ligne.

    Il me semble que ce point est abordé dans la FAQ. Si ce n'est pas le cas une recherche sur le forum devrait t'apporter des réponses.

    [EDIT] en fait j'ai un bout de code sous la main ...
    en espérant que ça te serve ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
     
    // je crée mon preparedStatement
    PreparedStatement insert = Finance.connexion.getPrepared("INSERT INTO "+Finance.TABLE_INSERT+" (source,prog_db_id,pu_db_id,task_db_id,rsrc_code,period,erp_cost,acwp,ea,etc,remain_unit,actual_unit) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)");
     
    // là je parcours mes données à insérer
    while(itkey.hasNext()){
    	if(++cpt == 1000){ // toutes les 1000 lignes j'execute le batch
    		insert.executeBatch();
    		insert.clearBatch();
    		Finance.connexion.commit();
    		//trace("[INFO] Insertion intermédiaire OK.");
    		cpt = 0;
    	}
     
    	// récupération des valeurs
    	ligne = itkey.next();
    	//trace("valeurs à insérer : "+ligne.getValuesToInsert());
    	values = itval.next(); // là c'est ma liste de données à insérer pour 1 ligne
     
    	insert.setString(1,Common.source);
    	insert.setInt(2,ligne.getProg());
    	insert.setInt(3,ligne.getProj());
    	// bref ...			
     
    	// requete ok - Insertion dans le batch
    	insert.addBatch(); // ajout au batch
     
    }
     
    // execute les requetes restantes
    insert.executeBatch();
    insert.clearBatch();
    Finance.connexion.commit();
    insert.close();

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    511
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 511
    Par défaut
    Je te remercie pour la réponse, à plus tard si j'ai un pb

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

Discussions similaires

  1. Ralentissement d'eclipse suite à insert into suite
    Par Mengué georges dans le forum JDBC
    Réponses: 1
    Dernier message: 07/05/2007, 18h09
  2. Réponses: 5
    Dernier message: 19/10/2006, 14h28
  3. probleme d'INSERT INTO et JavaScript
    Par Matlight dans le forum Langage SQL
    Réponses: 3
    Dernier message: 04/03/2004, 15h36
  4. erreur SQL ...INSERT INTO
    Par naidinp dans le forum ASP
    Réponses: 20
    Dernier message: 18/09/2003, 11h38
  5. Insert Into + Date
    Par BoeufBrocoli dans le forum SQL
    Réponses: 10
    Dernier message: 13/08/2003, 11h23

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