oracle 序列增长

来源:百度知道 编辑:UC知道 时间:2024/06/30 13:33:40
为实现主键的自动增长,我建立了一个序列和一个触发器。
我本来有2条记录,ID(主键)分别为1和2,即
id
1
2
我新插入一条记录,它的主键不是3,而是84,再插入一条就是85,若隔一段时间在插入,它不是从86开始,可能会是120,
这个问题怎么解决?

这和序列的cache有关,默认cache为20,也就是每次拿出20个放到内存中,当实例崩溃或者内存清洗后则会发生断号的情况。如果你想解决这个问题,可以设置序列的cache为1

create sequence SEQ_
minvalue 1
maxvalue 999999999
start with 1
increment by 1
nocache
cycle;

就OK了~