>>> master.key. I can't find any REPLACE ALL/FOR command in my form but I
>>> certainly have DELETE FOR EMPTY(xxxfield) (details table) before I do
>>> tableupdate. Do you think it matters?
>>
>>You should also think about if the best place for your DELETE FOR statement
>>is right before the tableupdate(). If it is, make the changes stated above
>>and definitely create an index on EMPTY(xxxfield) (or whatever the complete
>>FOR clause contains). This wlil minimize the time that it takes to perform
>>the DELETE FOR statement, and thus the risk of a collision during your
>>TABLEUPDATE().
>
>Why not scan the records for updating and then
>
>scan for new_records
> if empty(xxxfield)
> delete
> else
> =tableupdate()
> endif
>ends
>
>This way the deletion happens within the buffer only, i.e. it doesn't
>touch the underlying table. Maybe TableRevert() could be issued for the
>deleted records, so the deleted records never get copied from
>the buffer into the table. This way there's no locking (except automatic
>locking on TableUpdate(), but that's unlocked right away).
That is a good idea. Thanks.
Précédent
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement