I hope there is a way out of this database situation

kirstenmoran

Beta member
Messages
1
Location
USA
I work on Visual FoxPro 9 database. Almost every day I add new data in it. This day has become an exception, when opening .dbf, I saw: "Main.dbf is not a table". To repair dbf file I tried to use some solutions from Google, one of colleagues advised a guide, but none of it didn't aid me.
 
Unfortunately if the normal repair tools don't work, then you're probably out of luck on an "easy" solution. The only other thing I can recommend (short of a data recovery specialist) is to write your own program to examine the file in light of the DBF file structure (DBF file structure. Xbase File Format Description. DBF file type, dbf field type) and use that to pull out at least some of the data. That's by no means a quick & easy solution though, and will need someone with a reasonable amount of development experience to pull off successfully.
 
I work on Visual FoxPro 9 database. Almost every day I add new data in it. This day has become an exception, when opening .dbf, I saw: "Main.dbf is not a table". To repair dbf file I tried to use some solutions from Google, one of colleagues advised a guide, but none of it didn't aid me.

I assume you have no backup and you are running in NOARCHIVELOG mode, otherwise you wouldn't be asking this question.
Assuming that your db file is really corrupted, then you can startup the database without this file:

https://www.codeproject.com/Articles/20116/Repair-DBF-File-corrupted-by-power-failer
https://download.cnet.com/Recuva/3000-2242_4-10753287.html
https://dbf.recoverytoolbox.com/

1. Take a full backup of all your current db files, control files, redo log files.
2. Startup mount the instance
3. ALTER DATABASE DATAFILE 'fullpath/filename' OFFLINE DROP;
4. ALTER DATABASE OPEN;
This will drop the file from your db, so all data in it will be lost, but the data in other tablespaces will be accessible.
If this doesn't work, restore to its original state using the backup taken in step 1.
However, before concluding that your file is corrupt, try to see what happened to it.
Post the following info:
Your archivelog/noarchivelog mode.
Tablespace to which this file belongs.
Oracle error when starting up the database.
Also, startup mount your db and :
SELECT * FROM V$DATABASE;
SELECT * FROM V$DBFILE;
SELECT * FROM V$RECOVER_FILE;
 
Did you ever get it fixed, i googled it and it seems like a really common problem with foxpro. I know hindsight is 20/20 but backups. Its unfortunate whenever i see posts like this is reminds me to make backups.
 
Back
Top Bottom