CREATE SEQUENCEは、シーケンス(順序)を作成するSQL文です。順序の初期値、増分値、最大値、最小値、および順序のサイクルを指定できます。
CREATE SEQUENCE [schema.]sequence [START WITH start] [INCREMENT BY inc]
[ MAXVALUE max | NOMAXVALUE ]
[ MINVALUE min | NOMINVALUE ]
[ CYCLE | NOCYCLE ]
[ CACHE | NOCACHE ]
SQL> CREATE SEQUENCE tsuka.empno;
順序が作成されました。
SQL> CREATE SEQUENCE empno;
順序が作成されました。
SQL> CREATE SEQUENCE empno START WITH 1000;
順序が作成されました。
SQL> SELECT empno.NEXTVAL FROM DUAL;
NEXTVAL
-------
1000
SQL> CREATE SEQUENCE empno INCREMENT BY 10;
増分値に負の値を指定して、順序を降順に生成させることもできる。
SQL> CREATE SEQUENCE empno INCREMENT BY -1 START WITH 9999;
SQL> CREATE SEQUENCE empno MAXVALUE 9999;
順序が作成されました。
SQL> CREATE SEQUENCE empno NOMAXVALUE;
順序が作成されました。
SQL> CREATE SEQUENCE empno MINVALUE 0;
順序が作成されました。
SQL> CREATE SEQUENCE empno NOMINVALUE;
順序が作成されました。
SQL> CREATE SEQUENCE empno CYCLE;
順序が作成されました。
SQL> CREATE SEQUENCE empno NOCYCLE;
順序が作成されました。
SQL> CREATE SEQUENCE empno CACHE 30;
順序が作成されました。
自分のスキーマ内にシーケンスを作成するには、CREATE SEQUENCE システム権限が必要である。
他ユーザのスキーマ内にシーケンスを作成するには、CREATE ANY SEQUENCE システム権限が必要である。