Lenteur pour remplir une base access

sebarbraz Messages postés 7 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 3 juin 2005 - 10 juin 2004 à 16:31
cs_Lolux Messages postés 159 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 15 septembre 2005 - 10 juin 2004 à 17:40
Bonjour, je débute en Vb et j'ai un projet à réalisé: remplir une base de donné à partir d'un fichier texte contenant une date et une valeur (donnée océanographique).
Le problème est que qu'il y a env 25000 valeur dans le fichier texte.
L'insertion dans la base se passe bien, mais il dure environ 15 seconde. est ce normal?? je travail sur un p4 avec 512 mo.

princippe de mon code:

Pour chaque ligne du fichier texte:
formater la date
parcourir la base,
si déjà une valeur pour cette date
UPDATE
sinon
INSERT

pour l'ecriture j 'utilise les recordset:
aRS.Fields.Item("PH").value = valeur

Merci
Seb

2 réponses

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 129
10 juin 2004 à 17:19
L'ordre de grandeur doit être bon je pense, une petite suggestion tout de même : si les champs que tu mets à jour ne nécessite pas de recherche ou de requêtes, ne les indexe pas, tu y gagnera un peu de rapidité.

DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
0
cs_Lolux Messages postés 159 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 15 septembre 2005
10 juin 2004 à 17:40
A les jeunes ! Toujours plus vite ! ;p))

Moi je trouve que 15 secondes pour 2500 Enregistrement, qui plus est avec des tests de cohérence c'est plutôt pas mal voir pas mal du tout !

Pour aller encore plus vite (Si l'on estime que 15 seconde c'est du temps perdu), tu peux optimiser ton code pour gagner quelques milisecondes.
Pour ça ya plein d'astuces sur ce site.

Lolux
0
Rejoignez-nous