До сих пор обсуждались схемы организации файлов. Для каждой схемы организации файлов могут использоваться разные режимы доступа. Ниже приведены типы режимов доступа к файлам.
- Последовательный доступ
- Произвольный доступ
- Динамический доступ
Синтаксисы в этом модуле, упомянутые вместе с соответствующими терминами, относятся только к их использованию в программе. Полные программы, использующие эти синтаксисы, будут обсуждаться в следующей главе.
Последовательный доступ
Когда режим доступа является последовательным, метод поиска записи изменяется в соответствии с выбранной файловой организацией.
-
Для последовательных файлов доступ к записям осуществляется в том же порядке, в котором они были вставлены.
-
Для индексированных файлов параметром, используемым для выборки записей, являются значения ключа записи.
-
Для относительных файлов относительные ключи записи используются для извлечения записей.
Для последовательных файлов доступ к записям осуществляется в том же порядке, в котором они были вставлены.
Для индексированных файлов параметром, используемым для выборки записей, являются значения ключа записи.
Для относительных файлов относительные ключи записи используются для извлечения записей.
Синтаксис
Ниже приводится синтаксис режима последовательного доступа:
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
Произвольный доступ
Когда режим доступа — СЛУЧАЙНЫЙ, метод поиска записи изменяется согласно выбранной файловой организации.
-
Для индексированных файлов доступ к записям осуществляется в соответствии со значением, помещенным в поле ключа, которое может быть первичным или альтернативным ключом. Может быть один или несколько альтернативных индексов.
-
Для относительных файлов записи извлекаются через относительные ключи записи.
Для индексированных файлов доступ к записям осуществляется в соответствии со значением, помещенным в поле ключа, которое может быть первичным или альтернативным ключом. Может быть один или несколько альтернативных индексов.
Для относительных файлов записи извлекаются через относительные ключи записи.
Синтаксис
Ниже приводится синтаксис режима произвольного доступа —
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
Динамический доступ
Динамический доступ поддерживает как последовательный, так и произвольный доступ в одной программе. При динамическом доступе одно определение файла используется как для последовательной, так и для случайной обработки, например, для доступа к некоторым записям в последовательном порядке и другим записям по их ключам.
Для относительных и индексированных файлов режим динамического доступа позволяет переключаться между режимом последовательного доступа и режимом произвольного доступа при чтении файла с помощью фразы NEXT в операторе READ. Функции NEXT и READ будут обсуждаться в следующей главе.
Синтаксис
Ниже приводится синтаксис режима динамического доступа —