ty9919 发表于 2016-11-14 08:24:50

Db2的触发器实例

drop TRIGGER NDJJ.TEST_EMPRCPD
@
CREATE TRIGGER NDJJ.TEST_EMPRCPD AFTERINSERTON NDJJ.ndjj_EMPIMPDATAREFERENCINGNEW AS newrowNEW_TABLE AS ndjj_empimpdata_empscoregrdFOR EACH ROWMODE DB2SQL WHEN ( newrow.Svtyp_b='1')
BEGIN ATOMIC
update ndjj_empwageadj a set (a.Emp_scoregrd_b) =
--cast(newrow.Impvalue as char(1))
case when newrow.Impvalue=1 then 'A'
   when newrow.Impvalue=2 then 'B'
   when newrow.Impvalue=3 then 'C'
   when newrow.Impvalue=4 then 'D'
   when newrow.Impvalue=5 then 'E'
else '-' end
where a.pk_year=newrow.pk_year
and a.Pk_corp=newrow.Pk_corp
and a.emp_branchcode=newrow.emp_branchcode
and a.pk_year=(select pk_year from ndjj_setyear) ;
END
@

把以上的文本存为 name.sql;然后执行db2cmd--> db2 -td@ -f name.sql就可以了
页: [1]
查看完整版本: Db2的触发器实例