sequence If the loop cycle is not set, a ORA-08004 error occurs after the maximum value of sequence is exceeded.
sql> Create sequence Test_seq_no_cycle
2 MinValue 1
3 MaxValue 200
4 Start with 100
5 Increment by 50
6 NoCache;
Sequence created
Sql> SELECT test_seq_no_cycle. Nextval from DUAL;
Nextval
----------
100
Sql> SELECT test_seq_no_cycle. Nextval from DUAL;
Nextval
----------
150
Sql> SELECT test_seq_no_cycle. Nextval from DUAL;
Nextval
----------
200
Sql> SELECT test_seq_no_cycle. Nextval from DUAL;
SELECT test_seq_no_cycle. Nextval from DUAL
ORA-08004: Sequence test_seq_no_cycle. Nextval exceeds MAXVALUE cannot be instantiated
sql> Create sequence Test_seq
2 MinValue 1
3 MaxValue 200
4 Start with 100
5 Increment by 50
6 NoCache
7 cycle;
Sequence created
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
100
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
150
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
200
When the maximum value of the Sequenc is reached, the initial value of the loop cycle,sequence is set to start at MinValue rather than the set start with value.
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
1
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
51
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
101
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
151
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
1
Sql> SELECT Test_seq. Nextval from DUAL;
Nextval
----------
51