図4-13-相対編成ファイルの指定
RELATIVEファイルは、レコードを順次またはランダムに処理できる内部編成を持つファイルであり、ファイル内の相対レコード番号を指定することによって、レコードの読み取り、書き込み、および更新を行うことができる。
ORGANIZATION RELATIVEファイルをCONSOLEまたはPRINTERに割り当てることはできない。
RELATIVE KEY句は、ACCESS MODE SEQUENTIALが指定されている場合のみオプションとして扱う。
ORGANIZATION RELATIVEファイルのレコードは可変長レコードを持つものとして定義できると考えられるが、ファイルは各レコードに対して最大レコード長を確保するように構造化される。
SEQUENTIALのACCESS MODEではファイルのレコードが順次処理され、RANDOMのACCESS MODEではレコードがランダムに処理される。DYNAMIC ACCESS MODEでは、ファイルがRANDOMまたはSEQUENTIALモードのいずれかで処理され、プログラムの実行時に二つのどちらかを切り替えることができる(6.41のSTART文を参照)。
ACCESS MODEが指定されていない場合はSEQUENTIALが指定されたものとみなす。
RELATIVE KEYデータ項目は、ファイルのレコード内項目にできない数値データ項目である。SEQUENTIALアクセスモードで処理されているRELATIVEファイルの現在の相対レコード番号を返し、RANDOMアクセスモードでRELATIVEファイルを処理するときに、読み取りまたは書き込みされる相対レコード番号を指定する検索キーとなる。
RELATIVEファイルの処理に関する文については、CLOSE(6.9)、COMMIT(6.10)、DELETE(6.13)、MERGE(6.27)、OPEN(6.31)、READ(6.33)、REWRITE(6.36)、SORT(6.40.1)、START(6.41)、UNLOCK(6.48)およびWRITE(6.50)で説明する。