- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
库版本:dbf 0.97.0
,python版本3.5.5
我正在尝试使用 dbf
库创建一个新的 FoxPro 2.6 .DBF
文件。我运行
>>> import dbf
>>> table = dbf.Table('test', 'TEST C(40); TEST2 N(3,0); TEST3 C(3)', dbf_type='fp')
>>> table.open(mode=dbf.READ_WRITE)
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "...\Miniconda3\envs\myenv\lib\site-packages\dbf\__init__.py", line 5793, in open
raise DbfError("Unsupported dbf type: %s [%x]" % (version_map.get(header.version, 'Unknown: %s' % header.version), header.version))
dbf.DbfError: Unsupported dbf type: Unknown: 0 [0]
当我第二次运行 open 时,看起来没问题:
>>> table.open(mode=dbf.READ_WRITE)
dbf.Table('test.dbf', status=<DbfStatus.READ_WRITE: 2>)
但是,当我尝试将一些数据写入表时,它被卡住了:
>>> table.append(("Lorem ipsum", 123, "321"))
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "...\Miniconda3\envs\myenv\lib\site-packages\dbf\__init__.py", line 5516, in append
newrecord = Record(recnum=header.record_count, layout=meta, kamikaze=kamikaze)
File "...\Miniconda3\envs\myenv\lib\site-packages\dbf\__init__.py", line 2773, in __new__
record._update_disk()
File "...\Miniconda3\envs\myenv\lib\site-packages\dbf\__init__.py", line 3100, in _update_disk
layout.dfd.seek(location)
ValueError: seek of closed file
如果我向表中添加备注字段,它将打开(我不必调用它两次)并正确附加。
这是一个错误还是我只是做错了什么?
最佳答案
快速回答:升级到0.97.2。
长答案:在没有备忘录的 'fp'
表的 header 创建中存在一个错误,现已修复。
注意:dbf.Table
返回表CLOSED
;但是,某些命令会自动为您打开和关闭表格:
with
语句dbf.Processing()
dbf.add_fields()
dbf.delete_fields()
dbf.rename_field()
关于python - 如何使用 Python dbf 库读取和创建新的 FoxPro 2.6 数据库表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49433363/
我想将我的表导出为 DBF 格式,所以我想知道是否可以将多个表导出到一个 DBF 文件中。据我所知,一个 DBF 文件可以包含在表中。 最佳答案 一个dbf 文件包含一个表。同样,一个备忘录文件包含一
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
关于 .DBF 文件的第一个字节以及如何检测使用的 xbase 版本(即文件其余部分的格式),我能编译的最全面的列表是: 字节 0 ------------ x xxx x 001 = 0x?1 未使
我的目录中有很多文件,例如 ['FredrikstadAvst1.dbf', 'FredrikstadAvst2.dbf', ...]。我想编写一个 Python 脚本将这些文件连接到一个新的 "*.
首先,dbf 模块很棒。我一直在使用它并取得了巨大的成功。 我正在尝试在网络共享上打开一个 dbf 文件,它是一个只读文件系统。当我尝试像这样打开它时,我收到一条错误消息,指出 .dbf 文件是只读的
我被赋予了一项模棱两可的任务,即从各种 Visual FoxPro 表格中自动提取数据。 有几对.DBF 和.CDX 文件。使用 Python dbf包,我似乎可以和他们一起工作。我有两个文件,ABC
在Delphi for Win32中,如何在没有BDE的情况下以 native 方式读写dbf文件?我知道网络上有一些可用的组件,但我从未使用过其中任何一个,所以我不知道该选择哪个(如果有的话)。 最
我试图使用 jdbc 在 dbf 表上进行插入,但每次执行系统时都会出现此错误: Exception in thread "main" java.sql.SQLException: [Microsof
同事(真的!)试图在主 prod DG 实例上创建 dbf。这有效(虽然文件随后被删除),但 db_file_convert 没有设置文件位置辅助,因此创建失败并且在 $OH/dbs 中创建“丢失”d
我已经尝试了两个模块来读取工作正常的 dbf 文件(dbf 和 dbfpy),但我必须逐条记录地读取数据库以查找内容。这对于大型数据库来说真的很慢。是否有任何模块可以处理查询表或使用 CDX 索引?
我正在将 dbf 文件批量导入到 sqlite。我使用 dbf 模块在 python 中编写了一个简单的脚本 http://dbfpy.sourceforge.net/ 。除了少数情况外,它工作正常并
我知道 .dbf 数据库在单独的 .dbt 文件中保存大于 254 个字符的(文本)字段,将它们与 M 备注字段链接。 我有一个遗留数据库,我可以清楚地看到它包含一个规定(最大)长度为 255 个字符
我想自动检测DBF的编码,但是DBF文件的结构不包含DBF文件头中的任何信息。我曾经使用 DBF 查看器,它以正确的编码信息打开。所以我不确定他们是如何实现的。 我研究了 DBF 文件的结构并且有一个
我从 DBF 文件中获取数据并将其放入数据表中,问题是我只想获取不同的数据,例如: Column1 a b c b a DataTable 应该只填充: Column1 a
我从 DBF 文件中获取数据并将其放入数据表中,问题是我只想获取不同的数据,例如: Column1 a b c b a DataTable 应该只填充: Column1 a
今天早上我到达办公室时,我们的 Oracle 10.2 服务器磁盘空间不足。仔细检查后,我发现每分钟生成一次大约 1 到 4 个或更多 .dbf 文件(例如 1_1278092_658232789.d
我使用dbf 0.95.004 ,我需要从表中选择一个字段。 Example , docs import dbf table = dbf.Table('my.dbf').open() records
代码: #!/usr/bin/python db = dbf.Dbf("MEST2.DBF") #LINE TO UPDATE: rec = db[0] #PROEST IS A field of m
我现在使用 ESRI shapefile 格式,但在更改/编辑数据库字段大小时遇到了一些问题。我创建了一个 200 长度/大小的字段,现在我希望它只有 80 长度/大小(空间和其他改进)。 但是我
我有这样的事情: from dbfpy import dbf import random db = dbf.Dbf('DMWWGS84/DMAWGS84.dbf',new=False) db.addF
我是一名优秀的程序员,十分优秀!