THROW 语句

THROW 语句生成用户异常。

语法

USER 关键字指出要抛出的异常的类型。(目前只支持 USER 异常,如果省略 USER 关键字,异常将始终缺省为 USER 异常。)指定 USER 关键字,即使它当前没有影响,这有以下原因:
  • 如果将来的代理发行版支持其他类型的异常,并且缺省类型发生了更改,您就不需要更改代码。
  • 表明这是一个用÷户异常。

SEVERITY 是可选子句,用于确定异常的严重性。此子句可包含返回非 NULL 整数值的任何表达式。如果省略该子句,它将缺省为 1。

CATALOG 是可选子句;如果省略它,则缺省为 WebSphere Message Broker 当前版本目录。要明确使用当前 WebSphere Message Broker 版本消息目录,请在所有操作系统上使用 BIPV600

MESSAGE 是可选子句;如果省略它,则缺省为消息块的第一个消息号,此消息块是为使用 WebSphere Message Broker 目录( 2951)中的 THROM 语句提供的。如果在 THROW 语句中输入消息号,则可以使用消息号 2951 到 2999。或者,也可以遵循使用来自用户定义的扩展的事件日志中的说明生成自己的目录。

使用可选的 VALUES 字段可以向消息中插入数据。您可以插入任意数量的消息片段,但提供的消息(2951 - 2999)只需要插入8 条消息。

示例

以下示例显示如何使用 THROW 语句:
  • 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') ;

有关如何抛出异常的更多信息,以及 SQLSTATESQLCODE、SQLNATIVEERRORSQLERRORTEXT 的详细信息,请参阅 ESQL 数据库状态函数

相关概念
ESQL 概述
相关任务
正在开发 ESQL
抛出异常
相关参考
语法图:可用类型
ESQL 语句
ESQL 数据库状态函数
声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ak05150_