シーケンスの作成に成功した後、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を参照してください。
関連ドキュメント
その他のシーケンス関連の操作については、次のドキュメントを参照してください: