public class MysqlRdbAdaptor extends RdbAdapter
| コンストラクタと説明 |
|---|
MysqlRdbAdaptor() |
| 修飾子とタイプ | メソッドと説明 |
|---|---|
java.lang.String |
addDate(java.lang.String dateExpression,
int day) |
void |
appendSortSpecExpression(java.lang.StringBuilder sb,
java.lang.CharSequence sortValue,
SortSpec.SortType sortType,
SortSpec.NullOrderingSpec nullOrderingSpec) |
java.lang.CharSequence |
cast(int fromSqlType,
int toSqlType,
java.lang.CharSequence valExpr,
java.lang.Integer lengthOrPrecision,
java.lang.Integer scale) |
java.lang.String[] |
castExp(int sqlType,
java.lang.Integer lengthOrPrecision,
java.lang.Integer scale) |
java.lang.String |
checkStatusQuery() |
java.lang.String[] |
convertTZ(java.lang.String to)
timezoneを変更したtimestampを取得する関数。
|
BulkDeleteContext |
createBulkDeleteContext() |
BulkInsertContext |
createBulkInsertContext() |
BulkUpdateContext |
createBulkUpdateContext() |
java.lang.String |
createLocalTemporaryTable(java.lang.String tableName,
java.lang.String baseTableName,
java.lang.String[] baseColumnName)
ローカルなTemporaryTableを作成する。
|
MultiInsertContext |
createMultiInsertContext(java.sql.Statement stmt) |
java.lang.String |
deleteTemporaryTable(java.lang.String tableName)
TemporaryTableを削除(global temporary tableの場合はデータを削除する)するSQLを生成。
|
java.lang.String |
dual() |
java.lang.String |
escape()
Likeのエスケープ文字指定構文。
|
int |
getBatchSize()
バッチ更新利用する際の推奨バッチサイズ。
|
java.sql.Connection |
getConnection(java.lang.String connectionFactoryName) |
protected java.lang.String |
getDataTypeOf(int sqlType,
java.lang.Integer lengthOrPrecision,
java.lang.Integer scale) |
int |
getDefaultQueryTimeout() |
int |
getInPartitioningSize() |
int |
getMaxFetchSize() |
MultiTableUpdateMethod |
getMultiTableUpdateMethod() |
java.lang.String |
getOptimizerHint() |
java.lang.String[] |
getOptimizerHintBracket() |
HintPlace |
getOptimizerHintPlace() |
java.lang.String[] |
getTableHintBracket() |
java.sql.ResultSet |
getTableNames(java.lang.String tableNamePattern,
java.sql.Connection con) |
int |
getThresholdCountOfUsePrepareStatement()
複数の更新(追加)を一括で処理する際の、PrepareStatementを利用するか否かを判断するための閾値。
|
java.lang.String |
getTimestampMethod()
timestampMethodを取得します。
|
java.lang.String |
initBlob() |
boolean |
isAlwaysBind()
EQLをSQLに変換する際、常にバインド変数化するか否か。
|
boolean |
isCastFailed(java.sql.SQLException e) |
boolean |
isDeadLock(java.sql.SQLException e) |
boolean |
isDuplicateValueException(java.sql.SQLException e) |
boolean |
isEnableBindHint()
bindヒント句を有効化するか否か
|
boolean |
isEnableInPartitioning() |
boolean |
isLockFailed(java.sql.SQLException e) |
boolean |
isSupportAutoClearTemporaryTableWhenCommit() |
boolean |
isSupportGlobalTemporaryTable()
global temporary tableをサポートしている場合はtrue
|
boolean |
isSupportGroupingExtention() |
boolean |
isSupportGroupingExtention(GroupBy.RollType rollType) |
boolean |
isSupportGroupingExtentionWithOrderBy() |
boolean |
isSupportOptimizerHint() |
boolean |
isSupportTableHint() |
boolean |
isSupportWindowFunction() |
boolean |
isUseFractionalSecondsOnTimestamp() |
boolean |
isUseSubQueryForIndexJoin() |
java.lang.String |
likePattern(java.lang.String str)
EQLのLikeのパターン文字列で、
%、_、\を\でエスケープされているEQLでの文字列を、RDBネイティブなエスケープ構文に変換する。
|
java.lang.String |
rollUpEnd(GroupBy.RollType rollType) |
java.lang.String |
rollUpStart(GroupBy.RollType rollType) |
java.lang.String |
rowLockExpression() |
java.lang.String |
sanitize(java.lang.String str) |
java.lang.String |
seqNextSelectSql(java.lang.String sequenceName,
int tenantId,
java.lang.String entityDefId) |
void |
setBatchSize(int batchSize) |
void |
setDefaultQueryTimeout(int defaultQueryTimeout) |
void |
setEnableBindHint(boolean enableBindHint) |
void |
setLocalTemporaryTableCreatedByDataSource(boolean localTemporaryTableCreatedByDataSource)
ローカル一時テーブルがデータソースで作成されるかを指定します。
|
void |
setLocalTemporaryTableManageOutsideTransaction(boolean localTemporaryTableManageOutsideTransaction)
ローカル一時テーブルをトランザクションの外で管理するかを指定します。
|
void |
setMaxFetchSize(int maxFetchSize) |
void |
setSupportOptimizerHint(boolean supportOptimizerHint) |
void |
setSupportWindowFunction(boolean supportWindowFunction) |
void |
setThresholdCountOfUsePrepareStatement(int thresholdCountOfUsePrepareStatement) |
void |
setTimestampMethod(java.lang.String timestampMethod)
timestampMethodを設定します。
|
void |
setUseFractionalSecondsOnTimestamp(boolean useFractionalSecondsOnTimestamp) |
java.lang.String |
systimestamp() |
java.lang.String |
tableAlias(java.lang.String selectSql) |
java.lang.String |
toDateExpression(java.sql.Date date) |
java.lang.String |
toLimitSql(java.lang.String selectSql,
int limitCount,
int offset,
boolean asBind) |
java.lang.Object[] |
toLimitSqlBindValue(int limitCount,
int offset) |
java.lang.String |
toTimeExpression(java.sql.Time time) |
java.lang.String |
toTimeStampExpression(java.sql.Timestamp date) |
addFunction, aggregateFunctionName, createRowLockSql, getConnection, getQuerySqlCreator, getRdbTypeAdapter, getRdbTypeAdapter, getTemplaryTablePrefix, getUpdateSqlCreator, isNeedFromClauseTableAliasUpdateStatement, isSupportBlobType, isSupportRowValueConstructor, resolveFunction, sanitizeForLike, setParameter, toLimitSql, toSqlExp, upperFunctionName, windowRankFunctionNamepublic java.sql.Connection getConnection(java.lang.String connectionFactoryName)
throws java.sql.SQLException
getConnection クラス内 RdbAdapterjava.sql.SQLExceptionpublic int getDefaultQueryTimeout()
getDefaultQueryTimeout クラス内 RdbAdapterpublic void setDefaultQueryTimeout(int defaultQueryTimeout)
public int getMaxFetchSize()
getMaxFetchSize クラス内 RdbAdapterpublic void setMaxFetchSize(int maxFetchSize)
public boolean isUseFractionalSecondsOnTimestamp()
public void setUseFractionalSecondsOnTimestamp(boolean useFractionalSecondsOnTimestamp)
public java.lang.String getTimestampMethod()
public void setTimestampMethod(java.lang.String timestampMethod)
timestampMethod - timestampMethodpublic MultiInsertContext createMultiInsertContext(java.sql.Statement stmt)
createMultiInsertContext クラス内 RdbAdapterpublic java.lang.String dual()
dual クラス内 RdbAdapterprotected java.lang.String getDataTypeOf(int sqlType,
java.lang.Integer lengthOrPrecision,
java.lang.Integer scale)
getDataTypeOf クラス内 RdbAdapterpublic java.lang.String rowLockExpression()
rowLockExpression クラス内 RdbAdapterpublic java.lang.String systimestamp()
systimestamp クラス内 RdbAdapterpublic java.lang.String toDateExpression(java.sql.Date date)
toDateExpression クラス内 RdbAdapterpublic java.lang.String toTimeExpression(java.sql.Time time)
toTimeExpression クラス内 RdbAdapterpublic java.lang.String toTimeStampExpression(java.sql.Timestamp date)
toTimeStampExpression クラス内 RdbAdapterpublic java.lang.String toLimitSql(java.lang.String selectSql,
int limitCount,
int offset,
boolean asBind)
toLimitSql クラス内 RdbAdapterpublic java.lang.Object[] toLimitSqlBindValue(int limitCount,
int offset)
toLimitSqlBindValue クラス内 RdbAdapterpublic boolean isDuplicateValueException(java.sql.SQLException e)
isDuplicateValueException クラス内 RdbAdapterpublic boolean isDeadLock(java.sql.SQLException e)
isDeadLock クラス内 RdbAdapterpublic boolean isLockFailed(java.sql.SQLException e)
isLockFailed クラス内 RdbAdapterpublic boolean isCastFailed(java.sql.SQLException e)
isCastFailed クラス内 RdbAdapterpublic java.lang.String addDate(java.lang.String dateExpression,
int day)
addDate クラス内 RdbAdapterpublic java.lang.String checkStatusQuery()
checkStatusQuery クラス内 RdbAdapterpublic java.lang.String likePattern(java.lang.String str)
RdbAdapterlikePattern クラス内 RdbAdapterpublic java.lang.String escape()
RdbAdapterescape クラス内 RdbAdapterpublic java.lang.String sanitize(java.lang.String str)
sanitize クラス内 RdbAdapterpublic java.lang.String[] castExp(int sqlType,
java.lang.Integer lengthOrPrecision,
java.lang.Integer scale)
castExp クラス内 RdbAdapterpublic java.lang.CharSequence cast(int fromSqlType,
int toSqlType,
java.lang.CharSequence valExpr,
java.lang.Integer lengthOrPrecision,
java.lang.Integer scale)
cast クラス内 RdbAdapterpublic java.lang.String tableAlias(java.lang.String selectSql)
tableAlias クラス内 RdbAdapterpublic boolean isSupportGroupingExtention(GroupBy.RollType rollType)
isSupportGroupingExtention クラス内 RdbAdapterpublic java.lang.String rollUpStart(GroupBy.RollType rollType)
rollUpStart クラス内 RdbAdapterpublic java.lang.String rollUpEnd(GroupBy.RollType rollType)
rollUpEnd クラス内 RdbAdapterpublic java.lang.String seqNextSelectSql(java.lang.String sequenceName,
int tenantId,
java.lang.String entityDefId)
seqNextSelectSql クラス内 RdbAdapterpublic java.lang.String initBlob()
initBlob クラス内 RdbAdapterpublic boolean isUseSubQueryForIndexJoin()
isUseSubQueryForIndexJoin クラス内 RdbAdapterpublic java.lang.String getOptimizerHint()
getOptimizerHint クラス内 RdbAdapterpublic HintPlace getOptimizerHintPlace()
getOptimizerHintPlace クラス内 RdbAdapterpublic java.lang.String[] getOptimizerHintBracket()
getOptimizerHintBracket クラス内 RdbAdapterpublic boolean isSupportOptimizerHint()
isSupportOptimizerHint クラス内 RdbAdapterpublic void setSupportOptimizerHint(boolean supportOptimizerHint)
public boolean isSupportTableHint()
isSupportTableHint クラス内 RdbAdapterpublic java.lang.String[] getTableHintBracket()
getTableHintBracket クラス内 RdbAdapterpublic void appendSortSpecExpression(java.lang.StringBuilder sb,
java.lang.CharSequence sortValue,
SortSpec.SortType sortType,
SortSpec.NullOrderingSpec nullOrderingSpec)
appendSortSpecExpression クラス内 RdbAdapterpublic java.lang.String[] convertTZ(java.lang.String to)
RdbAdapterconvertTZ クラス内 RdbAdapterpublic boolean isEnableInPartitioning()
isEnableInPartitioning クラス内 RdbAdapterpublic int getInPartitioningSize()
getInPartitioningSize クラス内 RdbAdapterpublic java.lang.String deleteTemporaryTable(java.lang.String tableName)
RdbAdapterdeleteTemporaryTable クラス内 RdbAdapterpublic boolean isSupportGlobalTemporaryTable()
RdbAdapterisSupportGlobalTemporaryTable クラス内 RdbAdapterpublic java.lang.String createLocalTemporaryTable(java.lang.String tableName,
java.lang.String baseTableName,
java.lang.String[] baseColumnName)
RdbAdaptercreateLocalTemporaryTable クラス内 RdbAdapterpublic boolean isSupportAutoClearTemporaryTableWhenCommit()
public boolean isSupportGroupingExtentionWithOrderBy()
public boolean isSupportGroupingExtention()
isSupportGroupingExtention クラス内 RdbAdapterpublic boolean isEnableBindHint()
RdbAdapterisEnableBindHint クラス内 RdbAdapterpublic void setEnableBindHint(boolean enableBindHint)
public boolean isAlwaysBind()
RdbAdapterisAlwaysBind クラス内 RdbAdapterpublic int getBatchSize()
RdbAdaptergetBatchSize クラス内 RdbAdapterpublic void setBatchSize(int batchSize)
public int getThresholdCountOfUsePrepareStatement()
RdbAdaptergetThresholdCountOfUsePrepareStatement クラス内 RdbAdapterpublic void setThresholdCountOfUsePrepareStatement(int thresholdCountOfUsePrepareStatement)
public BulkInsertContext createBulkInsertContext()
createBulkInsertContext クラス内 RdbAdapterpublic BulkUpdateContext createBulkUpdateContext()
createBulkUpdateContext クラス内 RdbAdapterpublic BulkDeleteContext createBulkDeleteContext()
createBulkDeleteContext クラス内 RdbAdapterpublic MultiTableUpdateMethod getMultiTableUpdateMethod()
getMultiTableUpdateMethod クラス内 RdbAdapterpublic java.sql.ResultSet getTableNames(java.lang.String tableNamePattern,
java.sql.Connection con)
throws java.sql.SQLException
getTableNames クラス内 RdbAdapterjava.sql.SQLExceptionpublic boolean isSupportWindowFunction()
isSupportWindowFunction クラス内 RdbAdapterpublic void setSupportWindowFunction(boolean supportWindowFunction)
public void setLocalTemporaryTableManageOutsideTransaction(boolean localTemporaryTableManageOutsideTransaction)
trueを指定する必要があります。#setLocalTemporaryTableCreateAtDataSourceにtrueを指定した場合は指定する必要はありません。
localTemporaryTableManageOutsideTransaction - トランザクションの外で管理する場合はtrueを指定します。public void setLocalTemporaryTableCreatedByDataSource(boolean localTemporaryTableCreatedByDataSource)
localTemporaryTableCreatedByDataSource - データソースで作成される場合はtrueを指定します。