public class MySqlSqlHandler extends BasicSqlHandler implements SqlHandler
SqlHandler for standard
MySQL functionality.
BasicSqlHandler, overrides
toSql(), implements FEATURE_MAX_NUMBER and FEATURE_OFFSET, by adding a construct like "LIMIT 20" or
"LIMIT 80, 20" after the body, when appropriate.
getSupportLevel(int,SearchQuery),
returns SUPPORT_OPTIMAL for these features, delegates to the superclass for
other features.
| Constructor and Description |
|---|
MySqlSqlHandler()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
appendDateField(StringBuilder sb,
Step step,
String fieldName,
boolean multipleSteps,
int datePart) |
protected StringBuilder |
appendLikeOperator(StringBuilder sb,
FieldConstraint constraint)
Appends the 'LIKE' operator for the given case sensitiviy.
|
protected String |
appendPreField(StringBuilder sb,
FieldConstraint constraint,
StepField field,
boolean multiple) |
protected StringBuilder |
appendRegularExpressionOperator(StringBuilder sb,
FieldConstraint constraint) |
protected StringBuilder |
appendSortOrderField(StringBuilder sb,
SortOrder sortOrder,
boolean multipleSteps) |
protected DataType |
getDataType(StepField field) |
protected CoreField |
getField(StepField field) |
int |
getSupportLevel(int feature,
SearchQuery query)
Gets the level at which a feature is supported for a query
by this handler.
|
protected boolean |
isCaseSensitive(DataType dt) |
String |
toSql(SearchQuery query,
SqlHandler firstInChain)
Represents a SearchQuery object as a string in SQL format,
using the database configuration.
|
protected String |
toSqlString(String str)
Utility method, modifies strings for use in SQL statements.
|
protected boolean |
useLower(FieldConstraint constraint)
Wether the 'LOWER' function needs to be used to implement case insensitivity.
|
appendCompositeConstraintToSql, appendConstraintToSql, appendDateValue, appendField, appendField, appendField, appendFieldValue, appendLowerField, appendQueryBodyToSql, appendRelationConstraints, appendSortOrderDirection, appendSortOrderField, appendSortOrders, appendTableAlias, appendTableName, forceEncode, getAllowedValue, getSupportLevelclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitappendConstraintToSql, appendQueryBodyToSql, getAllowedValue, getSupportLevelprotected String toSqlString(String str)
BasicSqlHandlertoSqlString in class BasicSqlHandlerstr - The input string.public int getSupportLevel(int feature,
SearchQuery query)
throws SearchQueryException
SqlHandlergetSupportLevel in interface SqlHandlergetSupportLevel in class BasicSqlHandlerSearchQueryExceptionprotected boolean isCaseSensitive(DataType dt)
protected boolean useLower(FieldConstraint constraint)
BasicSqlHandleruseLower in class BasicSqlHandlerprotected String appendPreField(StringBuilder sb, FieldConstraint constraint, StepField field, boolean multiple)
appendPreField in class BasicSqlHandlerprotected StringBuilder appendLikeOperator(StringBuilder sb, FieldConstraint constraint)
BasicSqlHandlerappendLikeOperator in class BasicSqlHandlerprotected StringBuilder appendRegularExpressionOperator(StringBuilder sb, FieldConstraint constraint)
appendRegularExpressionOperator in class BasicSqlHandlerprotected void appendDateField(StringBuilder sb, Step step, String fieldName, boolean multipleSteps, int datePart)
appendDateField in class BasicSqlHandlerprotected StringBuilder appendSortOrderField(StringBuilder sb, SortOrder sortOrder, boolean multipleSteps)
appendSortOrderField in class BasicSqlHandlerpublic String toSql(SearchQuery query, SqlHandler firstInChain) throws SearchQueryException
SqlHandlertoSql in interface SqlHandlertoSql in class BasicSqlHandlerquery - The searchquery.firstInChain - The first element in the chain of handlers.
At some point appendQueryBodyToSql() will have
to be called on this handler, to generate the body of the query.SearchQueryExceptionMMBase 1.9-SNAPSHOT - ${javadoctimestamp}