-435 AN INVALID SQLSTATE sqlstate IS SPECIFIED IN A RAISE_ERROR FUNCTION, RESIGNAL STATEMENT, OR SIGNAL STATEMENT
説明
RAISE_ERROR 関数に指定されている SQLSTATE、あるいは、トリガーやルーチンの SIGNAL ステートメントに指定されている SQLSTATE が、 有効な SQLSTATE の規則に準拠していません。
システムの処置
このステートメントを処理することはできません。
プログラマーの応答
RAISE_ERROR 関数、RESIGNAL ステートメント、あるいは SIGNAL ステートメントに指定されている SQLSTATE を変更して、ステートメントの規則に準拠するようにしてください。
RAISE_ERROR 関数の場合、
SQLSTATE は、厳密に 5 文字の文字ストリングでなければなりません。それは、5 の長さで定義されているタイプ CHAR または 5 以上の長さで定義されている
タイプ VARCHAR のものでなければなりません。
SQLSTATE 値は、次の規則に従っていなければなりません。
- 各文字は、数字のセット (「0」から「9」まで) またはアクセント記号のない 大文字 (「A」から「Z」まで) からの文字でなければなりません。
- SQLSTATE クラス (最初の 2 文字) は「00」、 「01」または「02」であってはなりません。これらの文字はエラー・クラスを示しません。
- SQLSTATE クラス (最初の 2 文字) が文字「0」から「6」または「A」から「H」までの 文字で始まる場合、サブクラス (最後の 3 文字) は「I」から「Z」までの範囲にある 文字で始まらなければなりません。
- SQLSTATE クラス (最初の 2 文字) が文字「7」、 「8」、「9」または「I」から「Z」までの 文字で始まる場合、サブクラス (最後の 3 文字) は「0」から「9」または「A」から「Z」まで文字セットの 文字でなければなりません。
RESIGNAL および SIGNAL ステートメントの場合、SQLSTATE 値は、以下の規則に従う、厳密な
5 文字でなければなりません。
- 各文字は、「0」から「9」までの数字、または「A」から「Z」までのアクセント記号のない大文字でなければなりません。
- SQLSTATE クラス (最初の 2 文字) は「00」であってはなりません。これは、正常終了を表すためです。
SQLSTATE
428B3