Нужны ли мне файлы .fpt и .cdx для извлечения данных из Foxpro или файл .dbf содержит все данные - PullRequest
2 голосов
/ 01 сентября 2010

Мне нужно перенести много файлов foxpro через Интернет, а затем импортировать данные в базу данных доступа. В некоторых случаях файл .fpt в несколько раз больше, чем файл .dbf с тем же именем. Из того, что я читал, кажется, что файл .dbf может содержать все и что я могу игнорировать файлы .cdx и .fpt. это правильно

Ответы [ 2 ]

8 голосов
/ 01 сентября 2010

CDX - это составной индексный файл.Из справки FoxPro:

Если файл индекса структурного соединения таблицы не может быть найден или удален или переименован, при попытке открыть таблицу появляется диалоговое окно.Если вы выберете кнопку Отмена по умолчанию, таблица не будет открыта.Выбор Ignore открывает таблицу и удаляет флаг в заголовке таблицы, который указывает, что присутствует связанный файл индекса структурного соединения.

Совет Чтобы повторно связать структурный индекс состава, который стал отделенным от его таблицы, введите следующую команду: USE TableName INDEX CDXFileName

Если вы попытаетесь USE таблица из FoxProбез наличия файла CDX вы получите диалоговое окно Structural CDX file not found с кнопками Ignore и Cancel.

Файл .fpt содержит данные из полей типа Memo.Если в dbf есть поле типа Memo, а файл .fpt отсутствует, FoxPro не сможет открыть dbf.FoxPro отобразит окно с сообщением о том, что файл заметки отсутствует или недействителен.

По результатам моего тестирования с Access это, похоже, не повлияло на импорт данных с отсутствующим файлом CDX, но я не смог импортировать данные безфайл FPT.

2 голосов
/ 02 сентября 2010

Чтобы расширить ответ Дейва, да, файлы .FPT и .CDX являются частью "таблицы".Любые файлы, отмеченные .TBK, могут быть опущены, это резервные копии таблицы.Кроме того, файлы .FPT и .CDX присутствуют только при наличии полей memo и индексов таблиц, поэтому отсутствие одного из них не обязательно указывает на проблему с таблицей.

Также будьте готовы к случайному повреждению файла таблицы, если это обычная передача по FTP.

...