Cosminexus アプリケーションサーバ V8 リファレンス 定義編(サーバ定義)

[目次][索引][前へ][次へ]

6.4 クエリヒント

Cosminexus JPAプロバイダでは,O/Rマッピングファイルのnamed-query要素の下位要素であるhint要素にクエリヒントを指定できます。なお,クエリヒントは,@NamedQueryアノテーションの引数の@Hintアノテーションにも指定できます。アノテーションに指定するクエリヒントについては,マニュアル「Cosminexus アプリケーションサーバ リファレンス API編」の「2.6.53 @QueryHint」を参照してください。

O/Rマッピングファイルのnamed-query要素の下位要素であるhint要素に指定できるクエリヒントを次の表に示します。

表6-68 Cosminexus JPAプロバイダで使用できるクエリヒント

キー名称 説明 指定可能値 デフォルト
cosminexus.jpa.pessimistic-lock 悲観的ロックを使用するかどうかを指定します。

NoLock
悲観的ロックを使用しません。

Lock
悲観的ロックを使用します。
対象となるテーブルがすでにロックされている場合,解放されるまで待ちます。
  • Oracleの場合
    SELECT … FOR UPDATEを発行します。
  • HiRDBの場合
    SELECT … WITH EXCLUSIVE LOCKを発行します。

LockNoWait
悲観的ロックを使用します。
対象となるテーブルがすでにロックされている場合,例外が発生します。
  • Oracleの場合
    SELECT … FOR UPDATE NO WAITを発行します。
  • HiRDBの場合
    SELECT … WITH EXCLUSIVE LOCK NO WAITを発行します。
NoLock

注 指定できるデータ型はStringです。


注意
O/Rマッピングファイルに指定したクエリヒントに,指定可能範囲外の値が設定された場合は,アプリケーションを開始したタイミングで例外が発生します。なお,値の大文字と小文字は区別しません。