THROW ステートメントは、ユーザー例外を生成します。
SEVERITY はオプションの文節で、例外に関連した重大度を判別します。文節には、ヌル以外の整数値を戻す式を含めることができます。文節を省略する場合には、重大度はデフォルトで 1 に解釈されます。
CATALOG はオプションの文節であり、省略されると、デフォルトとして WebSphere Message Broker の現在のバージョン・カタログになります。 現行バージョンの WebSphere Message Broker のメッセージ・カタログを明示的に使用するには、すべてのオペレーティング・システムで BIPV600 を使用します。
MESSAGE はオプションの文節です。これが省略されると、デフォルトとして、WebSphere Message Broker カタログ内で 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 データベース状態関数を参照してください。