-723 トリガ名 のトリガーされたSQLステートメントでエラーが発生しました。 返された情報: SQLCODE :sql-code、SQLSTATE :sql-state、メッセージトークン token-list、セクション番号 section-number
説明
UPDATE、MERGE、INSERT、または DELETE ステートメントの実行中に、トリガーが起動されました。 起動された SQL ステートメントの 1 つが SQL エラー条件を受け取りました。
- trigger-name
- エラーが発生したときに活動化されたトリガー
- セクション番号
- 失敗している起動済み SQL ステートメントに関連付けられたセクション番号。 WHEN 文節を含むトリガーについては、WHEN 文節がセクション番号 1 です。 起動された SQL ステートメントは、セクション番号 2 から始まって順序に番号付け されます。 これは、WHEN 文節があるトリガーにも、ないトリガーにも該当します。
- SQLコード
- SQL ステートメント実行が失敗した理由を示す数値。 このコードは、起動されたトリガーによって受信されます。
- SQLステート
- SQLCODE に対応する SQLSTATE。
- トークンリスト
- 元の 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® version 7以前で作成されたものでない限り、STMT の結果は Unicode になります。 Unicode の結果を EBCDIC として表示するには、SPUFI 内の ISPF 表示プログラムで DISPLAY UTF8 コマンドを実行します。
このコードで sql-code が示すSQLCODEの説明を参照し、適切な対応を取る。
プログラマー応答
データベース管理者に連絡し、メッセージで示されたトリガーがエラーを受け取った理由を確認してください。
SQLSTATE
09000