PL/SQLで自動的に増加するシーケンスを設定する方法
PL/SQL では、Sequence(シーケンス)を使用して自動インクリメントシーケンスを実装できます。自動インクリメントシーケンスを設定する手順は次のとおりです。
- シーケンスを作成します。
- シーケンスを作成する sequence_name;
- シークエンスの使用:
- sequence_name.NEXTVAL
- NEXTVAL関数は、連番の次の値を返し、連番を1増やします。
- 現在のシーケンスの値を使用する
- sequence名.CURRVAL
- CURRVAL関数は現在のシーケンス値を返します。つまり、最後にNEXTVAL関数が呼び出されたときに返された値です。
- シーケンスの開始値の設定:
- シーケンス名を変更開始値んら変更する:ALTER SEQUENCE sequence_name START WITH start_value;
- 子句を使用して、系列の最初の値を指定できます。初期状態では、シリーズの最初の値は 1 です
- 逐次増分値を設定する:
- シーケンスsequence_nameのインクリメント値をincrement_valueに変更
- INCREMENT BY句は、連番の増加量を設定するために使用します。連番の増加量は、初期設定では1です。
- 現在の値を取得する:
- SEQUENCE_NAME.CURRVAL を変数名に DUAL から INSERT する。
- SELECT文を使用して、シーケンスの現在値を、変数に格納することができます。
上記のステップにより、PL/SQL 内の自動連番シーケンスを設定して使用できます。