COBOL - Mode Akses File
Sampai saat ini, skema organisasi file telah dibahas. Untuk setiap skema organisasi file, mode akses yang berbeda dapat digunakan. Berikut adalah jenis mode akses file -
- Akses Berurutan
- Akses acak
- Akses Dinamis
Sintaks dalam modul ini, yang disebutkan bersama dengan istilahnya masing-masing, hanya merujuk pada penggunaannya dalam program. Program lengkap yang menggunakan sintaks ini akan dibahas di bab berikutnya.
Akses Berurutan
Ketika mode akses berurutan, metode pengambilan rekaman berubah sesuai organisasi file yang dipilih.
Untuk sequential files, record diakses dalam urutan yang sama dengan saat mereka dimasukkan.
Untuk indexed files, parameter yang digunakan untuk mengambil record adalah nilai kunci record.
Untuk relative files, kunci rekaman relatif digunakan untuk mengambil rekaman.
Sintaksis
Berikut ini adalah sintaks mode akses berurutan -
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
Akses acak
Ketika mode akses ACAK, metode pengambilan rekaman berubah sesuai organisasi file yang dipilih.
Untuk indexed files, catatan diakses sesuai dengan nilai yang ditempatkan di bidang kunci yang dapat berupa kunci primer atau alternatif. Mungkin ada satu atau lebih indeks alternatif.
Untuk relative files , catatan diambil melalui kunci catatan relatif.
Sintaksis
Berikut ini adalah sintaks mode akses acak -
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
Akses Dinamis
Akses dinamis mendukung akses sekuensial dan acak dalam program yang sama. Dengan akses dinamis, satu definisi file digunakan untuk melakukan pemrosesan sekuensial dan acak seperti mengakses beberapa catatan secara berurutan dan catatan lain dengan kuncinya.
Dengan file relatif dan diindeks, mode akses dinamis memungkinkan Anda untuk beralih bolak-balik antara mode akses berurutan dan mode akses acak saat membaca file dengan menggunakan frase NEXT pada pernyataan BACA. Fungsi NEXT dan READ akan dibahas di bab berikutnya.
Sintaksis
Berikut ini adalah sintaks dari mode akses dinamis -
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