当前位置: 代码迷 >> 综合 >> C12-COBOL 文件访问模式
  详细解决方案

C12-COBOL 文件访问模式

热度:73   发布时间:2023-12-15 17:08:21.0

COBOL 文件访问模式

截至目前,已经对文件组织方案进行了讨论。对于每一个文件组织方案,可以使用不同的访问模式。以下是文件访问模式的类型:

  • 顺序访问
  • 随机访问
  • 动态访问

本章节中提到的语法及其各自的术语,仅涉及它们在程序中的用法。使用这些语法的完整程序将在下一章讨论。

顺序访问

当访问模式是按顺序的,记录检索的方法根据所选的文件组织而变化。

  • 对于顺序文件 ,被插入的记录仍按相同的顺序进行访问。
  • 对于索引文件 ,用于获取记录的参数是记录的键值。
  • 对于相对文件 ,记录相对键用于检索记录。

语法

以下是顺序访问模式的语法:

        ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS SEQUENTIALACCESS MODE IS SEQUENTIALENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS INDEXEDACCESS MODE IS SEQUENTIALRECORD KEY IS rec-key1ALTERNATE RECORD KEY IS rec-key2ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS RELATIVEACCESS MODE IS SEQUENTIALRELATIVE KEY IS rec-key1

随机访问

当访问模式为随机(RANMOM)时,记录检索方法根据所选文件组织而变化。

  • 对于索引文件,记录可以通过主键或备用键的键字段中的值来访问。可以有一个或多个备用索引。
  • 对于相对文件,记录通过记录相对键进行检索。

语法

以下是随机访问模式的语法:

        ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS INDEXEDACCESS MODE IS RANDOMRECORD KEY IS rec-key1ALTERNATE RECORD KEY IS rec-key2ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS RELATIVEACCESS MODE IS RANDOMRELATIVE KEY IS rec-key1

动态访问

动态访问支持在同一程序中的顺序和随机访问。通过动态访问,一个文件定义可用于执行顺序和随机进程,例如按顺序访问一些记录和通过键访问其他记录。

使用相对和索引文件,动态访问模式允许你在顺序访问模式和随机访问模式之间来回切换,同时使用READ语句上的NEXT短语读取文件。NEXT和READ的功能将在下一章中进行讨论。

语法

以下是动态访问模式的语法:

        ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS SEQUENTIALACCESS MODE IS DYNAMICRECORD KEY IS rec-key1ALTERNATE RECORD KEY IS rec-key2ENVIRONMENT DIVISION.INPUT-OUTPUT SECTION.FILE-CONTROL.SELECT file-name ASSIGN TO dd-nameORGANIZATION IS RELATIVEACCESS MODE IS DYNAMICRELATIVE KEY IS rec-key1