|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface DbmsDialect
データベースごとの方言をあつかうインターフェースです。
メソッドの概要 | |
---|---|
java.lang.String |
convertGetCountSql(java.lang.String sql)
件数取得用SQLに変換します。 |
java.lang.String |
convertLimitSql(java.lang.String sql,
int offset,
int limit)
limit用SQLに変換します。 |
java.lang.String |
getCountSqlSelectList(java.util.List<PropertyMeta> idPropertyMeta)
件数取得用SQLのSELECTリストを返します。 |
int |
getDefaultBatchSize()
デフォルトのバッチサイズを返します。 |
GenerationType |
getDefaultGenerationType()
GeneratedValue.strategy() にGenerationType.AUTO が指定された場合の、
デフォルトのGenerationType を返します。 |
java.lang.String |
getForUpdateString(SelectForUpdateType type,
int waitSeconds,
Pair<java.lang.String,java.lang.String>... aliases)
SELECT文に付加する FOR UPDATE NOWAIT 相当のSQLを返します。 |
java.lang.String |
getHintComment(java.lang.String hint)
ヒントコメントを返します。 |
java.lang.String |
getIdentitySelectString(java.lang.String tableName,
java.lang.String columnName)
識別子が GenerationType.IDENTITY で自動生成される場合に、 生成された主キーの値を取得するSQLを返します。 |
java.lang.String |
getLockHintString(SelectForUpdateType type,
int waitSeconds)
SELECT文に付加するロックヒントを返します。 |
java.lang.String |
getName()
名前を返します。 |
java.lang.String |
getSequenceNextValString(java.lang.String sequenceName,
int allocationSize)
識別子が GenerationType.SEQUENCE で自動生成される場合に、 シーケンスの値を取得するSQLを返します。 |
ValueType |
getValueType(java.lang.Class<?> clazz,
boolean lob,
TemporalType temporalType)
値タイプを返します。 |
ValueType |
getValueType(PropertyMeta propertyMeta)
値タイプを返します。 |
boolean |
isInsertIdentityColumn()
識別子が GenerationType.IDENTITY で生成される場合に、 識別子をINSERT文に含める場合は
true を返します。 |
boolean |
isUniqueConstraintViolation(java.lang.Throwable t)
一意制約違反を原因とする例外であれば true を返します。 |
boolean |
needsParameterForResultSet()
プロシージャの呼び出しで結果セットに対してパラメータが必要かどうかを返します。 |
void |
setupJoin(FromClause fromClause,
WhereClause whereClause,
JoinType joinType,
java.lang.String tableName,
java.lang.String tableAlias,
java.lang.String fkTableAlias,
java.lang.String pkTableAlias,
java.util.List<JoinColumnMeta> joinColumnMetaList,
java.lang.String lockHint,
java.lang.String condition)
結合用のSQLを組み立てます。 |
boolean |
supportsBatchUpdateResults()
バッチ更新の結果として更新カウントの配列を正しく返す場合は true を返します。 |
boolean |
supportsCursor()
カーソルをサポートしているかどうか返します。 |
boolean |
supportsForUpdate(SelectForUpdateType type,
boolean withTarget)
SELECT文で FOR UPDATE をサポートしていればtrue を返します。 |
boolean |
supportsGetGeneratedKeys()
識別子が GenerationType.IDENTITY で自動生成される場合に、 生成された主キーの値を
Statement.getGeneratedKeys() で取得できる場合はtrue を返します。 |
boolean |
supportsIdentity()
GenerationType.IDENTITY をサポートしている場合はtrue を返します。 |
boolean |
supportsInnerJoinForUpdate()
内部結合した場合に FOR UPDATE をサポートしていればtrue を返します。 |
boolean |
supportsLimit()
リミットをサポートしているかどうかを返します。 |
boolean |
supportsLockHint()
SELECT文で排他制御のためのロックヒントをサポートしていれば true を返します。 |
boolean |
supportsOffset()
オフセットをサポートしているかどうかを返します。 |
boolean |
supportsOffsetWithoutLimit()
リミットなしのオフセットをサポートしているかどうかを返します。 |
boolean |
supportsOuterJoinForUpdate()
外部結合した場合に FOR UPDATE をサポートしていればtrue を返します。 |
boolean |
supportsSequence()
GenerationType.SEQUENCE をサポートしている場合はtrue を返します。 |
メソッドの詳細 |
---|
java.lang.String getName()
boolean supportsLimit()
boolean supportsOffset()
boolean supportsOffsetWithoutLimit()
boolean supportsCursor()
boolean needsParameterForResultSet()
java.lang.String convertLimitSql(java.lang.String sql, int offset, int limit)
sql
- SQLoffset
- オフセットlimit
- リミット
java.lang.String convertGetCountSql(java.lang.String sql)
sql
- SQL
java.lang.String getCountSqlSelectList(java.util.List<PropertyMeta> idPropertyMeta)
idPropertyMeta
- IDプロパティのメタデータ
ValueType getValueType(PropertyMeta propertyMeta)
propertyMeta
- プロパティのメタデータ
ValueType getValueType(java.lang.Class<?> clazz, boolean lob, TemporalType temporalType)
clazz
- クラスlob
- LOB
かどうかtemporalType
- 時制の種別
void setupJoin(FromClause fromClause, WhereClause whereClause, JoinType joinType, java.lang.String tableName, java.lang.String tableAlias, java.lang.String fkTableAlias, java.lang.String pkTableAlias, java.util.List<JoinColumnMeta> joinColumnMetaList, java.lang.String lockHint, java.lang.String condition)
fromClause
- from句whereClause
- where句joinType
- 結合タイプtableName
- テーブル名tableAlias
- テーブル別名fkTableAlias
- 外部キーを持つテーブルの別名pkTableAlias
- 主キーを持つテーブルの別名joinColumnMetaList
- 結合カラムメタデータのリストlockHint
- ロックヒントcondition
- 付加的な結合条件GenerationType getDefaultGenerationType()
GeneratedValue.strategy()
にGenerationType.AUTO
が指定された場合の、
デフォルトのGenerationType
を返します。
GenerationType
boolean supportsIdentity()
GenerationType.IDENTITY
をサポートしている場合はtrue
を返します。
GenerationType.IDENTITY
をサポートしている場合はtrue
boolean isInsertIdentityColumn()
GenerationType.IDENTITY
で生成される場合に、 識別子をINSERT文に含める場合は
true
を返します。
true
boolean supportsGetGeneratedKeys()
GenerationType.IDENTITY
で自動生成される場合に、 生成された主キーの値を
Statement.getGeneratedKeys()
で取得できる場合はtrue
を返します。
Statement.getGeneratedKeys()
で取得できる場合は
true
java.lang.String getIdentitySelectString(java.lang.String tableName, java.lang.String columnName)
GenerationType.IDENTITY
で自動生成される場合に、 生成された主キーの値を取得するSQLを返します。
tableName
- テーブル名columnName
- 識別子のカラム名
boolean supportsSequence()
GenerationType.SEQUENCE
をサポートしている場合はtrue
を返します。
GenerationType.SEQUENCE
をサポートしている場合はtrue
java.lang.String getSequenceNextValString(java.lang.String sequenceName, int allocationSize)
GenerationType.SEQUENCE
で自動生成される場合に、 シーケンスの値を取得するSQLを返します。
sequenceName
- シーケンス名allocationSize
- アロケーションサイズ
int getDefaultBatchSize()
boolean supportsBatchUpdateResults()
true
を返します。
true
boolean isUniqueConstraintViolation(java.lang.Throwable t)
true
を返します。
t
- 例外
true
boolean supportsForUpdate(SelectForUpdateType type, boolean withTarget)
FOR UPDATE
をサポートしていればtrue
を返します。
type
- SELECT ~ FOR UPDATEのタイプwithTarget
- ロック対象を指定する場合はtrue
FOR UPDATE
をサポートしていればtrue
java.lang.String getForUpdateString(SelectForUpdateType type, int waitSeconds, Pair<java.lang.String,java.lang.String>... aliases)
FOR UPDATE NOWAIT
相当のSQLを返します。
type
- SELECT ~ FOR UPDATEのタイプwaitSeconds
- type
にSelectForUpdateType.WAIT
が指定された場合の待機時間(秒単位)aliases
- ロック対象となるカラムのエイリアス。対象が指定されなかった場合は空の配列
FOR UPDATE
句のSQLboolean supportsLockHint()
true
を返します。
true
java.lang.String getLockHintString(SelectForUpdateType type, int waitSeconds)
type
- SELECT ~ FOR UPDATEのタイプwaitSeconds
- type
にSelectForUpdateType.WAIT
が指定された場合の待機時間(秒単位)
boolean supportsInnerJoinForUpdate()
FOR UPDATE
をサポートしていればtrue
を返します。
FOR UPDATE
をサポートしていればtrue
boolean supportsOuterJoinForUpdate()
FOR UPDATE
をサポートしていればtrue
を返します。
FOR UPDATE
をサポートしていればtrue
java.lang.String getHintComment(java.lang.String hint)
hint
- ヒント
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |