Go Premium for a chance to win a PS4. Enter to Win


Corrupted DBF file

Posted on 1998-10-26
Medium Priority
Last Modified: 2008-02-01
I have a problem where dbf files will show an incredibly large (not to mention completely impossible) size.  Currently, the size reported if I do a listing is over 3 gig.  This is obviously wrong since it is stored on a 1gig drive.  Any ideas why this is happening or how to fix it?
Question by:lcoombes

Expert Comment

ID: 1025859
Sounds like a corrupt FAT table.

Try backing up the entire drive (on a sector by sector rather than file basis if you can, i.e.: an immage backup) and then try running scan disk.

NOTE: Scan disk will as likely as not destroy the DB file. If you can´t do an immage backup, and don´t have a backup of the DB, you´r best shot will probably hex editing the FAT and fixing it by hand.

Expert Comment

ID: 1025860
Carefull jpk,

When this happens, indeed the FAT has been corrupted.
The only way to fix this is running scandisk.
Scandisk will normally fix things the right way.
You will not be able to backup your harddisk. When your fat got damaged, you cannot even make a copy of your DBF files to another disk or diskette.
Noth that your PC has 2 fat's. When one got mixed up, the other can be placed over the forstµ. That's what scandisk does.
There is allways a possibility your disk is severe damaged. Scandisk will not put things right then. It is however the only thing to do.

Start Scandisk (in DOS) or clicking my computer, selecting your C-drive. Click the right button and choose properties.

Click the tabpage EXTRA and further, click Ckeck disk. Scandisk will launch and report the errors. Choose Fix for every error reported. Your DBF files should be recovered if (and only if) your disk itself isn't damaged.


Author Comment

ID: 1025861
Okay, to start off, I made a mistake.  It is the dbt file.  Not the dbf.  Secondly, this is on a Novell Intranetware 4.11 server, so it does not use the same sort of FAT system.
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.


Accepted Solution

foxsage earned 300 total points
ID: 1025862
If the database have memo fields it could be that the memo fields have grown too large.

If so, memo fields are failry easy to 'shrink'.

Author Comment

ID: 1025863
Okay, there are memo fields.  I take it that the memo data is stored in the dbt file.  How do I shrink them?  And why would they be reporting a size which is larger than the drive they are residing on?

Author Comment

ID: 1025864
Please explain how to "shrink" these dbt files.  I think your answer is right on target, but you did not tell me how to fix it.  Let me know soon.

Expert Comment

ID: 1025865
The problem with memo fields is that their block size can grow enormously and eat up huge amounts of disk space. Foxpro uses SET BLOCKSIZE to set block size for memo fields.  To determine the block size of memo fields for foxpro tables, open the table and issue the ?sys(2102) command, which returns the size of the memo field. (In foxpro, the default is 64).

However, it doesn't sound like you are using foxpro tables since the memo file extension is .dbt instead of foxpro's .fpt.

Anyway, to fix corrupted memo fields for dbf, fpt or dbt, I suggest an inexpensive software program called MemoPlus by Rory Data International. I think its the best software available and a must for database applications. (I don't think there is an adequate programming solution to fixing corrupted memo fields.)

Hope this helps.

Expert Comment

ID: 1025866
if you use dbase and can open the table (only size shown is wrong) i will give you a tip if you´re interested.

Author Comment

ID: 1025867
Well, I've finally gotten a chance to check into this (been out of town for a while) and could not find MemoPlus (except for the Palm Pilot program) or Rory Data International.  Is there a web site where I can find this software?  Please let me know.  Thanks.

wk51 - Sure.  We have already loaded off of a backup, but this problem has occurred before.  I can open the database when it is occuring, so I'd love to hear your idea.  Thanks!

Expert Comment

ID: 1025868
Look at http://loki.borland.com/winbin/bds.exe?getdoc+2821+Delphi 
description of *.DBT file structure. You can easy check only header of your .DBT file and manually (in any binary editor) write correct information. I've made it some times.

Expert Comment

ID: 1025869
Have your network administrator run VREPAIR (or similar on 4.11) on the offending volume.
This will check the volume for any allocation problems.
If that doesn't fix the problem, the db prog may be the cullprit.
Did it ever run correctly?

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This post looks at MongoDB and MySQL, and covers high-level MongoDB strengths, weaknesses, features, and uses from the perspective of an SQL user.
In today's business world, data is more important than ever for informing marketing campaigns. Accessing and using data, however, may not come naturally to some creative marketing professionals. Here are four tips for adapting to wield data for insi…
This is a high-level webinar that covers the history of enterprise open source database use. It addresses both the advantages companies see in using open source database technologies, as well as the fears and reservations they might have. In this…
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…

916 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question