Vitesse de mise à jour d'une base de données : recherche du meilleur rendement

TrafMaxime Messages postés 288 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 26 janvier 2012 - 10 nov. 2005 à 10:19
TrafMaxime Messages postés 288 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 26 janvier 2012 - 14 nov. 2005 à 16:41
Voilà, j'ai une base de données Access que j'exploite avec Vb.net (version 2002) grace aux objets ADO.net

et voilà ma méthode :



dim str as string = "select machin from chose"

dim dastr as new oledbdataadapter (str,
oledbconnection) ' mon provider est msjetoledb
4.0 (qlq chose comme ca)
dim dst as new dataset()

dst.clear()

dastr.fill(dst)

dst.tables(0).rows(0)("machin") = x

dim ocd as oledbcommandbuilder = new oledbcommandbuilder(dastr)

dastr.updatecommand = ocd.getupdate command

dastr.update(dst)



Ca marche bien.. mais pour des tables longues (dans les 30 000 champs),
le temps d'exécution commence à se faire sérieusement ressentir...

Si quelqu'un s'est déjà posé la question et a fait des recherches
là-dessus, j'aimerai vraiment savoir quelle est la méthode la plus
efficace, enfin la plus rapide..

En cas de réponse, merci beaucoup.
.Maytheforcebewithyou.Maxime.

2 réponses

olixelle Messages postés 506 Date d'inscription vendredi 30 juillet 2004 Statut Membre Dernière intervention 3 mars 2008 2
14 nov. 2005 à 13:35
tu mets a jour combien de lignes ? toutes ?
Quelques pistes:
- ne passe pas par le commandbuilder pour générer ta requetes, il ne les optimisent pas
- si tu parcours les lignes, evite le dataadapter et préféres le datareader

Rollerman
0
TrafMaxime Messages postés 288 Date d'inscription mercredi 4 mai 2005 Statut Membre Dernière intervention 26 janvier 2012 1
14 nov. 2005 à 16:41
Merci pour ces indices.. je vais voir ce que ca donne.
0
Rejoignez-nous