Re: Foxpro goto command and deleted records

Discussion in 'Python' started by Ethan Furman, Jul 18, 2012.

  1. Ethan Furman

    Ethan Furman Guest

    MRAB wrote:
    > On 18/07/2012 03:19, Ethan Furman wrote:
    >> 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.
    >>

    > If use_deleted is false, does that mean that deleted records are
    > hidden, or just that when iterating through the records the deleted
    > ones aren't yielded?


    Definitely the latter, but I'm starting to wonder if the former should
    also be the case.

    ~Ethan~
    Ethan Furman, Jul 18, 2012
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Ethan Furman

    Foxpro goto command and deleted records

    Ethan Furman, Jul 17, 2012, in forum: Python
    Replies:
    3
    Views:
    245
    Dennis Lee Bieber
    Jul 18, 2012
  2. Ian Kelly
    Replies:
    0
    Views:
    145
    Ian Kelly
    Jul 18, 2012
  3. MRAB
    Replies:
    0
    Views:
    163
  4. Ethan Furman
    Replies:
    0
    Views:
    153
    Ethan Furman
    Jul 18, 2012
  5. Ethan Furman
    Replies:
    0
    Views:
    138
    Ethan Furman
    Jul 18, 2012
Loading...

Share This Page