sequence的复位

如果sequence在使用的过程中想要复位到初值,或者回复的以前的某个值,可以这样做:
1.修改sequence的increment by属性为一个负数;
2.调用sequence的nextval方法,让当前值变小;
3.修改sequence的increment by属性为原来的值。

注意:当前使用的user必须有修改sequence的权利。

sequence有哪些属性呢?
运行desc user_sequences
结果如下:
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 SEQUENCE_NAME                             NOT NULL VARCHAR2(30)
 MIN_VALUE                                          NUMBER
 MAX_VALUE                                          NUMBER
 INCREMENT_BY                              NOT NULL NUMBER
 CYCLE_FLAG                                         VARCHAR2(1)
 ORDER_FLAG                                         VARCHAR2(1)
 CACHE_SIZE                                NOT NULL NUMBER
 LAST_NUMBER                               NOT NULL NUMBER
 
修改sequence
假设当前值为10,要回到1
alter sequence sequence_name increment by -9;
select sequence_name.nextval from dual;
alter sequence sequence_name increment by 1;

你可能感兴趣的:(cache,user,null)