CREATE OR REPLACE TRIGGER TRI_after_insert_zjzfxxb
AFTER Insert ON yw_zjzfxxb
REFERENCING OLD AS OLD NEW AS NEW FOR EACH Row
declare
n number;
ifzt Varchar2(1);
dqhm yw_zjzfxxb.kshm%TYpe;
xxzl303 Varchar2(3);
xxzl041 Varchar2(3);
Begin
其中 REFERENCING OLD AS OLD NEW AS NEW FOR EACH Row
这句是什么意思呢?
AFTER Insert ON yw_zjzfxxb
REFERENCING OLD AS OLD NEW AS NEW FOR EACH Row
declare
n number;
ifzt Varchar2(1);
dqhm yw_zjzfxxb.kshm%TYpe;
xxzl303 Varchar2(3);
xxzl041 Varchar2(3);
Begin
其中 REFERENCING OLD AS OLD NEW AS NEW FOR EACH Row
这句是什么意思呢?
old : 旧数据
new : 新数据触发器体中,可以使用新的命名来引用
---这样old为旧数据 new新数据,如果有新的数据就要替换旧的数据,作为行级触发器。
begin前面出现的new,old不加冒号,begin和end之间出现的new和old都要在前面加上":"。REFERENCING OLD AS OLD NEW AS NEW
这样写之后就可以在begin end直接直接使用别名来引用。
应该没有old才对。
我估计 REFERENCING OLD AS OLD NEW AS NEW FOR EACH Row 这个可能是 为了不让在触发器中出现报没有old而设置的吧。