VALUES ステートメント
VALUES ステートメントは、トリガーからユーザー定義関数を呼び出す方法を提供します。 遷移変数と遷移表をユーザー定義関数に渡すことができます。
呼びかけ VALUES
このステートメントは、基本トリガーのトリガー・アクションでのみ使用できます。
VALUESにシーケンス参照が続くものは、VALUES句であり、これはフルセレクトの一形態です。 values-clauseの呼び出しに関する情報は、fullselect を参照してください。
承認 VALUES
ステートメントの中で使用される式には、許可が必要です。 詳細は 「表現」 を参照してください。
構文 VALUES
説明の対象: VALUES
- VALUES
- 1 つ以上の式を指定します。 複数の式を指定する場合には、その式を括弧で囲む必要があります。
- 式
- Expressionsで説明されているタイプの表現。 式にホスト変数を含めることはできません。
ユーザー定義関数が式の一部として指定されると、そのユーザー定義関数が呼び出されます。 関数の呼び出し時に負の SQLCODE が戻された場合、Db2 はトリガーの実行を停止し、実行されたトリガー・アクションをロールバックします。
例 VALUES
例: トリガーが活動化
されるときに、ユーザー定義関数 NEWEMP を呼び出す AFTER トリガー EMPISRT1 を作成します。 表 EMP への挿入操作によってトリガーが活動化されます。 新しい従業員番号、ラストネーム、およびファーストネームについての遷移変数をユーザー定義関数に渡します。
CREATE TRIGGER EMPISRT1
AFTER INSERT ON EMP
REFERENCING NEW AS N
FOR EACH ROW
MODE DB2SQL
BEGIN ATOMIC
VALUES(NEWEMP(N.EMPNO, N.LASTNAME, N.FIRSTNAME));
END