Je travaille sur une toute vieille base de donnée DBF. mon souci est que je parcours 16970 article ds un curseur. Par article je dois faire un update d'un champs situé ds ma table de ligne d'achat (575000 tuples).
je fais donc un:
update lignes_achat set x=y where articleID=curseur.articleID
je boucle donc la dessus.
Mon soucis est le suivant. il passe environ 30 secondes sur chacun des articles
je le vois via mon "wait compteur window nowait"
Y a t il une instruction que je pourrais ajouter afin d'accélérer ceci...
sinon je sens que mon programme va tourner pendant 5 jours...
tu nous donnes le code exact, Samy? et la structure des 2 tables, avec les index... et si les tables sont référencées dans un dbc, les triggers et règles de validation.
du coté de Rushmore:
tu as bien un SET OPTIMIZE ON ? (c'est la valeur par défaut, mais vérifie quand même)
Que te donne un SYS(3054,11,"lcResultat")?
cette commande s'utilise ainsi:
LOCAL lcResultat
=SYS(3054,11,"lcResultat")
update lignes_achat set x=y where articleID=curseur.articleID
? lcResultat