COBOL - 文件访问模式
-
简述
到目前为止,已经讨论了文件组织方案。对于每种文件组织方案,可以使用不同的访问模式。以下是文件访问模式的类型 -- 顺序访问
- 随机访问
- 动态访问
本模块中的语法及其各自的术语仅指它们在程序中的用法。使用这些语法的完整程序将在下一章中讨论。 -
顺序访问
当访问模式是顺序时,记录检索的方法会根据选择的文件组织而改变。-
为了sequential files, 记录的访问顺序与插入的顺序相同。
-
为了indexed files,用于获取记录的参数是记录键值。
-
为了relative files,相对记录键用于检索记录。
句法
以下是顺序访问模式的语法 -ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS SEQUENTIAL ACCESS MODE IS SEQUENTIAL ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS INDEXED ACCESS MODE IS SEQUENTIAL RECORD KEY IS rec-key1 ALTERNATE RECORD KEY IS rec-key2 ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS RELATIVE ACCESS MODE IS SEQUENTIAL RELATIVE KEY IS rec-key1
-
-
随机访问
当访问模式为 RANDOM 时,记录检索的方法会根据选择的文件组织而改变。-
为了indexed files,根据放置在可以是主键或备用键的键字段中的值访问记录。可以有一个或多个备用索引。
-
为了relative files, 记录是通过相对记录键检索的。
句法
以下是随机访问模式的语法 -ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS INDEXED ACCESS MODE IS RANDOM RECORD KEY IS rec-key1 ALTERNATE RECORD KEY IS rec-key2 ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS RELATIVE ACCESS MODE IS RANDOM RELATIVE KEY IS rec-key1
-
-
动态访问
动态访问支持同一程序中的顺序访问和随机访问。对于动态访问,一个文件定义用于执行顺序和随机处理,例如按顺序访问一些记录和通过键访问其他记录。对于相对和索引文件,动态访问模式允许您在顺序访问模式和随机访问模式之间来回切换,同时使用 READ 语句中的 NEXT 短语读取文件。NEXT 和 READ 功能将在下一章讨论。句法
以下是动态访问模式的语法 -ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS SEQUENTIAL ACCESS MODE IS DYNAMIC RECORD KEY IS rec-key1 ALTERNATE RECORD KEY IS rec-key2 ENVIRONMENT DIVISION. INPUT-OUTPUT SECTION. FILE-CONTROL. SELECT file-name ASSIGN TO dd-name ORGANIZATION IS RELATIVE ACCESS MODE IS DYNAMIC RELATIVE KEY IS rec-key1