我有点困惑。我知道当你启动一个VSAM文件时,会设置一个指向特定记录的指针,该记录将被后续的read命令读取。
让我们假设VSAM有记录:
100
200
300
400
500
当你写的时候:
START filename
KEY IS GREATER THAN 400
它会将指针放在500处。但是如果你说
START filename
KEY IS GREATER THAN 600
指针将放在哪里?
它会在500上还是会是一个错误。
另外,我的理解是START永远不会给出文件的结尾(返回码10)。
发布于 2018-08-22 01:30:44
指针不会指向任何记录。
将使用FILE STATUS "23"引发INVALID KEY条件,指示为no record found。
来自2002年的COBOL标准:
"14.8.37.3一般规则
"7)在START语句执行失败后,文件位置指示器被设置为指示没有建立有效的记录位置。对于索引的文件,引用的键是未定义的。“
https://stackoverflow.com/questions/51952650
复制相似问题