百威 发表于 2013-2-7 19:38:07

ORACLE自增字段创建方法

oracle没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。
假设关键字段为id,建一个序列,代码为:
create sequence seq_test_ids
minvalue 1
maxvalue 99999999
start with 1
increment by 1
nocache
order;
<!---->
<!---->

建解发器代码为:
create or replace trigger tri_test_id
   before insert on test_table   
   for each row
declare
   nextid number;
begin
   IF :new.id IS NULLor :new.id=0 THEN
   select seq_test_id.nextval
   into nextid
   from sys.dual;
   :new.id:=nextid;
   end if;
end tri_test_id;

OK,上面的代码就可以实现自动递增的功能了。

来自:http://www.examda.com/oracle/zhonghe/20071024/103701512.html
页: [1]
查看完整版本: ORACLE自增字段创建方法