ALTER SEQUENCE シーケンスを変更するSQL文

ALTER SEQUENCEは、シーケンス(順序)を変更するSQL文です。順序の初期値、増分値、最大値、最小値、および順序のサイクルを変更できます。

ALTER SEQUENCE sequence [START WITH start] [INCREMENT BY inc] [MINVALUE min] [MAXVALUE max] [CYCLE]
  [RESTART]
sequence
変更する順序の名前を指定する。
START WITH
順序の開始値を指定する。開始値の指定を省略した場合、順序の値は 1 から始まる。あくまでも開始値を変更するだけで、現在の値は変わらない。
SQL> ALTER SEQUENCE example START WITH 2;

SQL> SELECT example.NEXTVAL FROM DUAL;

NEXTVAL
-------
      2

SQL> SELECT example.NEXTVAL FROM DUAL;

NEXTVAL
-------
      3
INCREMENT BY
シーケンスの増分値を指定する。
SQL> ALTER SEQUENCE example INCREMENT BY 2;

SQL> SELECT example.NEXTVAL FROM DUAL;

NEXTVAL
-------
      1

SQL> SELECT example.NEXTVAL FROM DUAL;

NEXTVAL
-------
      3
MINVALUE min
順序の最小値を指定する。
SQL> ALTER SEQUENCE example MINVALUE 0;
MAXVALUE max
順序の最大値を指定する。
SQL> ALTER SEQUENCE example MAXVALUE 999;
CYCLE
最大値に達したら最小値に戻ります。CYCLE節の指定を省略した場合は、最大値に達すると順序番号ジェネレータは値の生成を停止し、エラーが返される。
SQL> ALTER SEQUENCE example CYCLE;
RESTART
シーケンスの現在の値をリセットする。リセットされた順序は、再び初期値から値を生成する。
SQL> ALTER SEQUENCE example RESTART;

関連SQL