我有哪个COBOL数据库?

问题描述 投票:1回答:1

一个简单的,但是,嘿,仍然很奇怪的问题。希望在好的部分,在整个互联网找不到合适的答案。

首先,它看起来很像COBOL(ACUCOBOL?),但我不确定。

我有扩展名的二进制文件:.AC,.vix,.SC;每个几MB。大多数文件是成对的,例如。 ADDRESSES.AC + ADDRESSES.vixCOMPANIES.SC + COMPANIES.vix。在这些文件的中间,我可以看到部分记录,但它似乎是一组二进制文件。

我所知道的Cobol数据库中没有人类可读的索引,地图,方言,配置文件,标题 - 没有什么可以使用一些普通的文本工具来解析。没有CPY,RDD,XFD文件。只是包含大量二进制数据和部分记录/ ID(?)的文件。所以我可以确定,例如,一个文件包含一组地址,下一个显然是销售,下一个客户数据等。

问题是:

如何确定我使用的是哪个版本的COBOL数据库? (主要是为了获得提取数据的适当工具。)

如何将此数据库转换为可以解析并移动到其他任何东西的东西 - 甚至是Excel?

我无法访问使用此数据库的计算机,因为它在多年的垃圾箱深处,没有其他任何东西,只有一个包含数据库文件的文件夹。

有人有同样的问题吗?

这是样本:enter image description here

database cobol acucobol-gt
1个回答
6
投票

如何确定我使用的是哪个版本的COBOL数据库?

您没有使用数据库而是使用ISAM文件,很可能是ACUCOBOL GT文件格式5.有关格式的详细信息,请参阅official documentation

主要是为了获得提取数据的适当工具。

正确的工具是vutil和命令vutil -u -t ADDRESSES.AC ADDRESSES.TXT,它将为您提供一个很可能是固定长度形式的文本文件(变量形式相对不常见) - >步骤1。

由于数据可能包含二进制字段,您必须调查数据以检查实际的格式/记录布局 - > step2,并从二进制字段计算十进制值 - >步骤3.但是有一些工具可以帮助您在第2步和第3步,我可以推荐RecordEditor,你可以看到数据,可以设置字段宽度/类型(定义记录布局,类似于Excel导入,但也允许你使用二进制COBOL类型)并转换生成的文件到CSV。

如果您无权访问vutil(或Windows上的vutil32.exe),您可能会找到可以访问此工具并为您转换数据的人;或获得一个评估版本(将是旧的下载,ACUCOBOL-GT的新产品所有者是MicroFocus,并且仅提供其不兼容的“Visual COBOL”产品的评估版本)。

或者,您可以对格式进行反向工程(记录布局在vix文件中,使用十六进制编辑器打开并潜入),但这可能是一项更大的任务......

摘要:

  • 决定如何做第1步,vutil / vutil32.exe是最简单的方法
  • 1:将数据转换为文本格式
  • 2:调查文件并检查记录布局(字段宽度,类型)
  • 3:加载文件,转换二进制字段,导出为csv
© www.soinside.com 2019 - 2024. All rights reserved.