将DBase(dbf)文件定期导入MySQL表的最佳方法是什么?

时间:2013-02-25 03:45:10

标签: python mysql dbf dbase

DBF文件每隔几小时更新一次。我们需要将新记录导入MySQL并跳过重复项。我没有任何DBF文件的经验,但据我所知,我们正在使用的那些人没有唯一的ID。

如果没有现成的实用程序,我打算使用Python。

2 个答案:

答案 0 :(得分:0)

DBF格式是在30多年前开发的,当时典型的PC曾经拥有640K的RAM。它很容易阅读,在我为它编写Autocad数据库驱动程序的那天(是的,我已经老了)。基本上,您所要做的就是创建一些C结构并从/向磁盘加载/转储它们。

有一个Python library for reading DBF files,我不时使用它,因为Shapefiles(一种流行的GIS数据格式)通常包含一个DBF文件。

示例:

>>> from dbf import Table
>>> placenames = Table('PLCNAM.DBF', codepage='cp1252')
>>> placenames.open()
>>> for place in placenames:
...     print(place.count, place.name)
41   Springfield
26   Clinton
25   Madison
24   Franklin
...

您可能想看一下这个项目:http://sourceforge.net/projects/dbfconverter/

答案 1 :(得分:-1)

当您说您正在使用dBase时,我认为您可以访问(。)点提示符。

在点提示符处将.dbf文件转换为分隔的文本文件。

使用必要的命令将分隔的文本文件重新转换为MySql数据文件 MySQL的。我不知道它的实际命令。所有DBMS都有命令来做到这一点 工作

为了消除重复,你必须在填充时重复 通过用dBase编写的程序将数据传输到.dbf文件。