генерировать файлы DBF - PullRequest
       11

генерировать файлы DBF

1 голос
/ 05 декабря 2009

Как сгенерировать файлы DBF с помощью delphi?

Дополнительная информация:

Мне нужна переносимая база данных для запуска в режиме pendrive

Я не знаю, является ли DBF лучшим решением.

Мне нравится MySql, но трудно найти портативную версию

Сейчас я работаю с XML, но не знаю, как сделать запрос.

Ответы [ 5 ]

3 голосов
/ 05 декабря 2009

TDBF представляется одним из наиболее часто используемых (и все еще поддерживаемых) пакетов:

http://tdbf.sourceforge.net/

3 голосов
/ 05 декабря 2009

Если вы открыты для альтернативных форматов, я настоятельно рекомендую вам проверить встроенный Firebird. Я почти уверен, что я загрузил свою базу данных и мое приложение на флэш-накопитель в качестве эксперимента около двух лет назад, и все прошло нормально. Я долго держался за файлы DBF, но как только я переключился, я больше не возвращался. Если вы хотите попробовать, рассмотрите возможность использования DBExpress и драйвера Interbase. Хотя это официально не поддерживается, я не нашел никаких несовместимостей. Для инструмента визуального управления получите персональную версию IBExpert.

1 голос
/ 05 декабря 2009

Хотя я не использовал его, есть компонент jdDbf , который, как представляется, был недавно обновлен и который работает. Следует иметь в виду, что формат Dbf имеет много разновидностей, однако большинство различий, по-видимому, содержится в индексных файлах, поэтому, если вам нужно использовать его с другой системой, вам может потребоваться перестроить их.

Для встроенной базы данных, которая хорошо работает на USB-диске, я бы посмотрел на SQLite. Существует реализация Delphi DISQLite3 , которая имеет бесплатную и профессиональную версию, которая будет хорошо работать и очень рекомендуется. В настоящее время его используют многие программы коммерческого качества, в том числе FeedDemon .

1 голос
/ 05 декабря 2009

Ух, я поражен, что этот URL все еще действителен!

Если вы хотите создать DBF с BDE API, вы можете использовать методы здесь: http://info.borland.com/devsupport/bde/bdeapiex/dbicreatetable.html

Однако, в зависимости от размера набора данных, который у вас будет, это звучит как однопользовательское приложение, которое отлично работает с файлом «MyBase» - другое имя для файлов, используемых TClientDataSet. Вы можете сохранить его в формате XML или в двоичном формате (CDS), просто установив свойство TClientDataSet.FileName, которое будет использоваться для чтения и записи набора данных. С помощью этого вы даже можете создавать вложенные наборы данных.

Если вы хотите иметь наиболее эффективный однопользовательский режим, также отключите журнал изменений на TClientDataSet.

procedure TFormCDSDataBug.ButtonOpenClick(Sender: TObject);
begin
  ClientDataSet1.FileName := ExtractFilePath(Application.ExeName) + 'MyData.cds';
  ClientDataSet1.LogChanges := False;
  ClientDataSet1.Open;
end;
1 голос
/ 05 декабря 2009

Не занимался этим годами!
В зависимости от вашей версии Delphi и того, что вы хотите сделать, вы можете использовать BDE или найти некоторые специализированные компоненты, которые читают / пишут напрямую в собственный формат файла DBF.

...