好吧,我在这里使用古老的数据库格式,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相关推荐

  1. vfp python_python foxpro数据聚合和分组运算——分组级运算和转换(3)

    数据聚合和分组运算--分组级运算和转换(3),有需要的朋友可以参考下. 1.假设我们想要为一个DataFrame添加一个用于存放各索引分组平均值的列,一个办法是先聚合再合并: >>> ...

  2. 各类常见的关系型数据库

    什么是数据库? 之前也对 数据库.做过较为详细的介绍,今天再这里也简单总结一下! 数据库,顾名思义就是数据的仓库,但是一种"按照数据结构来组织.存储和管理数据的仓库": 具体来说, ...

  3. 我手中的电子书书目清单(开始提供BT下载)

    13G电子书开始提供BT下载,下载说明及BT种子下载见我另一Blog网页:http://blog.csdn.net/yiyuan/archive/2005/10/16/504747.aspx 我手中的 ...

  4. yiyuan编程电子书系列(目录及种子)

    感觉不错,整个一个电子书库,与大家一起分享一下 BT下载地址: YiYuan编程电子书系列1 http://nnv.dl1.btchina.net/download.php?s=38fff1692d9 ...

  5. Php Adodb 初探

    PHP ADODB 1.99版手册中文翻译 翻译作者:Tripc 修正作者:heiyeluren ---------------------------------------------- 修正说明 ...

  6. 解决QT读Visual Fox Pro DBF中文乱码问题

    开发环境 操作系统:Win10 x64 QT:5.5.1 x86 编译器:Microsoft Windows SDK for Windows 7 x64 方案一.使用ODBC读取DBF 前提 QT安装 ...

  7. PHP ADODB1.99版手册 (修正版)

    PHP ADODB 1.99版手册中文翻译 <修正版> 感谢 记事 PHP ADODB 1.99版手册中文翻译 <修正版> 感谢 记事 PHP ADODB 1.99版手册中文翻 ...

  8. 【VFP] MS Virual FoxPro 9.0 | 常用命令 | VFP

    1.复制表结构(自由表) USE C:\Users\HUAWEI\新建文件夹\benqiCOPY STRUCTURE to C:\Users\HUAWEI\新建文件夹\test3\benqi 说明1: ...

  9. 计算机vfp等级考试用书,全国计算机等级考试教材系列:全国计算机等级考试(2级Visual FoxPro语言)精讲精练...

    <全国计算机等级考试教材系列:全国计算机等级考试(2级VisualFoxPro语言)精讲精练(附CD光盘1张)>针对全国计算机二级考试VFP程序设计,根据最新大纲.结合最新的考试题目编写而 ...

  10. vfp 连接mysql数据库_Visual FoxPro操作数据库之函数大全

    ADATABASES() 将所有打开数据库的名称和路径放到内存变量数组中 ADBOBJECTS() 把当前数据库中的命名连接名.关系名.表名或sQL视图名放到一个内存变量数组中 AFIELDS() 把 ...

最新文章

  1. 一文详尽系列之EM算法
  2. FZU 1686 神龙的难题(DLX反复覆盖)
  3. 人工智能乌托邦 迪拜认为2071年人类应该这样生活!
  4. 后缀为hta,url,html,htm,html标签
  5. php 数组相乘,PHP如何计算数组中所有值的乘积?(代码示例)
  6. ORACLE EBS FORM 二次开发常用小技巧
  7. 大数据中心有什么作用
  8. 回溯 皇后 算法笔记_什么叫回溯算法,一看就会,一写就废
  9. Pandas系列(六)SettingWithCopyWarning报警
  10. 线程控制之线程和信号
  11. Python飞机大战代码
  12. 计算机网络安全文明知识竞赛,网络安全知识竞赛
  13. 特种作业操作证2021电工作业2021年电气试验考试题库
  14. 那些年我们一起犯二的青春--文献一--注解 IGRSS-2015-2th
  15. 计算机硬件知识:BIOS、EFI与UEFI详解!
  16. 韩国首发元宇宙 5 年计划,市民可戴 VR 头显见政府官员
  17. 【华为笔试】【模拟】【Java】竖直四子棋
  18. oracle安装rac前存储配置,Oracle11g RAC+ASM安装前存储规划注意事项
  19. 【分享】常见的打印机无法共享12个问题汇总
  20. 量子物理史话 第一章 黄金时代

热门文章

  1. Tumblr面试流程
  2. 概率论 方差公式_概率论学习笔记(6)
  3. 浅谈mysqli连接方式与PDO连接方式
  4. 朴素贝叶斯算法——拼写检查器
  5. UML简单介绍(五)——用例图的使用案例与分析
  6. 如何查看XP系统的密匙
  7. ipa文件生成扫码安装二维码的方法
  8. 努力不是为了追赶别人,只是为了超越自己
  9. IP地址分为A,B,C,D,E五类
  10. win10电脑风扇一直转解决方法