DBF的列名无效

时间:2016-11-08 18:48:22

标签: python dbf

我尝试在dbf名称_sampleid上读取和编辑列名,但他说_sampleid是dbf的无效名称:

代码:

with Image(filename='sample.pdf', resolution=300) as img:
img.background_color = Color("white")
img.alpha_channel = 'remove'
img.save(filename='image.png')
  

_sampleid无效:字段名称必须以字母开头,并且只能包含字母,数字和_

我该怎么办?

1 个答案:

答案 0 :(得分:0)

我的dbf module不允许在字段名称中使用前导下划线。

现在的解决方法是重命名任何此类字段;如果您无法控制原始字段名称,我会考虑更新dbf以允许它。

进一步挖掘显示问题出现在backup()中 - 当一个字段被重命名为自动生成的备份时,该进程由于前导下划线而失败。

此时无法跳过备份步骤(我将对此进行处理),备份过程也不会跳过此类验证检查(我也会对此进行处理)。

所以现在,唯一的选择是在the other answer使用另一种可能性:

  • 打开现有表格
  • 抓取结构(作为字段规范列表)
  • 修改结构以更改任何字段名称
  • 使用新的修改后的结构
  • 创建一个新的空数据库
  • 复制数据

不幸的是,这不是一个优雅的解决方案。