MQ を介して外部システムに送信される大量のレコードを含む DB2 テーブルがあります。テーブルには、レコードのステータス (送信済みまたは送信保留中) を示す列があります。
テーブルに「送信待ち」のレコードがあるかどうかを継続的にチェックするスケジューラプログラムを作成します。はいの場合、プログラムは保留中のレコードを送信し、それに応じてステータスを更新します
そのスケジュールは、複数のトランザクションで開始されます。したがって、同じプログラムの複数のインスタンスが同時に実行されると予想しています
私の質問は、同じレコードが複数のスケジューラによって同時に取得および送信されるのを防ぐ方法です。
行レベルのロックでカーソルを使用するように言われましたか? しかし、これがどのように機能するのかわかりません
備考: z/os 環境で CICS COBOL に取り組んでいます