在Oracle中模拟ms Sql 中的自动增加字段

在Oracle中模拟ms Sql 中的自动增加字段

方法原理:建立一个与表字段对应的序列,再建立一个插入前的触发器,使在插入前得到一个序列值,实现字段的自动增长列,不需手工干预。建立的触发器如下:

CREATE Or REPLACE TRIGGER 触发器名 before

INSERT ON 表名

FOR EACH ROW

BEGIN

SELECT 序列名.NEXTVAL into :new.字段名 FROM dual;

--IF :new.字段名 IS NULL THEN

-- SELECT 序列名.NEXTVAL into :new.字段名 FROM dual;

--END IF;

END;

经过以上的处理,这个字段将不接受手工值,如果想让字段在没有值的情况下才取序列值的话,请用下面注释掉的语句,即先判断一下,这个字段是否为null。