【问题标题】:add field dbf file error添加字段dbf文件错误
【发布时间】:2017-08-28 19:43:04
【问题描述】:

我在 DBF 文件中添加一列,出现此错误,我该如何解决?

import dbf

db = dbf.Table('crop2-fx.dbf')
with db:
    db.add_fields('tipoclasse C(10)')
C:\Users\PC\Anaconda2\python.exe" "C:/Users/Secretaria-OBT/Desktop/Estágio Python/23/dbf/addField.py" 回溯(最近一次通话最后): 文件“C:/Users/PC/Desktop/Python/23/dbf/addField.py”,第 5 行,在 db.add_fields('tipoclasse C(10)') 文件“C:\Users\PC\Anaconda2\lib\site-packages\dbf\ver_2.py”,第 5015 行,在 add_fields old_table = self.create_backup() 文件“C:\Users\PC\Anaconda2\lib\site-packages\dbf\ver_2.py”,第 5240 行,在 create_backup bkup = Table(new_name, self.structure(), codepage=self.codepage.name, dbf_type=self._versionabbr, on_disk=on_disk) 文件“C:\Users\PC\Anaconda2\lib\site-packages\dbf\ver_2.py”,第 4784 行,在 __init__ self.add_fields(field_specs) 文件“C:\Users\PC\Anaconda2\lib\site-packages\dbf\ver_2.py”,第 5059 行,在 add_fields raise FieldSpecError(exc.message + ' (%s:%s)' % (meta.filename, name)) dbf.ver_2.FieldSpecError:数字字段必须介于 1 到 19 位之间,而不是 24 位(C:\Users\SECRET~1\AppData\Local\Temp\crop2-fx_backup.dbf:ampl_b0) 进程以退出代码 1 结束

【问题讨论】:

    标签: python gdal dbf


    【解决方案1】:

    问题是现有数字字段之一大于当前处理的dbf(最大为 19 位)。我很确定目前解决这个问题的唯一方法是在使用 dbf 之前减少数字字段。

    【讨论】:

    • 如何减少数字字段? 24 到 19 点?
    • 您必须在创建 dbf 文件的程序中执行此操作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多