THROW ステートメントを使用して、ユーザー例外を生成します。
SEVERITY はオプションの文節で、例外に関連した重大度を判別します。文節には、ヌル以外の整数値を戻す式を含めることができます。文節を省略する場合には、重大度はデフォルトで 1 に解釈されます。
CATALOG はオプションの文節であり、省略されると、デフォルトとして WebSphere® Message Broker の現在のバージョン・カタログになります。 現行バージョンのメッセージ・カタログを明示的に使用するには、すべてのオペレーティング・システムで BIPv600 を使用します。
MESSAGE はオプションの文節です。これが省略されると、デフォルトとして、 デフォルト・カタログ内で THROW ステートメントを使用するために提供されるメッセージ・ブロックの最初のメッセージ番号 (2951) になります。 THROW ステートメントにメッセージ番号を入力する場合、デフォルト・カタログからメッセージ番号 2951 から 2999 を使用できます。 あるいは、メッセージ・カタログの作成の指示に従って、独自のカタログを生成することもできます。
オプションの VALUES フィールドを使用すると、データをメッセージに挿入できます。任意の数の情報を挿入できますが、提供されているメッセージ (2951 から 2999 まで) の場合は 8 個の挿入のみ可能です。
THROW USER EXCEPTION;
THROW USER EXCEPTION CATALOG 'BIPv600' MESSAGE
2951 VALUES(1,2,3,4,5,6,7,8) ;
THROW USER EXCEPTION CATALOG 'BIPv600' MESSAGE
2951 VALUES('The SQL State: ',
SQLSTATE, 'The SQL Code: ', SQLCODE, 'The SQLNATIVEERROR: ', SQLNATIVEERROR,
'The SQL Error Text: ', SQLERRORTEXT ) ;
THROW USER EXCEPTION CATALOG 'BIPv600' MESSAGE
2951 ;
THROW USER EXCEPTION CATALOG 'MyCatalog' MESSAGE 2951 VALUES('Hello World') ;
THROW USER EXCEPTION MESSAGE 2951 VALUES('Insert text 1', 'Insert text 2') ;
例外をスローする方法と、SQLSTATE、SQLCODE、SQLNATIVEERROR、および SQLERRORTEXT については、ESQL データベース状態関数を参照してください。