VALUES 语句
VALUES语句提供了一种从触发器调用用户定义函数的方法。 转换变量和转换表可以传递给用户定义的函数。
调用 VALUES
此语句仅可用于基本触发器的触发操作。
VALUES后跟一个序列引用 ,即一个值子句 ,是 fullselect 的一种形式。 有关调用值子句的信息,请参阅 fullselect。
授权 VALUES
声明中使用的任何表述均需获得授权。 更多信息,请参阅 “表达”。
语法 VALUES
描述 VALUES
- VALUES
- 指定一个或多个表达式。 如果指定了多个表达式,则必须将表达式括在括号内。
- 表达式
- 任何表达方式,如表达式中描述的那样。 表达式中不能包含宿主变量。
如果用户定义的函数被指定为表达式的一部分,则调用该用户定义的函数。 如果调用函数时返回负面的 SQLCODE, Db2 将停止执行触发器,并回滚已执行的任何触发操作。
示例 VALUES
示例 :创建一个触发器 EMPISRT1 ,当触发器激活时调用用户定义的函数NEWEMP。 在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