Oracle触发器更新不同表的正确语法是什么?

问题描述:

架构:分配(票号,高科技pplSoft,日期分配状态) 如果状态ELD是一个枚举,可以:分配,在进步,委托,关闭成功,或关闭不成功Oracle触发器更新不同表的正确语法是什么?

1)写触发称为ClosedTicket,只要ASSIGNMENT表的状态属性 更改为“成功关闭”或“关闭不成功”, 就会将TICKETS表的日期关闭属性的值设置为当前的 日期。

我开始这样吗?并在where子句中使用状态='关闭成功'或状态='关闭不成功'?

创建或

像这样的东西应该工作REPLACE TRIGGER ClosedTicket 更新后(虽然我猜什么的主键列在TICKETS名称是)。

CREATE OR REPLACE TRIGGER ClosedTicket 
    AFTER UPDATE ON assignment 
    FOR EACH ROW 
BEGIN 
    IF(:new.status IN ('closed successful', 'closed unsuccessful')) 
    THEN 
    UPDATE tickets t 
     SET date_closed = sysdate 
    WHERE t.ticket_id = :new.ticket; 
    END IF; 
END;