这是一个简单的例子,不过已经能够表示如何实现这类功能了。 1、在scott用户下建立表dept(其实oracle缺省安装就已经生成了) create table DEPT ( DEPTNO NUMBER(2) not null, DNAME VARCHAR2(14), LOC VARCHAR2(13) ) 2、建立一个sequence create sequence seq_dept minvalue 1 start with 1 increment by 1 nocache; 3、为dept表建立一个insert trigger create or replace trigger insert_dept before insert on dept for each row declare -- local variables here begin select seq_dept.nextval into :new.deptno from dual; end insert_dept; 4、用insert语句测试 insert into dept(dname,loc) values('aaaaaa','bbbbb'); 用select * from dept察看结果【转自/网易社区】
create table DEPT
(
DEPTNO NUMBER(2) not null,
DNAME VARCHAR2(14),
LOC VARCHAR2(13)
) 2、建立一个sequence
create sequence seq_dept
minvalue 1
start with 1
increment by 1
nocache; 3、为dept表建立一个insert trigger
create or replace trigger insert_dept
before insert on dept
for each row
declare
-- local variables here
begin
select seq_dept.nextval into :new.deptno from dual;
end insert_dept; 4、用insert语句测试 insert into dept(dname,loc) values('aaaaaa','bbbbb'); 用select * from dept察看结果【转自/网易社区】
INCREMENT BY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值
NOCYCLE -- 一直累加,不循环
NOCACHE -- 不建缓冲区