首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无原因的ODBC ISAM_EOF

无原因的ODBC ISAM_EOF
EN

Stack Overflow用户
提问于 2015-06-15 06:50:59
回答 1查看 127关注 0票数 0

对于ODBC驱动程序和底层COBOL数据库,我有一种奇怪的行为。数据库驱动程序是acuODBC of AcuCorp(现在的微焦点),数据库本身是一个COBOL数据库。

DSN是一个系统DSN,工作正常。通过Access/Excel可以成功地用DSN读写数据。

在C#中,ODBCConnection.ConnectionState是开放的。倒转表标题的效果很好。但是当读取数据时,会出现一个奇怪的错误。下面是跟踪日志的总结:

  • 退列标头
  • ISAMRestrict - NO_ISAM_ERR
  • ISAMRewind - NO_ISAM_ERR
  • ISAMNextRecord - ISAM_EOF

当我将WHERE clausel添加到SELECT语句时,就会发生这种情况。当我不添加一个WHERE clausel而只是撤回整个表时,它会花费令人难以置信的时间( 40000条记录大约12分钟),但至少我收回了数据。

因此,我现在的问题是,是否还有其他人在ODBC驱动程序中发生了如此奇怪的行为?文件的结尾数据应该在哪里?

作为一个附带说明,我已经联系了微焦点,如果他们有一个解决方案,我会张贴在这里。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-15 14:15:15

它似乎依赖于Windows。由于我们的应用程序在兼容性模式下运行,UAC可视化是活跃的,可能会导致一些问题。原因是COBOL数据库是一个基于文件的数据库,而编码的客户端直接在ODBC DSN配置中使用这些文件,而不是运行ODBC服务器来处理请求。

所以UAC导致了一些奇怪的行为。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30838931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档