oracle new 和old 关键字

Posted 太空堡垒啦啦啦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle new 和old 关键字相关的知识,希望对你有一定的参考价值。

今天在看书,有一个触发器的例子,

create or replace trigger aaaa
before insert
on bbbb
begin
insert into cccc values (new.name,new.num);
end;

创建一个触发器 aaaa,当向bbbb插入数据时,都要在cccc里插入相同的数据,但是写好程序后 运行时会报错,

对照着书上的例子 并没有发现什么不一样,

然后百度了一下new的用法,更改后

create or replace trigger aaaa
before insert 
on bbbb
for each row
begin
insert into cccc values (:new.name,:new.num);
end;

就可以正常运行了。

用法:

添加:for each row 指定为行触发器

:new 新的数据

:old 旧数据

insert 语句有new 

delete语句有old

update 两个都有

以上是关于oracle new 和old 关键字的主要内容,如果未能解决你的问题,请参考以下文章

Oracle 错误:ORA-00905:缺少关键字

Oracle命令行中显示:ORA-04076: 无效的 NEW 或 OLD 说明

使用 :new 和 :old 在更新和插入之前触发 Oracle

CREATE TRIGGER时NEW和OLD是关键字

在 Oracle 触发器中动态评估伪记录 (:OLD, :NEW)

PLSQL :NEW 和 :OLD