Oracle では、Select ステートメントを Nextval とともに使用して、次のシーケンスをクエリできます。Nextval は初めて初期値を返し、シーケンス値はその後毎回増加するため、次のシーケンスをクエリできます。構文は「 select シーケンス名.Nextval from Dual」です。
このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。
select 序列名.Nextval from dual;--生成并获得下一个序列 select 序列名.CURRVAL from dual;--如果与上述语句为同一会话,可以通过此句获得上面生成的序列。
例は次のとおりです。
知識を広げる:
SELECT INR_REQUIRMENT_SQUENCE.CURRVAL FROM dual
--現在のシーケンスの値を取得します。最初の NEXTVAL は初期値を返します。
後続の NEXTVAL は、定義した INCREMENT BY 値を自動的に増やします。増加した値を返します。 CURRVAL は常に現在のシーケンスの値を返しますが、最初の NEXTVAL 初期化後に CURRVAL を使用することもできます。それ以外の場合はエラーが発生します。
同じステートメント内で複数の NEXTVAL を使用すると、NEXTVAL はシーケンスの値を 1 回増加します。
実際、sequence は、テーブル内の行のシーケンス番号を自動的に生成し、等間隔の値のセットを生成できるシーケンス番号ジェネレーターです (タイプは数値)。その主な目的は、insert ステートメントで参照できるテーブルの主キー値を生成することです。挿入する前に、シーケンス番号の nextval 値を取得して挿入します。クエリを通じて現在の値を確認したり、シーケンスを次の値にインクリメントしたりすることもできます。
シーケンスを定義するにはどうすればよいですか?
create sequence INR_REQUIRMENT_SQUENCE INCREMENT BY 1 -- 每次加几个 START WITH 1 -- 从1开始计数 NOMAXVALUE -- 不设置最大值 NOCYCLE -- 一直累加,不循环 CACHE 10;
推奨チュートリアル: 「Oracle ビデオ チュートリアル 」
以上がOracleで次のシーケンスをクエリする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。