Interface JdbcDialect
-
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
BasicJdbcDialect
,DB2Dialect
,H2Dialect
,MySQLDialect
,OracleDialect
,SQLServerDialect
public interface JdbcDialect extends Serializable
Represents a dialect of SQL implemented by a particular RDBMS.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description String
escape(String ident)
int
getFetchSize()
Gives the JDBC driver a hint how many rows should be fetched from the database when more rows are needed.int
getMaxParameterCount()
Get max query parameters count.boolean
hasMerge()
String
insertQuery(String fullTblName, Collection<String> keyCols, Collection<String> valCols)
Construct insert query.String
loadCacheQuery(String fullTblName, Iterable<String> uniqCols)
Construct load cache query.String
loadCacheRangeQuery(String fullTblName, Collection<String> keyCols, Iterable<String> uniqCols, boolean appendLowerBound, boolean appendUpperBound)
Construct load cache query over specified range.String
loadCacheSelectRangeQuery(String fullTblName, Collection<String> keyCols)
Construct query to get ranges bounds.String
loadQuery(String fullTblName, Collection<String> keyCols, Iterable<String> cols, int keyCnt)
Construct load query.String
mergeQuery(String fullTblName, Collection<String> keyCols, Collection<String> uniqCols)
Construct merge query.String
removeQuery(String fullTblName, Iterable<String> keyCols)
Construct remove query.String
updateQuery(String fullTblName, Collection<String> keyCols, Iterable<String> valCols)
Construct update query.
-
-
-
Method Detail
-
escape
String escape(String ident)
- Parameters:
ident
- SQL identifier to escape.- Returns:
- Escaped SQL identifier.
-
loadCacheSelectRangeQuery
String loadCacheSelectRangeQuery(String fullTblName, Collection<String> keyCols)
Construct query to get ranges bounds.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns for order.- Returns:
- Query for select count.
-
loadCacheRangeQuery
String loadCacheRangeQuery(String fullTblName, Collection<String> keyCols, Iterable<String> uniqCols, boolean appendLowerBound, boolean appendUpperBound)
Construct load cache query over specified range.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns for order.uniqCols
- Database unique value columns.appendLowerBound
- Need add lower bound for range.appendUpperBound
- Need add upper bound for range.- Returns:
- Query for select count.
-
loadCacheQuery
String loadCacheQuery(String fullTblName, Iterable<String> uniqCols)
Construct load cache query.- Parameters:
fullTblName
- Full table name.uniqCols
- Database unique value columns.- Returns:
- Load cache query.
-
loadQuery
String loadQuery(String fullTblName, Collection<String> keyCols, Iterable<String> cols, int keyCnt)
Construct load query.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns.cols
- Selected columns.keyCnt
- Key count.- Returns:
- Load query.
-
insertQuery
String insertQuery(String fullTblName, Collection<String> keyCols, Collection<String> valCols)
Construct insert query.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns.valCols
- Database value columns.- Returns:
- Insert query.
-
updateQuery
String updateQuery(String fullTblName, Collection<String> keyCols, Iterable<String> valCols)
Construct update query.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns.valCols
- Database value columns.- Returns:
- Update query.
-
hasMerge
boolean hasMerge()
- Returns:
True
if database support merge operation.
-
mergeQuery
String mergeQuery(String fullTblName, Collection<String> keyCols, Collection<String> uniqCols)
Construct merge query.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns.uniqCols
- Database unique value columns.- Returns:
- Merge query.
-
removeQuery
String removeQuery(String fullTblName, Iterable<String> keyCols)
Construct remove query.- Parameters:
fullTblName
- Full table name.keyCols
- Database key columns.- Returns:
- Remove query.
-
getMaxParameterCount
int getMaxParameterCount()
Get max query parameters count.- Returns:
- Max query parameters count.
-
getFetchSize
int getFetchSize()
Gives the JDBC driver a hint how many rows should be fetched from the database when more rows are needed. If the value specified is zero, then the hint is ignored. The default value is zero.- Returns:
- The fetch size for result sets.
-
-