>Ed,
>
>>Nope - VFP does not reuse blocks in a memo field when the field is updated, so each REPLACE is expensive - it create new blocks to write the entire field content fresh each time you update it.
>
>This isn't true. VFP will reuse the allocation if the content still fits. There is a bug in VFP5 which prevents memo reuse but it was fixed in VFP6.
David,
Are you sure it's fixed in VFP6/SP3? I just tried a loop that replaces the contents of a memo field 1000 times:
FOR x=1 TO 1000
REPLACE memfield WITH REPLICATE('x',100)+STR(x)
ENDFOR
There was still substantial bloat that required pack memo to remove. The size of the file didn't change until I closed the table and then re-USEd it.