public static class _MySQLPlugIn.MySQLExpression extends JDBCExpression
| Modifier and Type | Class and Description |
|---|---|
static class |
_MySQLPlugIn.MySQLExpression.JoinClauseDefinition
Helper class that stores a join definition and helps
MySQLExpression to assemble the correct join
clause. |
EOSQLExpression.SQLValue_externalQuoteChar, _inSelect, _jdbcInfo, _rtrimFunctionName_aliasesByRelationshipPath, _bindings, _contextStack, _defaultDateFormatter, _entity, _joinClauseString, _listString, _NibbleToHex, _orderByString, _statement, _upperFunctionName, _useAliases, _valueListString, _whereClauseString, BindVariableAttributeKey, BindVariableColumnKey, BindVariableNameKey, BindVariablePlaceHolderKey, BindVariableValueKey| Constructor and Description |
|---|
MySQLExpression(EOEntity entity) |
| Modifier and Type | Method and Description |
|---|---|
void |
addJoinClause(String leftName,
String rightName,
int semantic)
Overriden to not call the super implementation.
|
String |
assembleJoinClause(String leftName,
String rightName,
int semantic)
This is called by super for each join.
|
String |
assembleSelectStatementWithAttributes(NSArray attributes,
boolean lock,
EOQualifier qualifier,
NSArray fetchOrder,
String selectString,
String columnList,
String tableList,
String whereClause,
String joinClause,
String orderByClause,
String lockClause)
Overriding to
add LIMIT clause if _fetchLimit > 0
support MySQL JOIN syntax (similar syntax to what PostgreSQL PlugIn generates)
|
String |
externalNameQuoteCharacter()
Overridden because MySQL does not use the default quote character in
EOSQLExpression.externalNameQuoteCharacter() which is an empty
string.
|
String |
joinClauseString()
Overriden to contruct a valid SQL92 JOIN clause as opposed to the
Oracle-like SQL the superclass produces.
|
void |
joinExpression()
Override so that the joinClause can be constructed after super has
iterated though all joins and called our assembleJoinClause to create
our array of JoinClauseDefinitions.
|
void |
prepareSelectExpressionWithAttributes(NSArray<EOAttribute> attributes,
boolean lock,
EOFetchSpecification fetchSpec)
Overriding super here so we can grab a fetch range or fetch limit if specified in the EOFetchSpecification.
|
char |
sqlEscapeChar()
http://dev.mysql.com/doc/refman/5.5/en/string-comparison-functions.html
|
addSelectListAttribute, allowsNullClauseForConstraint, appendItemToListString, appendItemToOrderByString, appendItemToValueListString, bindVariableDictionaryForAttribute, columnTypeStringForAttribute, formatValueForAttribute, jdbcInfo, lockClause, mustUseBindVariableForAttribute, setJDBCInfo, shouldUseBindVariableForAttribute, useBindVariables_aliasForRelatedAttributeRelationshipPath, _aliasForRelationshipPath, _defaultDateFormatter, _entityForRelationshipPathOrigin, _flattenRelPathEntity, _listString, _orderByString, _rootEntityForExpression, _setEntity, _sqlStringForJoinSemanticMatchSemantic, _stringForDate, _truncatedString, _truncatedStringForData, _valueList, addBindVariableDictionary, addCreateClauseForAttribute, addInsertListAttribute, addOrderByAttributeOrdering, addUpdateListAttribute, aliasesByRelationshipPath, appendItemToListString, assembleDeleteStatementWithQualifier, assembleInsertStatementWithRow, assembleUpdateStatementWithRow, bindVariableDictionaries, entity, formatSQLString, formatStringValue, listString, orderByString, prepareConstraintStatementForRelationship, prepareDeleteExpressionForQualifier, prepareInsertExpressionWithRow, prepareUpdateExpressionWithRow, setStatement, setUseAliases, setUseBindVariables, setUseQuotedExternalNames, sqlPatternFromShellPattern, sqlPatternFromShellPatternWithEscapeCharacter, sqlStringForAttribute, sqlStringForAttributeNamed, sqlStringForAttributePath, sqlStringForCaseInsensitiveLike, sqlStringForConjoinedQualifiers, sqlStringForData, sqlStringForDisjoinedQualifiers, sqlStringForKeyComparisonQualifier, sqlStringForKeyValueQualifier, sqlStringForNegatedQualifier, sqlStringForNumber, sqlStringForQualifier, sqlStringForSchemaObjectName, sqlStringForSelector, sqlStringForString, sqlStringForValue, statement, tableListWithRootEntity, toString, useAliases, useQuotedExternalNames, valueList, whereClauseStringpublic MySQLExpression(EOEntity entity)
public char sqlEscapeChar()
sqlEscapeChar in class EOSQLExpressionEOSQLExpression.sqlEscapeChar()public String externalNameQuoteCharacter()
com.webobjects.jdbcadaptor.MySQLExpression.enableIdentifierQuoting to true.externalNameQuoteCharacter in class JDBCExpressionpublic void prepareSelectExpressionWithAttributes(NSArray<EOAttribute> attributes, boolean lock, EOFetchSpecification fetchSpec)
public String assembleSelectStatementWithAttributes(NSArray attributes, boolean lock, EOQualifier qualifier, NSArray fetchOrder, String selectString, String columnList, String tableList, String whereClause, String joinClause, String orderByClause, String lockClause)
public String joinClauseString()
joinClauseString in class EOSQLExpressionpublic void joinExpression()
joinExpression in class EOSQLExpressionEOSQLExpression.joinExpression()public String assembleJoinClause(String leftName, String rightName, int semantic)
_MySQLPlugIn.MySQLExpression.JoinClauseDefinition into
the _alreadyJoined array of _MySQLPlugIn.MySQLExpression.JoinClauseDefinition objects.
The join clause itself is assembled by joinClauseString().assembleJoinClause in class EOSQLExpressionleftName - the table name on the left side of the clauserightName - the table name on the right side of the clausesemantic - the join semanticpublic void addJoinClause(String leftName, String rightName, int semantic)
addJoinClause in class EOSQLExpressionleftName - the table name on the left side of the clauserightName - the table name on the right side of the clausesemantic - the join semantic
kieran copied from PostgresqlExpressionCopyright © 2002 – 2025 Project Wonder.