Mike Yearwood
Toronto, Ontario, Canada
Information générale
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
>>>I am constructing an archive utility. As part of this I require to append fields from an existing dbf to a newly created archive file. The dbf is around 8mb with an associated 5mb fpt file. Even when I mark say only 2 of the records to be archived it seems to take an age to append the records fromt the dbf to the new archive file. On inspecting the archive file I find I have my 2 selected records - but the fpt file has come across in it's entirety (5mb); If I pack the new archive dbf it reduces the fpt to a few k in size. I am presuming the append operation is taking so long because of the size of the original fpt file.
>>>
>>>Is this behaviour normal?
>>>
>>>Thanks
>>>Barry Sutton
>>
>>It depends on exactly what you are doing. I suspect you are doing this:
>>
>>SELECT Archive
>>APPEND FROM existing FOR marked = .T.
>>
>>Best to use SQL to
>>
>>SELECT * FROM existing WHERE marked = .T. INTO CURSOR c_Temp NOFILTER
>>SELECT Archive
>>APPEND FROM DBF('c_Temp')
>
>Bingo! Lightning quick - more like the VFP I know.....
>Thanks Mike.
>
>Barry Sutton
The reason - IIRC - is that every record is temporarily appended to Archive and then deleted if it does not meet the FOR condition.
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