在我的系统中,我们根据设备状态生成警报别名,因此它适用于某些数据但不适用于所有对象,因此我找到了一个解决方案,例如,如果该设备在警报别名列中没有任何值,那么我将尝试更新该对象的上次修改日期,然后运行它将生成警报别名。 所以现在我想写一个触发器来更新上次修改日期列,如果填充的警报别名是空白的。 请建议或让我知道它是如何在plsql中实现的。
答案 0 :(得分:0)
您的问题有点模糊,但如果您正在使用单个表格,请尝试以下方法:
CREATE OR REPLACE TRIGGER myschema.activity_log_t1
BEFORE INSERT or update
ON myschema.activity_log
REFERENCING NEW AS new OLD AS old
FOR EACH ROW
DECLARE
/******************************************************************************
NAME: activity_log_t1
PURPOSE: Set default field values in activity_log table
Modified: 2016.02.09 - BFL Created
******************************************************************************/
BEGIN
IF :new.alarm_alias IS NULL
THEN
:new.modified_date := SYSDATE;
END IF;
END activity_log_t1;
/