我试图从csv读取数据行,并将它们作为记录追加到现有的Visual FoxPro dbf中。现有的Visual FoxPro dbf具有许多长度超过10个字符的字段,但这在使用模块dbf或dbfpy时会导致错误。

这是表结构简化版本的示例:

import dbf
table=dbf.from_csv('seasdate.csv',field_names="zone_num   season_code",dbf_type='Vfp')
#table to write to
table2=('temptable','zone_num C(2); season_code C(1)',dbf_type='Vfp')
for datum in table:
    table2.append(datum)


这将返回:'dbf.ver_2.FieldSpecError:最大字段名称长度为10。'season_code'为11个字符长。

我知道在Vfp表中字段名称的长度可能会超过10个字符,因为正如我提到的,我最终将追加到的表已经存在。任何帮助是极大的赞赏!

最佳答案

我不使用dbfpy,而是查看该语法,看起来您正在创建新的“免费”表。空闲表的fieldNames的长度限制为10个。

可能您应该在这里查看www.leafe.com和Dabo Framework。 Ed Leafe来自VFP社区,他非常了解VFP数据库格式。

关于python - Python 2.7-从csv读取数据并写入Vfp dbf,其字段名称长度超过10个字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33280988/

10-10 15:55