关键字:
:NEW 和:OLD使用方法和意义,new 只出现在insert和update时,old只出现在update和delete时。在insert时new表示新插入的行数据,update时new 表示要替换的新数据、old表示要被更改的原来的数据行,delete时old表示要被删除的数据。
Oracle数据库自增字段实现方式:序列与触发器
本文详细介绍了如何在Oracle数据库中通过序列(sequence)和触发器(trigger)实现类似自增字段的功能。具体包括序列创建、触发器编写及使用方法,特别是对于:new和:old关键字在insert、update操作中的应用。
在oracle数据库中,没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。
假设[表test]关键字段为id,建一个序列,代码为:
create sequence seq_test minvalue 1 --最小值 maxvalue 99999999999 --最大值 start with 1 -- 从1开始计数 increment by 1 -- 每次加几个 nocache --没缓存 order;建触发器的代码为:
create or replace trigger tri_test before insert on test for each row declare nextid number; begin IF :new.id IS NULL or :new.id=0 THEN select seq_test.nextval into nextid from sys.dual; :new.id:=nextid; end if; end tri_test;关键字:
:NEW 和:OLD使用方法和意义,new 只出现在insert和update时,old只出现在update和delete时。在insert时new表示新插入的行数据,update时new 表示要替换的新数据、old表示要被更改的原来的数据行,delete时old表示要被删除的数据。

被折叠的 条评论
为什么被折叠?