COBOL-ファイル処理
COBOLのファイルの概念は、C / C ++のファイルの概念とは異なります。COBOLで「ファイル」の基本を学習している間、両方の言語の概念を相互に関連付けることはできません。代わりに、単純なテキストファイルをCOBOLで使用することはできません。PS (Physical Sequential) そして VSAMファイルが使用されます。PSファイルについては、このモジュールで説明します。
COBOLでのファイル処理を理解するには、基本的な用語を知っている必要があります。これらの用語は、ファイル処理の基本を理解するためにのみ役立ちます。さらに詳細な用語については、「ファイル処理動詞」の章で説明します。以下は基本的な用語です-
- Field
- Record
- 物理的記録
- 論理レコード
- File
次の例は、これらの用語を理解するのに役立ちます-
フィールド
フィールドは、要素に関して保存されているデータを示すために使用されます。これは、上記の例に示されているように、学生ID、名前、マーク、合計マーク、パーセンテージなどの単一の要素を表します。任意のフィールドの文字数はフィールドサイズと呼ばれます。たとえば、学生名は10文字にすることができます。フィールドは次の属性を持つことができます-
Primary keys各レコードに固有であり、特定のレコードを識別するために使用されるフィールドです。たとえば、学生マークファイルでは、各学生は主キーを形成する一意の学生IDを持ちます。
Secondary keys関連データの検索に使用される一意または非一意のフィールドです。たとえば、学生マークファイルでは、学生IDが不明な場合、学生のフルネームを副キーとして使用できます。
Descriptorsフィールドは、エンティティを説明するために使用されます。たとえば、学生のマークファイルでは、レコードに意味を追加するマークとパーセンテージフィールドは既知の記述子です。
記録
レコードは、エンティティを説明するために使用されるフィールドのコレクションです。1つ以上のフィールドが一緒になってレコードを形成します。たとえば、学生マークファイルでは、学生ID、名前、マーク、合計マーク、およびパーセンテージが1つのレコードを形成します。レコード内のすべてのフィールドの累積サイズは、レコードサイズと呼ばれます。ファイルに存在するレコードは、固定長または可変長の場合があります。
物理的記録
物理レコードは、外部デバイスに存在する情報です。ブロックとも呼ばれます。
論理レコード
論理レコードは、プログラムによって使用される情報です。COBOLプログラムでは、一度に処理できるレコードは1つだけであり、論理レコードと呼ばれます。
ファイル
ファイルは、関連するレコードのコレクションです。たとえば、学生マークファイルはすべての学生の記録で構成されています。