vfp python_Python dbfpy和FoxPro
好吧,我在这里使用古老的数据库格式,dbf文件.不要问为什么,只知道某个软件决定扩展foxpro支持,因为微软决定扩展foxpro支持.现在,我在特定文件上收到以下错误.我已成功加载另一个文件,我很好奇这个数据库是否有问题.我敢肯定你可能需要查看数据库来确定这一点,但它的发布方式很大,所以我会采取我能得到的.
Traceback (most recent call last):
File "billsapi.py", line 250, in
x.getUsedGuns()
File "billsapi.py", line 72, in getUsedGuns
itemdb = dbf.Dbf('item.dbf', readOnly=True, ignoreErrors=True)
File "C:\Python27\lib\site-packages\dbfpy\dbf.py", line 135, in __init__
self.header = self.HeaderClass.fromStream(self.stream)
File "C:\Python27\lib\site-packages\dbfpy\header.py", line 127, in fromStream
_fld = fields.lookupFor(_data[11]).fromString(_data, _pos)
File "C:\Python27\lib\site-packages\dbfpy\fields.py", line 455, in lookupFor
return _fieldsRegistry[typeCode]
KeyError: '0'
继承我的简单代码返回此错误:
def getUsedGuns(self):
itemdb = dbf.Dbf('item.dbf', readOnly=True, ignoreErrors=True)
就像我说的,我可以加载其他文件但没有问题,但也许有一个解决这个特定错误的工作?
编辑:我还想指出该文件可以在DBF View Plus中打开,查看和修改.
编辑:找到解决方案.我实际上最终使用了python dBase模块.我认为我的主要问题是没有备忘录文件(无论它们是什么,它都有.fpt文件扩展名).这是我目前正在使用的内容:
from dbf.tables import VfpTable
itemdb = VfpTable('item.db')
for rec in itemdb:
print rec['MY_COLUM_NAME']
我还想指出,任何目前仍在使用FoxPro的人都应该被烧掉.
最佳答案 你的回溯是dbfpy告诉你你的文件有一个不受支持的dbfpy字段类型代码0的方式.它是一个Visual FoxPro(“VFP”)的东西.
这与备忘录文件无关.是的,如果有备注字段,则它们存储在.FPT文件中.访问foo.dbf时,foo.fpt需要存在.
你说“”“我实际上最终使用了python dBase模块”“”…大概你的意思是Ethan Furman的dbf模块,根据它的PyPI entry不支持空字段.
我有一个DBF阅读模块(pydbfrw),我一直想释放“其中一天”.以下是其文档的摘录:
Field Type Description DBF variety Python 2.x type
0 (digit zero) _NullFlags VFP N/A
Notes: This field type is used only for the hidden _NullFlags field which
is a bit mask saying which fields in the record should be interpreted as NULL.
我的模块实现了识别并在需要时为字段值返回None.如果您需要该模块的副本,请查找我的电子邮件地址 – 例如google(“john machin xlrd”) – 给我发电子邮件,我会发给你.
vfp python_Python dbfpy和FoxPro相关推荐
- vfp python_python foxpro数据聚合和分组运算——分组级运算和转换(3)
数据聚合和分组运算--分组级运算和转换(3),有需要的朋友可以参考下. 1.假设我们想要为一个DataFrame添加一个用于存放各索引分组平均值的列,一个办法是先聚合再合并: >>> ...
- 各类常见的关系型数据库
什么是数据库? 之前也对 数据库.做过较为详细的介绍,今天再这里也简单总结一下! 数据库,顾名思义就是数据的仓库,但是一种"按照数据结构来组织.存储和管理数据的仓库": 具体来说, ...
- 我手中的电子书书目清单(开始提供BT下载)
13G电子书开始提供BT下载,下载说明及BT种子下载见我另一Blog网页:http://blog.csdn.net/yiyuan/archive/2005/10/16/504747.aspx 我手中的 ...
- yiyuan编程电子书系列(目录及种子)
感觉不错,整个一个电子书库,与大家一起分享一下 BT下载地址: YiYuan编程电子书系列1 http://nnv.dl1.btchina.net/download.php?s=38fff1692d9 ...
- Php Adodb 初探
PHP ADODB 1.99版手册中文翻译 翻译作者:Tripc 修正作者:heiyeluren ---------------------------------------------- 修正说明 ...
- 解决QT读Visual Fox Pro DBF中文乱码问题
开发环境 操作系统:Win10 x64 QT:5.5.1 x86 编译器:Microsoft Windows SDK for Windows 7 x64 方案一.使用ODBC读取DBF 前提 QT安装 ...
- PHP ADODB1.99版手册 (修正版)
PHP ADODB 1.99版手册中文翻译 <修正版> 感谢 记事 PHP ADODB 1.99版手册中文翻译 <修正版> 感谢 记事 PHP ADODB 1.99版手册中文翻 ...
- 【VFP] MS Virual FoxPro 9.0 | 常用命令 | VFP
1.复制表结构(自由表) USE C:\Users\HUAWEI\新建文件夹\benqiCOPY STRUCTURE to C:\Users\HUAWEI\新建文件夹\test3\benqi 说明1: ...
- 计算机vfp等级考试用书,全国计算机等级考试教材系列:全国计算机等级考试(2级Visual FoxPro语言)精讲精练...
<全国计算机等级考试教材系列:全国计算机等级考试(2级VisualFoxPro语言)精讲精练(附CD光盘1张)>针对全国计算机二级考试VFP程序设计,根据最新大纲.结合最新的考试题目编写而 ...
- vfp 连接mysql数据库_Visual FoxPro操作数据库之函数大全
ADATABASES() 将所有打开数据库的名称和路径放到内存变量数组中 ADBOBJECTS() 把当前数据库中的命名连接名.关系名.表名或sQL视图名放到一个内存变量数组中 AFIELDS() 把 ...
最新文章
- 一文详尽系列之EM算法
- FZU 1686 神龙的难题(DLX反复覆盖)
- 人工智能乌托邦 迪拜认为2071年人类应该这样生活!
- 后缀为hta,url,html,htm,html标签
- php 数组相乘,PHP如何计算数组中所有值的乘积?(代码示例)
- ORACLE EBS FORM 二次开发常用小技巧
- 大数据中心有什么作用
- 回溯 皇后 算法笔记_什么叫回溯算法,一看就会,一写就废
- Pandas系列(六)SettingWithCopyWarning报警
- 线程控制之线程和信号
- Python飞机大战代码
- 计算机网络安全文明知识竞赛,网络安全知识竞赛
- 特种作业操作证2021电工作业2021年电气试验考试题库
- 那些年我们一起犯二的青春--文献一--注解 IGRSS-2015-2th
- 计算机硬件知识:BIOS、EFI与UEFI详解!
- 韩国首发元宇宙 5 年计划,市民可戴 VR 头显见政府官员
- 【华为笔试】【模拟】【Java】竖直四子棋
- oracle安装rac前存储配置,Oracle11g RAC+ASM安装前存储规划注意事项
- 【分享】常见的打印机无法共享12个问题汇总
- 量子物理史话 第一章 黄金时代