ALTER SEQUENCE
目的
ALTER
SEQUENCE
文を使用すると、既存の順序の増分値、最小値および最大値、キャッシュされる数および動作を変更できます。この文は、順序番号に影響します。
関連項目:
順序の詳細は、「CREATE SEQUENCE」を参照してください。
前提条件
順序が自分のスキーマ内にある必要があります。自分のスキーマ内にない場合は、順序に対するALTER
オブジェクト権限またはALTER
ANY
SEQUENCE
システム権限が必要です。
構文
alter_sequence::=
セマンティクス
この文のキーワードおよびパラメータの意味は、順序を作成する場合と同じです。
-
NEXTVAL
を最初に呼び出す前に、INCREMENT
BY
の値を変更する場合、いくつかの順序番号がスキップされます。このため、元のSTART
WITH
の値を保持するには、順序を削除し、これを元のSTART
WITH
の値および新しいINCREMENT
BY
の値を使用して再作成する必要があります。 -
KEEP
句またはNOKEEP
句を使用して、要求のランタイムとフェイルオーバーとの間で順序を変更すると、その要求に対するアプリケーション・コンティニュイティのための再実行中にNEXTVAL
の元の値は維持されません。 -
いくつかの妥当性チェックが行われます。たとえば、
MAXVALUE
の値に現行の順序番号より小さい値は指定できません。関連項目:
順序の作成については、「CREATE SEQUENCE」を参照してください。順序の削除および再作成については、「DROP SEQUENCE」を参照してください。
例
順序の変更: 例
次の文は、customers_seq
順序(「順序の作成: 例」で作成)に新しい最大値を設定します。
ALTER SEQUENCE customers_seq MAXVALUE 1500;
次の文は、customers_seq
順序にCYCLE
およびCACHE
オプションを指定します。
ALTER SEQUENCE customers_seq CYCLE CACHE 5;