我已經從文件組織軟件中遺留了DBF
,FPT
和CDX
文件。從CDX和FTP後綴判斷,我認爲它是一個Visual FoxPro數據庫。從第一眼看到DBF文件,它看起來像在那裏有field descriptors。我想查看哪些數據存儲在那裏並使用或提取任何有用的東西。如何從Delphi訪問Visual FoxPro表格?
00000000: 31 0B 06 0E-2F 00 00 00-08 02 28 01-01 00 00 01 1/ (
00000010: 00 00 00 00-00 00 00 00-00 00 49 40-01 7F 00 00 [email protected]
00000020: 4E 41 4D 45-00 00 00 00-00 00 00 43-01 00 00 00 NAME C
00000030: FF 00 00 00-00 00 00 00-00 00 00 00-00 00 00 00
00000040: 43 41 54 5F-52 4F 4F 54-49 44 00 42-00 01 00 00 CAT_ROOTID B
00000050: 08 00 04 00-00 00 00 00-00 00 00 00-00 00 00 00
00000060: 50 52 4E 54-5F 49 44 00-00 00 00 42-08 01 00 00 PRNT_ID B
00000070: 08 00 04 00-00 00 00 00-00 00 00 00-00 00 00 00
00000080: 41 54 54 52-49 42 53 00-00 00 00 49-10 01 00 00 ATTRIBS I
00000090: 04 00 04 00-00 00 00 00-00 00 00 00-00 00 00 00
000000A0: 49 53 5F 45-58 43 4C 55-44 45 00 49-1A 01 00 00 IS_EXCLUDE I
000000B0: 04 00 04 00-00 00 00 00-00 00 00 00-00 00 00 00
000000C0: 43 41 54 5F-49 44 00 00-00 00 00 42-1E 01 00 00 CAT_ID B
000000D0: 08 00 0C 00-00 00 00 00-00 00 00 00-00 00 00 00
000000E0: 54 53 00 00-00 00 00 00-00 00 00 37-26 01 00 00 TS 7&
000000F0: 08 00 14 00-00 00 00 00-00 00 00 00-00 00 00 00
我嘗試什麼至今:
- 升級出的現成的Windows 7 ODBC驅動程序存根版本6.01.8629.01
創建用戶DNS爲「自由表目錄」和指點其到文件集合的路徑
在各種工具(如SQL Explorer和SQL Server導入/導出嚮導)中未列出該OBDC DNS的表。
- 手動嘗試
SELECT * FROM
任何DBF文件給我[Microsoft][ODBC Visual FoxPro Driver]Not a table.
錯誤。
而且,我想:
- 創建BDE別名與FoxPro驅動
- 打開任何的數據庫DBF文件桌面
雙方試圖打開一個表導致Corrupt table/index header.
錯誤。
此外,我只是嘗試tDBF component,但它看起來被遺棄和加載與Kylix Libc
依賴關係,因此不編譯德爾福W/O固定。
噸問題:
- 我如何確認哪些文件是真正的Visual FoxPro?
- 上述症狀是否表示真正的數據損壞或只是不兼容/錯誤配置?
- 最後,如何使用現代的東西來訪問表格並開始檢查數據?
關於第二點 - VFP ODBC驅動程序將打開Visual FoxPro和任何其他版本,直接返回(可能)像dBase和Clipper這樣的DOS產品 - 所以如果它窒息,那它更可能是不是實際上是DBF格式,或者是與配置問題相反的損壞。我正在查看字段描述符從哪裏開始,對於我來說這對於DBF來說是錯誤的,它們應該晚點來。 – 2014-09-11 07:46:43
@Alan B,從我拼在一起的字段描述符應該從字節偏移量32開始,這似乎是上面的情況。 (我不是DBF專家) – Lars 2014-09-11 08:32:03
它看起來像它,結構解釋[這裏](http://msdn.microsoft.com/en-us/library/aa975386%28v=vs.71%29.aspx)。最快的檢查是用excel打開.dbf。 – 2014-09-11 08:41:19