首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >尽管字段存在普遍的Btrieve错误

尽管字段存在普遍的Btrieve错误
EN

Stack Overflow用户
提问于 2022-11-21 09:36:03
回答 1查看 20关注 0票数 0

我想执行以下语句:

代码语言:javascript
复制
select * from Matrix where Untersuchungsmethode='Fremdlabor'

Matrix也存在字段Untersuchungsmethode

但我得到了错误信息:

select * from Matrix where Untersuchungsmethode='Fremdlabor' [LNA][Zen][SQL Engine][Data Record Manager]The application encountered an I/O error(Btrieve Error 2)

原因是什么?

EN

回答 1

Stack Overflow用户

发布于 2022-11-21 16:20:09

错误2表示:

2:应用程序遇到I/O错误--状态代码通常表示一个损坏的文件,在从磁盘读取或写入磁盘时出错。发生了下列情况之一:

  • 文件已损坏,您必须恢复它。有关恢复文件的更多信息,请参见“高级操作指南”。
  • 用于pre-v6.0数据文件,事务内有一个大的预映像文件,并且没有足够的磁盘空间来写入预映像文件。
  • 对于pre-v6.0数据文件,有一个图像前文件用于多个数据文件。例如,如果将数据文件命名为customer.one和customer.two,那么这两个文件都有名为customer.one-v6.0的图像前文件,其大小大于768 MB,锁定机制之间存在冲突。该文件尚未损坏。应用程序可以重试操作,直到冲突得到解决(当竞争的应用程序释放应用程序所需的锁时)。
  • A预V6.0 Btrieve引擎试图打开v6.x或更高版本的MicroKernel文件。在运行应用程序一段较长的时间后,32位Windows应用程序可能返回状态2或“MKDE终止于特定服务错误0”。

由于您没有提到您正在使用的版本,我的第一个猜测将是一个损坏的文件。您应该首先重建数据文件。

重建文件的最简单方法是使用BUTIL。类似于:

代码语言:javascript
复制
BUTIL -CLONE <newfile> <oldfile>

然后

代码语言:javascript
复制
BUTIL -COPY <oldfile> <newfile>

你可能会因为腐败而失去一些记录。完成后,重命名旧文件(或删除它),然后将新文件重命名为旧文件名。

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

https://stackoverflow.com/questions/74516821

复制
相关文章

相似问题

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