Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Pessimistic Row Buffering vs No Buffering
Message
De
18/09/2000 11:36:41
 
 
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Divers
Thread ID:
00417335
Message ID:
00417643
Vues:
15
Hi Vlad,

> Hmm, why not use 'FCOUNT()' function?

Sounds good. Haven't use FCOUNT() before. Thanks.

> Use 'evaluate()' function instead of '&', it is twise more quick. For

I wondered about that. Have read that the macro substitution is slow.

> The most quick way, however, is put fields list into array (afields

Hmm. Hadn't thought of that either. I'll use the arrays, that makes sense for getting top speed! BTW- Skipping the General fields and getting rid of the select statement looks good too.

Thanks for all your help,
Bill

example:
>
>
>mnTotFields = FCOUNT("students")
>* SELECT students && put it outside of loop - speed up
>* Finally, we don't need it at all
>FOR mnHitPoint=1 to mnTotFields  &&Check Each Field
>	fieldname = field(mnHitPoint,"students")
>        fvalue = evaluate("students."+fieldname)
>        if vartype(fvalue) == 'G'
>            loop && skip general fields - not comparable
>        endif
>        foldvalue = OLDVAL(fieldname)
>	IF !(IsNull(fvalue) AND !IsNull(foldvalue) OR ;
>            !IsNull(fvalue) and IsNull(foldvalue) ) AND ;
>            fvalue == foldvalue &&This user hasn't changed it
>        ....
>        endif
>endfor
>
>

>
> The most quick way, however, is put fields list into array (afields function) and put buffered field values into array ('copy to array'). Buth above way will work fine too even for large tables with many fields.
Bill Leber
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform