ファイルからレコードを検索 (READ) するには、READ ステートメントを使用します。 レコードを読み取るためには、ファイルを INPUT または I-O としてオープンしていなければなりません。プログラムでは、それぞれの READ の後でファイル状況キーを検査しなければなりません。
VSAM 順次ファイルの中のレコードは、それらが書き込まれたシーケンスでしか検索することができません。
VSAM 索引付きファイルおよび相対レコード・ファイルの中のレコードは、次のように検索することができます。
動的アクセスの場合、順次検索には READ NEXT を使用し、ランダム検索 (キーによる) には READ を使用することによって、特定のレコードの直接読み取りと、いくつかのレコードの順次読み取りを切り替えることができます。
特定のレコードから順次に読み取りを行いたい場合には、READ NEXT ステートメントの前に START ステートメントを使用して、ファイル位置標識を、特定のレコードを指すように設定してください。START の後に READ NEXT をコーディングすると、次のレコードが読み取られ、ファイル位置標識は次のレコードにリセットされます。ファイル位置標識は、START を使用してランダムに移動することができますが、すべての読み取りはそのポイントから順次に行われることになります。
START file-name KEY IS EQUAL TO ALTERNATE-RECORD-KEY
重複が存在する代替索引に基づいて、VSAM 索引付きファイルに対して直接 READ が実行されると、その代替キーを持つデータ・セット (基本クラスター) の最初のレコードのみが検索されます。同じ代替キーを持つデータ・セット・レコードのそれぞれを検索するためには、一連の READ NEXT ステートメントが必要です。 同じ代替キー値を持つ、読み取るべきレコードがほかにある場合には、02 のファイル状況コードが戻されます。そのキー値を持つ最後のレコードが読み取られると、00 のコードが戻されます。
関連概念
ファイル位置標識
関連タスク
VSAM ファイルのアクセス・モードの指定