修改Oracle Sequence的last number

修改Oracle Sequence的last number

不想將Sequence刪掉重新建的話可以使用以下方法來設定last number

ALTER SEQUENCE gokhan.sample_seq INCREMENT BY 10;//將增量修改為10
SELECT gokhan.sample_seq.NEXTVAL FROM dual;//取得下一個號碼
ALTER SEQUENCE gokhan.sample_seq INCREMENT BY 1;//再將增量修改為1

透過下面的程式將可以了解整個修改的過程

CREATE SEQUENCE sample_seq START WITH 1000;
 
SELECT last_number
FROM   user_sequences
WHERE  sequence_name = 'SAMPLE_SEQ';
 
LAST_NUMBER
-----------
1000
 
ALTER SEQUENCE sample_seq INCREMENT BY -500;
SELECT sample_seq.NEXTVAL FROM dual;
ALTER SEQUENCE sample_seq INCREMENT BY 1;
 
SELECT last_number
FROM   user_sequences
WHERE  sequence_name = 'SAMPLE_SEQ';
 
LAST_NUMBER
-----------
500