我得用分局写个触发器。
我想在其中声明一些局部变量,并在将值插入到表之前进行一些操作。
使用DB2,是否有可能在触发代码中包含局部变量?
发布于 2011-12-05 18:18:44
不,你可以!
下面是来自iSeries DB2 SQL编程手册 (它倾向于在LUW后面运行几个版本)的一些示例代码(全部为SQL):
CREATE TRIGGER TransactionBeforeTrigger BEFORE INSERT ON TransactionTable
REFERENCING NEW AS new_row
FOR EACH ROW MODE DB2ROW
BEGIN
DECLARE newmonth SMALLINT; -- Here's the decleration
SET newmonth = MONTH(new_row.DateOfTransaction);
IF newmonth < 4 THEN
SET new_row.FiscalQuarter=3;
ELSEIF newmonth < 7 THEN
SET new_row.FiscalQuarter=4;
ELSEIF newmonth < 10 THEN
SET new_row.FiscalQuarter=1;
ELSE
SET new_row.FiscalQuarter=2;
END发布于 2012-04-04 12:25:31
这取决于平台。对于z/OS平台,答案是“不可以”。与其他平台相比,z/OS在功能上往往落后。
https://stackoverflow.com/questions/8385312
复制相似问题