[comp.databases] dbase files corrupt

atieu@skat.usc.edu (Anthony Tieu) (03/29/91)

Here is a little problem with dbase files we have.
We can't get to a couple of fields in one of the records.
When in edit mode, the cursor would jump(skip) over the
fields. We can solve the problem by deleting that particular
record and packing the database.

Is this cause by corruption when people reboot the machine
while the database is open? What happens when people do
this intentionally or unintentionally. What is
the solution people out there in the net is using? 

We have multi-user applications running on a Novell 286 2.15 
network in using foxbase.

-Thanks
Anthony Tieu




-- 
______________________________________________________________________________

campus: University of Southern California  |     "Black Velvet"
        Alumni House                       |           --Alannah Myles

pew@cs.brown.edu (Peter E. Wagner) (03/30/91)

In article <31433@usc>, atieu@skat.usc.edu (Anthony Tieu) writes:
|> Here is a little problem with dbase files we have.
|> We can't get to a couple of fields in one of the records.
|> When in edit mode, the cursor would jump(skip) over the
|> fields. We can solve the problem by deleting that particular
|> record and packing the database.
|> 
|> Is this cause by corruption when people reboot the machine
|> while the database is open? What happens when people do
|> this intentionally or unintentionally. What is
|> the solution people out there in the net is using? 
|> 
|> We have multi-user applications running on a Novell 286 2.15 
|> network in using foxbase.
|> 

I would try reindexing first.  Generally the index files are what get
corrupted, though DBF's go too.  When reindexing, use "index on ..."
rather than "reindex".  Also, are you using memo fields?  These are
always suspect (my confidence is only medium, but I use them quite a
lot).  Many people avoid "pack" and use "copy for not deleted to
<filename>" and then do a delete and a rename.  This process removes
extra space from the memo file that "pack" does not, and also avoids a
reported pack-bug (some people swear it exists, others have never seen
it - I have never seen it, and I've packed thousands of times).

There are products that will "save" corrupted DBF's.  I think they do
a pretty good job, and should allow you to save the partially
corrupted record.  I wish I could give you names, but I don't remember
any offhand.  A quick search in a DB magazine like Database Advisor
should yield results.


-- 
----------------------------------------------------------------
Peter E. Wagner                                 pew@cs.brown.edu
Department Computer Science
Brown University
----------------------------------------------------------------

alan@ahmcs.uucp (Alan Mintz) (04/05/91)

In article <31433@usc>, atieu@skat.usc.edu (Anthony Tieu) writes:
> Here is a little problem with dbase files we have.
> We can't get to a couple of fields in one of the records.
> When in edit mode, the cursor would jump(skip) over the
> fields. We can solve the problem by deleting that particular
> record and packing the database.

This is often caused by the appearance of certain un-printable characters
in a field. For example, putting a line-feed or <CR> character into a 
field (usually accidentally through APPEND FROM ... TYPE SDF) will cause
most full-screen editing functions to gag. If you really need the data,
use COPY TO ... TYPE SDF to export the affected records to a text file.
Then use your favorite tool to extract the important data. 

Usually, a REPLACE off the corrupted fields will resolve the problem
(as, of course, will deleting the records and packing the database).

-- 
< Alan H. Mintz             | Voice +1 714 980 1034 >
< Micro-Quick Systems, Inc. | FAX   +1 714 944 3995 >
< 10384 Hillside Road       | ...!uunet!ahmcs!alan  >
< Alta Loma, CA  91701 USA  | alan@mq.com           >