This is a cache of http://dbflute.seasar.org/ja/manual/function/ormapper/behavior/select/selectnextval.html. It is a snapshot of the page at 2024-11-13T00:24:20.678+0000.
selectNextVal(cb) (シーケンス検索) | <strong>dbflute</strong>

selectNextVal(cb)

概要

基本概念

シーケンスの次の番号を検索 をします。

シーケンスに関連付いたテーブルにのみ生成されます。

ただ、insert時は、EntityのPKの値が空っぽであれば自動的にシーケンスが取得されて、Entityにセットされてinsertされるので、 このメソッドを直接利用する場面は多くはありません。insert前にシーケンスの値を取得して何かしらの処理を行う場合に有効です。

会話上では、せれくとねくすとばる と表現します。

実装方法

実装の流れ

Behaviorの selectNextVal() を呼び出します。

e.g. selectNextVal()の実装手順 (Eclipseでコード補完) {MEMBER} @Java
memberBhv.selNV // .selNV と打って enter
--
// セミコロン ';' を打って ctrl(or command) + 2 そして L
memberBhv.selectNextVal();
--
Integer count = memberBhv.selectNextVal();

メソッド仕様

引数

なし

戻り値

そのテーブルの(単一の)PKカラムの型と同じ(IntegerやLongなど)。

オーバーライド

selectList() と同じような要領となります。

シーケンスキャッシュなら

関連付いているシーケンスがキャッシュされているならば(シーケンスキャッシュの設定がされていれば)、 このメソッドは、そのシーケンスキャッシュから値を取得します。キャッシュがなければその場でキャッシングしますし、キャッシュがあればその値が戻ります。