COBOL - Dosya Erişim Modu

Şimdiye kadar, dosya organizasyon şemaları tartışıldı. Her dosya düzenleme şeması için farklı erişim modları kullanılabilir. Dosya erişim modu türleri aşağıdadır -

  • Sıralı Erişim
  • Rasgele erişim
  • Dinamik Erişim

Bu modüldeki ilgili terimlerle birlikte bahsedilen sözdizimleri, yalnızca programdaki kullanımlarına atıfta bulunmaktadır. Bu sözdizimlerini kullanan tüm programlar bir sonraki bölümde tartışılacaktır.

Sıralı Erişim

Erişim modu sıralı olduğunda, kayıt alma yöntemi seçilen dosya organizasyonuna göre değişir.

  • İçin sequential files, kayıtlara eklendikleri sırayla erişilir.

  • İçin indexed fileskayıtları getirmek için kullanılan parametre kayıt anahtarı değerleridir.

  • İçin relative fileskayıtları almak için göreceli kayıt anahtarları kullanılır.

Sözdizimi

Sıralı erişim modunun sözdizimi aşağıdadır -

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

Rasgele erişim

Erişim modu RASGELE olduğunda, kayıt alma yöntemi seçilen dosya organizasyonuna göre değişir.

  • İçin indexed files, kayıtlara birincil veya alternatif anahtar olabilen bir anahtar alanına yerleştirilen değere göre erişilir. Bir veya daha fazla alternatif dizin olabilir.

  • İçin relative files kayıtlar göreceli kayıt anahtarları aracılığıyla alınır.

Sözdizimi

Aşağıda rastgele erişim modunun sözdizimi verilmiştir -

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

Dinamik Erişim

Dinamik erişim, aynı programda hem sıralı hem de rasgele erişimi destekler. Dinamik erişimle, bazı kayıtlara sıralı sırayla ve diğer kayıtlara anahtarlarıyla erişmek gibi hem sıralı hem de rastgele işlemleri gerçekleştirmek için bir dosya tanımı kullanılır.

Göreli ve dizinlenmiş dosyalarla dinamik erişim modu, READ deyimindeki NEXT ifadesini kullanarak bir dosyayı okurken sıralı erişim modu ve rasgele erişim modu arasında geçiş yapmanıza izin verir. SONRAKİ ve OKU işlevleri bir sonraki bölümde tartışılacaktır.

Sözdizimi

Dinamik erişim modunun sözdizimi aşağıdadır -

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