Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Fastest way to TOUCH a DBF without changing data?
Message
From
18/12/2006 16:46:44
Mike Yearwood
Toronto, Ontario, Canada
 
General information
Forum:
Visual FoxPro
Category:
Troubleshooting
Miscellaneous
Thread ID:
01178674
Message ID:
01178719
Views:
16
I'm not sure I fully understand what you're trying to do.

You want to update the file's date/time if there are undeleted records?

If you have a big table and set deleted is on, GO 1 / GO TOP can be very slow. I think the best thing you can do is:

SET DELETED OFF
USE XXXX
IF RECC()>0
LOCATE FOR NOT DELETED()
IF NOT EOF()
LOCAL m.lcField
m.lcField = FIELD(1)
REPLACE &lcField. WITH &lcField.
ENDIF
ENDIF
USE


>That seems like a good one. For that matter, I wonder if you could just say:
>Update yourtable set field1=field1 where .F.
>I wonder if it would still change the file's timestamp by just doing that?
>
>>
>>Update yourtable set field1=field1 where Recno()=1 && replace field1 with the actual name
>>
>>>Is there a way more efficient than this (assuming no records are marked for deletion in normal use, and that if zero records, then there is not need for the TOUCH)?
>>>USE XXXX
>>>If RECC()>0
>>>  GOTO 1
>>>  DELETE
>>>  RECALL
>>>ENDIF
>>>USE
>>>
>>>Thanks!
Previous
Reply
Map
View

Click here to load this message in the networking platform