IBM Extension
IBM Extension
DUPLICATES 句
ファイルに対してこの句が指定されていた場合、DELETE ステートメントの実行に先立ってこのファイルに対して処理された最後の入出力ステートメントは、NO LOCK 句なしの READ ステートメントであり、 しかも、正常に実行されていなければなりません。 そのステートメントによって読み取られたレコードが、 削除されるレコードです。
この場合、FORMAT 句は、削除すべきレコードを見つけるためには使用されません。 重複がある場合には、適切なレコードが削除されないようにするために、READ ステートメントが必要になります。
削除操作の前に READ 操作が正常に終了しなかった場合、
以下のことが行われます。
- ファイル状況キー (定義されている場合) が 94 に設定されます。
- EXCEPTION/ERROR プロシージャー (指定されている場合) が実行されます。
- DELETE ステートメントは処理されません。
最終入出力ステートメントが、NO LOCK 句を持つ READ ステートメントで、かつ正常に処理されていれば、次のようになります。
- ファイル状況キー (定義されている場合) が 9S に設定されます。
- EXCEPTION/ERROR プロシージャー (指定されている場合) が実行されます。
- DELETE ステートメントは処理されません。
レコードが読み取られてから RECORD KEY データ項目の値が変更された場合には、次のようになります。
- 定義されている場合に、ファイル状況キーが 21 に設定されます。
- INVALID KEY 条件になります。
- DELETE ステートメントは処理されません。
End of IBM Extension