Difference between revisions of "fpdbfexport"

From Free Pascal wiki
Jump to navigationJump to search
(another example)
(this is also a lazarus package)
Line 1: Line 1:
 
== Overview ==
 
== Overview ==
 +
=== FPC ===
 
The fpdbfexport module is part of the FreePascal FCL database modules.
 
The fpdbfexport module is part of the FreePascal FCL database modules.
 
This export module provides export to DBF formats (e.g. DBase IV format). This format is still popular because it is simple, and - opposed to e.g. csv - is clear about what data type is enclosed in its fields.
 
This export module provides export to DBF formats (e.g. DBase IV format). This format is still popular because it is simple, and - opposed to e.g. csv - is clear about what data type is enclosed in its fields.
 
Many spreadsheet and database programs can import DBF files.
 
Many spreadsheet and database programs can import DBF files.
 +
 +
=== Lazarus ===
 +
In Lazarus, the DBF export component is located on the ''Data Export'' tab.
  
 
== Limitations and known bugs ==
 
== Limitations and known bugs ==
Line 25: Line 29:
 
[[Category:Databases]]
 
[[Category:Databases]]
 
[[Category:FPC]]
 
[[Category:FPC]]
 +
[[Category:Lazarus]]
 +
[[Category:Packages]]
 +
[[Category:Data import and export]]

Revision as of 17:02, 3 December 2013

Overview

FPC

The fpdbfexport module is part of the FreePascal FCL database modules. This export module provides export to DBF formats (e.g. DBase IV format). This format is still popular because it is simple, and - opposed to e.g. csv - is clear about what data type is enclosed in its fields. Many spreadsheet and database programs can import DBF files.

Lazarus

In Lazarus, the DBF export component is located on the Data Export tab.

Limitations and known bugs

In FPC 2.6.2 (e.g. supplied with Lazarus 1.0.8), exporting to e.g. dbase IV format - that has a 10 character field length limit - of fields with longer field names will throw an error unless you populate the export fieldname mapping yourself.

This bug has been fixed in FPC trunk revision 24490 See [1]

Example

See the examples in your FPC source directory $(fpcdir)\source\packages\fcl-db\tests (see Databases#Running_FPC_database_tests), specifically testdbexport.pas.

The various export formats are run in TestDBFExport_DBaseIV, TestDBFExport_DBaseVII, TestDBFExport_FoxPro, etc.

The procedure TTestDBExport.GenericExportTest shows how you can export to only supported field types (handy if you do not know in advance what field types are used in a dataset).

Another useful example is the the dbftool example included in FPC 2.7.1+: creating, using DBF files and exporting data (to DBF and other formats) using db export (also downloadable via http://svn.freepascal.org/svn/fpc/trunk/packages/fcl-db/examples/)


See also

  • Lazarus Tdbf Tutorial Tutorial and documentation on TDBF, the DBF support in FPC SQLDB (which is also used in Lazarus). Link to official TDBF documentation.