我有sql的触发器
CREATE or REPLACE TRIGGER student
BEFORE INSERT ON MEMBEROF
FOR Each Row
WHEN (new.studentid != old.studentid )
BEGIN
DBMS_OUTPUT.PUT_LINE('Inserted new year ');
select extract(year from sysdate)
into :new.JOINED
from dual;
END;
/
此触发器假设在插入新条目并且年份更改为当前年份时激活
当我尝试将某些内容插入到Memberof表中时,此触发器未激活。
我的尝试是 插入成员 价值观(75234,42,1999);
答案 0 :(得分:0)
我认为您可以尝试UPDATE而不是INSERT,调用INSERT触发器时应该没有旧的变量。
答案 1 :(得分:0)
在您的情况下,旧与新的返回false,因为old为null,因为每个新数据行都不存在旧值。
我猜你是在oracle上,所以你可以尝试使用nvl()函数来覆盖它,或者将你的when条件简单地改为1 = 1.