convert Dbase (.dbf) files to SQLite databases

H

Helmut Jarausch

Hi,

I have a lot of old Dbase files (.dbf) and I'll like to convert these
to SQLite databases as automatically as possible.
Does anybody know a tool/Python script to do so?

I know, I could use dbfpy and create the SQLite table and import all
data. But is there something easier?

Many thanks for a hint,

Helmut.

--
Helmut Jarausch

Lehrstuhl fuer Numerische Mathematik
RWTH - Aachen University
D 52056 Aachen, Germany
 
D

David Lyon

Hi,

I have a lot of old Dbase files (.dbf) and I'll like to convert these
to SQLite databases as automatically as possible.
Does anybody know a tool/Python script to do so?

I know, I could use dbfpy and create the SQLite table and import all
data. But is there something easier?

yes...

Use OpenOffice-Scalc or MS-Office-Excel to open the table...

Export to csv....

Use SQLite Manager (https://addons.mozilla.org/en-US/firefox/addon/5817)

and use the import wizard to import your data....

It shouldn't take too long...

David
 
E

Ethan Furman

Helmut said:
Hi,

I have a lot of old Dbase files (.dbf) and I'll like to convert these
to SQLite databases as automatically as possible.
Does anybody know a tool/Python script to do so?

I know, I could use dbfpy and create the SQLite table and import all
data. But is there something easier?

Many thanks for a hint,

Helmut.

Greetings!

If your tables are either dBase III or Visual Foxpro 6 (may work with
other VFP versions...) you can try
http://groups.google.com/group/python-dbase

#open table
import dbf
table = dbf.Table('/path/to/old/dbf')

#generate .csv file
table.export() # defaults to same name with csv extension

#access records
for rec in table:
tups = tuple(rec)
lst = list(rec)
dct = rec.scatter_fields()

I haven't used SQlite, so I'm unable to provide samples for that portion
of the conversion.

Hope this helps.

~Ethan~
 
J

John Machin

yes...

Use OpenOffice-Scalc or MS-Office-Excel to open the table...

Max 64K rows for Scalc and Excel 2003; 2007 can take 2**20 rows.
Only old dBase (not dBase 7). Memo fields not handled. Visual FoxPro
DBFs not supported by Excel even tho' VFP is an MS product.

Export to csv....
Yuk.


Use SQLite Manager (https://addons.mozilla.org/en-US/firefox/addon/5817)

and use the import wizard to import your data....

It shouldn't take too long...

.... before you get sick of the error-prone manual tasks.

I'd write a script that took a DBF file, analysed the field
descriptions, made a CREATE TABLE statement, executed it, and then
started doing inserts. Fairly easy to write. Scripts have the great
benefit that you can fix them and re-run a whole lot easier than
redoing manual steps.

If dbfpy can't handle any new-fangled stuff you may have in your
files, drop me a line ... I have a soon-to-be released DBF module that
should be able to read the "new" stuff up to dBase7 and VFP9,
including memo files, conversion from whatever to Unicode if
needed, ...

Cheers,
John
 
E

Ethan Furman

John said:
If dbfpy can't handle any new-fangled stuff you may have in your
files, drop me a line ... I have a soon-to-be released DBF module that
should be able to read the "new" stuff up to dBase7 and VFP9,
including memo files, conversion from whatever to Unicode if
needed, ...

Cheers,
John

Cool! I'm looking forward to it!

~Ethan~
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,767
Messages
2,569,572
Members
45,046
Latest member
Gavizuho

Latest Threads

Top