-910   THE SQL STATEMENT CANNOT ACCESS AN OBJECT ON WHICH UNCOMMITTED CHANGES ARE PENDING

説明

アプリケーション・プログラムが、変更されたがその変更がまだコミットされていないオブジェクトにアクセスしようとしました。このエラーは、次の状況で出されます。
  • アプリケーション・プログラムがオブジェクトに対して、データ定義に関するステートメント (DROP、 ALTER、CREATE、または RENAME) を実行して、その操作が完了する前にオブジェクトにアクセスしようとする場合。
  • アプリケーション・プログラムが、ALTER または CREATE ステートメントを実行し、同じオブジェクトに対してデータ操作ステートメント (INSERT、UPDATE、DELETE、MERGE、あるいは SELECT など) が同じコミット有効範囲内で処理される場合。

システムの処置

このステートメントを処理することはできません。

プログラマーの応答

DROP のロジックの他にアプリケーション・プログラムのロジックを変更して、データ定義ステートメントと失敗した SQL ステートメントの間、もしくは、データ操作ステートメントとデータ定義ステートメントの間の COMMIT (または同等の IMS™ もしくは CICS® 機能) が 実行されるようにしなければなりません。 オープンされたままのカーソルが、失敗した SQL ステートメントに関連付けられている場合、COMMIT の前にカーソルをクローズしておく必要があります。

DROP の場合は、DROP の実行後にオブジェクトへのアクセスを試みないように、 アプリケーション・プログラムのロジックを変更しなければなりません。 重要: DROP には、セーブポイントへのロールバックに CREATE へのロールバックが含まれているケースがあることに注意してください。

SQLSTATE

57007