シーケンス作成後、ALTER SEQUENCE ステートメントを使用してシーケンスのプロパティを変更できます。OceanBaseデータベースでは、シーケンスの開始値、最小値、最大値、ステップサイズ、および繰り返し属性の変更をサポートしています。
シーケンスを変更するSQL構文は以下のとおりです:
ALTER SEQUENCE [database_name.]sequence_name
{
[RESTART]
|[START WITH int_value]
|[MINVALUE int_value | NOMINVALUE]
|[MAXVALUE int_value | NOMAXVALUE]
|[INCREMENT BY int_value]
|[CACHE int_value | NOCACHE]
|[ORDER | NOORDER]
|[CYCLE | NOCYCLE]
};
このステートメントを実行するユーザーには ALTER 権限が付与されていなければなりません。
例:
シーケンス
seq2の最大値を変更し、自動増分で繰り返し生成するように指定します。obclient> ALTER SEQUENCE seq2 MAXVALUE 1024 CYCLE;シーケンスの開始値を変更します。
INCREMENT BYの値が0より大きい場合、シーケンスをリセットした後、MINVALUEから値を取り始めることができます。INCREMENT BYの値が0より小さい場合、シーケンスをリセットした後、MAXVALUEから値を取り始めることができます。ステートメントは以下のとおりです:obclient> ALTER SEQUENCE seq3 RESTART; Query OK, 0 rows affectedシーケンスをリセットし、
3から値を取り始めるようにします。ステートメントは以下のとおりです:obclient> ALTER SEQUENCE seq4 RESTART START WITH 3; Query OK, 0 rows affected
シーケンスの開始値を変更する際、
RESTARTはステートメント内でシーケンス名の後に必ずしも来る必要はありません。ステートメント内の任意の位置に配置できます。例:obclient> ALTER SEQUENCE seq4 START WITH 3 RESTART MINVALUE -100 CYCLE; Query OK, 0 rows affected
ALTER SEQUENCE ステートメントの詳細については、ALTER SEQUENCEを参照してください。
関連ドキュメント
シーケンスに関するその他の操作については、以下のドキュメントを参照してください: