クラス HintComment
java.lang.Object
org.iplass.mtp.entity.query.hint.HintComment
- すべての実装されたインタフェース:
Serializable
,ASTNode
EQLのヒントコメントを表現します。
ヒントには、EQL上でのインデックス付与に関するヒント、バインド変数化に関するヒント、キャッシュ、クエリのタイムアウト、フェッチサイズに関するヒント、データベースネイティブのヒントなどを付与することが可能です。
ヒントコメントは、select句の後に/*+で始まり、*/で終わるコメント形式で指定することが可能です。
ヒントを追加したEQL例:
select /*+ fetch_size(100) index(c.x) no_index(a, b) native('ORDERED USE_NL_WITH_INDEX(...)') */ a, b, c.x, d.x, d.name from SampleEntity where c.x='hoge' and a=1 and b=15
また、ヒント句は外部のプロパティファイルに定義し、そのプロパティファイルからキー名を指定して読み込むことが可能です。 プロパティファイルのパスはQueryServiceに定義します。
プロパティファイルの記述例:
hint1=native(q0t0, 'FORCE INDEX(obj_store__USER_ISTR_index_3)') hint2=native(q0, 'FORCE INDEX(obj_store_ISTR_index_1)') :
外部ファイルからヒントを読み込むEQL例:
select /*+ @hint(hint1) */ a, b, c.x, d.x, d.name from SampleEntity where c.x='hoge' and a=1 and b=15上記設定ファイルの場合、これが、
select /*+ native(q0t0, 'FORCE INDEX(obj_store__USER_ISTR_index_3)') */ a, b, c.x, d.x, d.name from SampleEntity where c.x='hoge' and a=1 and b=15と展開されます。
また、Hint.externalHint(String)
で外部ファイルに定義されるHintをインスタンスとして取得可能です。
-
コンストラクタの概要
-
メソッドの概要
修飾子とタイプメソッド説明accept
(ASTTransformer transformer) void
accept
(HintVisitor visitor) boolean
int
hashCode()
void
setHintList
(List<Hint> hintList) toString()
-
コンストラクタの詳細
-
HintComment
public HintComment() -
HintComment
-
HintComment
-
HintComment
-
-
メソッドの詳細