Johny wrote:
Is there a module for reading/modifing db files from Python?
Thanks for help
B.
--
http://mail.python.org/mailman/listinfo/python-list
I'm switching my company's software base over from FoxPro 6 to Python.
As part of that effort I have written (and am still enhancing :) a
dbf.py module which reads/writes both dBase III and FoxPro tables.
Index files are not supported, but the table can be sorted by any
combination of fields after being opened.
dBase III table/memo support is complete, but FoxPro field types
Currency, Double, General, and Picture are not supported and those
fields are stripped out when opened, and will not be in any saved
version of that table. At this point, the dbf file itself is read into
memory, all updates are held in memory, and the table is only written to
disk when the Save method is called.
Record navigation can be sequential or random, and Top, Bottom, Next,
and Previous are supported.
Searching is supported, using (or not) deleted records is supported,
adding and deleting fields is supported, saving as a csv file, and more.
Let me know if you'd like the module. Hope this helps.
Sample session follows...
>>> import dbf
>>> table = dbf.DbfTable('newtable','name C(10), age N(3.0), wisdom M')
>>> print table
Table: newtable.dbf
Type: dBase III Plus
Last updated: 2008-05-16
Record count: 0
Field count: 3
Record length: 24
--Fields--
name C(10)
age N(3.0)
wisdom M(10)
>>> table.Append()
>>> table.name = 'Ethan'
>>> table.age = 37
>>> table.wisdom = 'Python rules!'
>>> table.Scatter()
{'age': 37, 'name': 'Ethan', 'wisdom': 'Python rules!'}
>>> table.GetField('name')
'Ethan'
>>> table[0]
Ethan 37 1
>>> record = table[0]
>>> record.name
'Ethan'
>>> record.wisdom
'Python rules!'
>>> record.age = 40
>>> record
Ethan 40 1
>>> table[0]
Ethan 40 1
>>> table.Append({'name':'Lori', 'age':45, 'wisdom':'happy gardens make
a happy wife'})
>>> table.Scatter()
{'age': 45, 'name': 'Lori', 'wisdom': 'happy gardens make a happy wife'}
>>> for record in table:
... print record.name, record.wisdom
...
Ethan Python rules!
Lori happy gardens make a happy wife
>>>
--
http://mail.python.org/mailman/listinfo/python-list