Rational Developer for System z
PL/I for Windows, Version 7.6, プログラミング・ガイド

レコード入出力によるデータ・セットへのアクセスと更新

連続データ・セットを作成し終えれば、順次入力、順次出力、または、直接アクセス装置上のデータ・セットの場合は、更新を行うために、その連続データ・セットにアクセスするためのファイルをオープンする ことができます。連続データ・セットにアクセスし、それを更新するプログラムの例については、図 14 を参照してください。

出力用のファイルをオープンし、その終わりにレコードを追加して データ・セットを拡張したい場合、DD:ddname 環境変数内に APPEND(Y) を 指定する必要はありません。これがデフォルトであるためです。APPEND(N) を指定すると、データ・セットは上書きされます。更新用のファイルをオープンしても、その既存の順序のままでレコードを 更新することのみが可能であり、レコードを挿入したければ、新たにデータ・セットを 作成しなければなりません。既存のデータ・セットのレコード長を変更することはできません。

SEQUENTIAL UPDATE ファイルで連続データ・セットにアクセスする には、READ ステートメントを使ってレコードを取り出してから、REWRITE ステートメントでそれを更新しなければなりません。しかし、検索された各レコードの再書き込みは必要ありません。REWRITE ステートメントは、常に、最後に読み取られたレコードを更新します。

次のような場合を考慮します。

  read file(F) into(A);
         .
         .
         .
  read file(F) into(B);
         .
         .
         .
  rewrite file(F) from(A);

REWRITE ステートメントによって、2 つ目の READ ステートメントで読み取った レコードが更新されます。最初のステートメントで読み取ったレコードは、2 つ目の READ ステートメントが実行さ れると再書き込みできません。

データ・セットにアクセスするには、OPEN ステートメントの TITLE オプションまたは DD:ddname 環境変数を用いて、PL/I に対してデータ・セットを識別する必要があります。

表 16 は、連続データ・セットにアクセスして、値を更新するためのステートメントとオプションを示しています。

必須情報

ユーザー・アプリケーションで既存の RECORD ファイルにアクセスするには 、PL/I はそのファイルのレコード長を入手する必要があります。レコード長の値は、次のいずれかの入手源から得ることができます。

次の場合、PL/I は、INPUT ファイルのデフォルトのレコード長を使用します。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)