oracle 触发器完成自增列 功能
create table t_student(
  id number,
  sno varchar2(20),--学号
  name varchar2(20)
)
--
create sequence myseq--公共序列
minvalue 1
maxvalue 999999
start with 1
increment by 1
cache 30;
create sequence mysno--学号序列
minvalue 1
maxvalue 999999
start with 1
increment by 1
cache 30;
--触发器
create or replace trigger mytr
  before insert on t_student for each row
begin
  select myseq.nextval into :new.id from dual;
  select 'S'||to_char(mysno.nextval,'000') into :new.sno from dual;
end;
--测试
insert into t_student(name) values('张三')
insert into t_student(name) values('李四')
insert into t_student(name) values('王五')