Error Statement
ERROR文は、プロシージャがエラー状態になったので中断することを宣言します。このステートメントは、現在のトランザクションが存在する場合、それをロールバックします。ERRORキーワードの後には、有効な任意の式を指定できます。
Usage
|
Example
BEGIN ... ERROR 'Invalid input value: ' || nvl(Acct.GetBalance.AcctID, 'null');ENDERROR文は以下の文と同じです:
RAISE SQLEXCEPTION message;Raise Statement
RAISE文は、例外や警告を発生させるために使用されます。例外を発生させる場合、このステートメントは、現在のトランザクションが存在する場合は、そのトランザクションもロールバックします。
Usage
RAISE [SQLWARNING] exception;exceptionは、例外または例外式への変数参照です。
Syntax
SQLWARNINGが指定された場合、例外は警告としてクライアントに送信され、プロシージャは実行を続行します;- NULL警告は無視されます。NULL の非警告例外でも例外は発生します。
Example
BEGIN RAISE SQLWARNING SQLEXCEPTION 'invalid' SQLSTATE '05000';ENDException Expression
例外式は例外を発生させ、警告として使用することができます。
Usage
SQLEXCEPTION message [SQLSTATE state [, code]] CHAIN exceptionSyntax
- いずれの値も
nullとなる場合があります; - MessageとStateはそれぞれ例外メッセージとSQLの状態を指定する文字列式です。CData Virtuality Server はまだ SQL ステート使用に関する ANSI SQL 仕様に完全には準拠していませんが、任意の SQL ステートを設定することができます;
- Code はベンダーコードを表す整数式です;
- Exceptionは、例外または例外式への変数参照でなければならず、結果の例外を親として連結されます。