插入删除后的DB2触发器

时间:2014-05-30 17:47:02

标签: sql db2

我正在尝试在将记录插入历史记录表后写入从当前表中删除的触发器。我不确定删除(触发的sql动作)语句的语法。就像这样:

CREATE TRIGGER A.DELETE_AFTER_INSERT NO CASCADE AFTER INSERT ONT A.LOAN_HIST LH
REFERENCING NEW AS NEWROW FOR EACH ROW MODE DB2SQL
DELETE * FROM A.LOAN L
--unsure about upcoming lines--
WHERE A.LOAN.LOAN_ID=NEWROW.LOAN_ID;
END

基本上我不确定如何引用我的where子句。在手册中似乎我需要什么时候,我不知道如何在这里实现。我也不确定我是否可以在这里使用表别名,例如'L'和'LH'。

我不能只测试它,因为我没有权限创建触发器。

1 个答案:

答案 0 :(得分:0)

正如AngocA所说,你应该真正安装db2 luw并使用它。

但如果有帮助,这里是我以前用过的样板:

 CREATE OR replace TRIGGER "trigger_name" AFTER 
 insert or delete or update ON TABLE_NAME REFERENCING NEW AS newrow OLD AS oldrow 
 FOR EACH ROW MODE DB2SQL 
BEGIN 
    declare ...
    IF INSERTING THEN 
       ...
    ELSEIF DELETING THEN 
       ...
    ELSEIF UPDATING THEN 
       ...
    END IF; 
END