CREATE SEQUENCE [ schema. ]sequence[ { INCREMENT BY | START WITH } integer --增量值 | 开始值| { MAXVALUE integer | NOMAXVALUE } --最大号 | 不设置最大号| { MINVALUE integer | NOMINVALUE } --最小号 | 不设置最小号| { CYCLE | NOCYCLE } --循环 | 不循环| { CACHE integer | NOCACHE }| { ORDER | NOORDER } --顺序 | 不顺序];
如果指定cache值,oracle就可以预先在内存里面放置一些sequence,这样存取的快些。cache里面的取完后,oracle自动再取一组到cache。 使用cache或许会跳号, 比如数据库突然不正常down掉(shutdown abort),cache中的sequence就会丢失. 所以可以在create sequence的时候用nocache防止这种情况create sequence felix_seq_testminvalue 1maxvalue 99999999999start with 1increment by 1cache 10;
felix_seq_test.currvalfelix_seq_test.nextval
insert into felix.tab_test01(id, code, status, date)(select felix.felix_seq_test.nextval, code, 1, sysdatefrom felix.tab_testwhere type = 7);
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/11258275/viewspace-667735/ ,如需转载,请注明出处,否则将追究法律责任。