|
|||
|
MRAB wrote:
> On 17/07/2012 23:57, Ethan Furman wrote: >> In Foxpro if you do a >> >> GOTO 7 >> >> with deleted off and record 7 is deleted, the record pointer doesn't >> move (at least in version 6). >> >> I don't like that. >> >> I see four other options: >> >> 0) don't move the pointer (listed for completeness) >> 1) go to that record anyway >> 2) go to the next undeleted record >> 3) go to the seventh undeleted record (possibly the least practical) >> 4) raise an exception >> >> Any opinions? >> > What happens when you 'delete' a record? Does it disappear immediately, > or is it merely marked for deletion? Marked for deletion. > If it is marked for deletion, can it be unmarked? Will a marked record > be removed when the file is closed, or does the file need to be > explicitly purged/compacted? Yes, it can be unmarked. No, the table must be explicitly packed. > If it is merely marked, then I think the best option is 1, or possibly > 4 if the file is compacted when closed. There is a use_deleted setting that controls whether deleted records are accessed or skipped. Skipping is fine when looping, not so fine when going directly to a particular record. ~Ethan~ |
|
|
||||
|
||||
|
|
![]() |
| Thread Tools | |
| Display Modes | |
|
|