-723 AN ERROR OCCURRED IN A TRIGGERED SQL STATEMENT IN trigger-name. INFORMATION RETURNED: SQLCODE: sql-code, SQLSTATE: sql-state, MESSAGE TOKENS token-list, SECTION NUMBER section-number
説明
UPDATE、MERGE、INSERT、または DELETE ステートメントの実行中に、トリガーが起動されました。起動された SQL ステートメントの 1 つが SQL エラー条件を受け取りました。
- trigger-name
- エラーが発生したときに活動化されたトリガー
- section-number
- 失敗している起動済み SQL ステートメントに関連付けられたセクション番号。 WHEN 文節を含むトリガーについては、WHEN 文節がセクション番号 1 です。 起動された SQL ステートメントは、セクション番号 2 から始まって順序に番号付け されます。 これは、WHEN 文節があるトリガーにも、ないトリガーにも該当します。
- sql-code
- SQL ステートメント実行が失敗した理由を示す数値。 このコードは、活動化されたトリガーによって受け取られます。
- sql-state
- SQLCODE に対応する SQLSTATE。
- token-list
- 元の SQL エラーからのトークンのリスト。 このリストは切り捨てられる場合があります。
システムの処置
トリガーおよび元のステートメントを処理できません。 トリガー表は変更されません。
システム・プログラマーの応答
以下のいずれかの方法で、失敗している SQL ステートメントを識別します。
- トリガー名およびセクション番号を使用する。
- トリガー定義を入手できる場合は、そのセクション番号を使用する。
- 以下の SELECT ステートメントを使用して、SYSIBM.SYSPACKSTMT カタログ表からステートメントを取得する。
SELECT STMT, SEQNO FROM SYSIBM.SYSPACKSTMT WHERE COLLID = 'schema-name' AND NAME = 'trigger-name' AND SECTNOI = section-number ORDER BY SEQNO
DB2® バージョン 8 以降の新機能モードで作成されたトリガーの場合、STMT 結果は Unicode になります。Unicode の結果を EBCDIC として表示するには、SPUFI 内の ISPF 表示プログラムで DISPLAY UTF8 コマンドを実行します。
このコードの sql-code で示されている SQLCODE の説明を参照して、適切な処置を行ってください。
プログラマーの応答
データベース管理者に連絡し、メッセージで示されたトリガーがエラーを受け取った理由を確認してください。
SQLSTATE
09000