Package org.hibernate.dialect.sql.ast
Class MariaDBSqlAstTranslator<T extends JdbcOperation>
java.lang.Object
org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
org.hibernate.sql.ast.spi.SqlAstTranslatorWithUpsert<T>
org.hibernate.dialect.sql.ast.SqlAstTranslatorWithOnDuplicateKeyUpdate<T>
org.hibernate.dialect.sql.ast.MariaDBSqlAstTranslator<T>
- All Implemented Interfaces:
Appendable,SqlAppender,SqlAstTranslator<T>,SqlAstWalker
public class MariaDBSqlAstTranslator<T extends JdbcOperation>
extends SqlAstTranslatorWithOnDuplicateKeyUpdate<T>
A SQL AST translator for MariaDB.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator
AbstractSqlAstTranslator.LockStrategy, AbstractSqlAstTranslator.SubQueryRelationalRestrictionEmulationRenderer<X extends Expression> -
Field Summary
Fields inherited from interface org.hibernate.sql.ast.spi.SqlAppender
CLOSE_PARENTHESIS, COMMA_SEPARATOR, COMMA_SEPARATOR_CHAR, NO_SEPARATOR, NULL_KEYWORD, OPEN_PARENTHESIS, PARAM_MARKER, WHITESPACE -
Constructor Summary
ConstructorsConstructorDescriptionMariaDBSqlAstTranslator(SessionFactoryImplementor sessionFactory, Statement statement, MariaDBDialect dialect) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidprotected StringdetermineColumnReferenceQualifier(ColumnReference columnReference) protected voidrenderComparison(Expression lhs, ComparisonOperator operator, Expression rhs) protected voidrenderDeleteClause(DeleteStatement statement) protected voidprotected voidrenderDmlTargetTableExpression(NamedTableReference tableReference) protected voidrenderExpressionAsClauseItem(Expression expression) protected voidrenderPartitionItem(Expression expression) protected voidrenderStringContainsExactlyPredicate(Expression haystack, Expression needle) protected voidrenderUpdateClause(UpdateStatement updateStatement) protected voidrenderUpdatevalue(ColumnValueBinding columnValueBinding) protected booleanshouldEmulateFetchClause(QueryPart queryPart) protected booleanshouldEmulateLateralWithIntersect(QueryPart queryPart) protected JdbcOperationQueryInserttranslateInsert(InsertSelectStatement sqlAst) voidvisitBinaryArithmeticExpression(BinaryArithmeticExpression arithmeticExpression) voidvisitBooleanExpressionPredicate(BooleanExpressionPredicate booleanExpressionPredicate) voidvisitCastTarget(CastTarget castTarget) voidvisitColumnReference(ColumnReference columnReference) protected voidvisitConflictClause(ConflictClause conflictClause) protected voidvisitInsertSource(InsertSelectStatement statement) voidvisitLikePredicate(LikePredicate likePredicate) voidvisitOffsetFetchClause(QueryPart queryPart) voidvisitQueryGroup(QueryGroup queryGroup) voidvisitQueryPartTableReference(QueryPartTableReference tableReference) voidvisitQuerySpec(QuerySpec querySpec) protected voidvisitRecursivePath(Expression recursivePath, int sizeEstimate) Renders the recursive path, possibly wrapping a cast expression around it, to make sure a type with proper size is chosen.Methods inherited from class org.hibernate.dialect.sql.ast.SqlAstTranslatorWithOnDuplicateKeyUpdate
createMergeOperation, renderInsertInto, renderNewRowAlias, renderOnDuplicateKeyUpdate, renderUpsertStatementMethods inherited from class org.hibernate.sql.ast.spi.SqlAstTranslatorWithUpsert
renderMergeInsert, renderMergeInto, renderMergeOn, renderMergeSource, renderMergeSourceAlias, renderMergeTargetAlias, renderMergeUpdate, renderMergeUsing, wrapMergeSourceExpressionMethods inherited from class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator
addAdditionalWherePredicate, addAffectedTableName, addAppliedParameterBinding, addParameterBinder, addParameterBinder, afterQueryGroup, append, append, append, appendBackslashEscapedLikeLiteral, appendDoubleQuoteEscapedString, appendSingleQuoteEscapedString, appendSql, appendSql, appendSql, appendSql, appendSql, areAllResultsParameters, areAllResultsParameters, assertRowsOnlyFetchClauseType, beforeQueryGroup, castFunction, castNumberToString, cleanup, createRowMatchingPredicate, determineCyclePathColumnName, determineLateralEmulationPredicate, determineLockingStrategy, determineWhereClauseRestrictionWithJoinEmulation, determineWhereClauseRestrictionWithJoinEmulation, emulateCycleClauseWithRowAndArray, emulateFetchOffsetWithWindowFunctions, emulateFetchOffsetWithWindowFunctions, emulateFetchOffsetWithWindowFunctionsVisitQueryPart, emulateQuantifiedTupleSubQueryPredicate, emulateQueryPartTableReferenceColumnAliasing, emulateSearchClauseOrderWithRowAndArray, emulateSelectTupleComparison, emulateSortSpecificationNullPrecedence, emulateSubQueryRelationalRestrictionPredicate, emulateTupleComparison, emulateValuesTableReferenceColumnAliasing, getAffectedTableNames, getAppliedParameterBindings, getArrayContainsFunction, getBooleanType, getCastTypeName, getClauseStack, getCteStatement, getCurrentClauseStack, getCurrentCteStatement, getCurrentDmlStatement, getCurrentQueryPart, getDual, getEffectiveLockMode, getEffectiveLockMode, getEffectiveLockMode, getEffectiveLockTimeout, getFetchClauseTypeForRowNumbering, getFromDualForSelectOnly, getIntegerType, getJdbcLockStrategy, getJdbcParameterBindings, getJdbcServices, getLeftHandExpression, getLimit, getLimitParameter, getLiteralValue, getLockingClauseStrategy, getLockOptions, getMaxRows, getOffsetParameter, getParameterBinders, getParameterBindValue, getParameterRenderingMode, getQueryPartForRowNumbering, getQueryPartStack, getRowsToSkip, getSelectItemReference, getSessionFactory, getSortSpecificationsRowNumbering, getSql, getSqlAppender, getSqlAst, getSqlBuffer, getSqlTypeName, getStatement, getStatementStack, getStringType, getUniqueConstraintNameThatMayFail, getWrapperOptions, hasAggregateFunctions, hasFrom, hasLimit, hasLimit, hasNestedTableGroupsToRender, hasNonTrivialFromClause, hasOffset, hasWhere, inlineCteTableGroup, inOverOrWithinGroupClause, interpretExpression, isCorrelated, isInRecursiveQueryPart, isInSubquery, isIntegerDivisionEmulationRequired, isLiteral, isParameter, isRowNumberingCurrentQueryPart, isRowsOnlyFetchClauseType, isStruct, needsCteInlining, needsLocking, needsMaxRows, needsParenthesesAroundQueryGroup, needsRecursiveKeywordInWithClause, needsRowsToSkip, prepareLimitOffsetParameters, prependSql, processNestedTableGroupJoins, processTableGroupJoin, processTableGroupJoins, registerAffectedTable, registerAffectedTable, render, renderAsLiteral, renderBackslashEscapedLikePattern, renderCaseInsensitiveLikeEmulation, renderCasted, renderCombinedLimitClause, renderCombinedLimitClause, renderCommaSeparated, renderCommaSeparatedSelectExpression, renderCommaSeparatedSelectExpression, renderComparisonDistinctOperator, renderComparisonEmulateCase, renderComparisonEmulateDecode, renderComparisonEmulateDecode, renderComparisonEmulateIntersect, renderComparisonStandard, renderCteColumns, renderCycleClause, renderDerivedTableReference, renderDmlTargetTableGroup, renderExpressionAsLiteral, renderExpressionsAsSubquery, renderFetch, renderFetchExpression, renderFetchPlusOffsetExpression, renderFetchPlusOffsetExpressionAsLiteral, renderFetchPlusOffsetExpressionAsSingleParameter, renderFirstClause, renderFirstClause, renderFirstSkipClause, renderFirstSkipClause, renderFromClauseAfterUpdateSet, renderFromClauseExcludingDmlTargetReference, renderFromClauseJoiningDmlTargetReference, renderFromClauseSpaces, renderInsertIntoNoColumns, renderInterval, renderIntervalLiteral, renderIntoIntoAndTable, renderJoinedTableGroup, renderLikePredicate, renderLimitOffsetClause, renderLimitOffsetClause, renderLiteral, renderMaterializationHint, renderMergeUpdateClause, renderNamedSetReturningFunction, renderNamedTableReference, renderNull, renderOffset, renderOffsetExpression, renderOffsetFetchClause, renderOffsetFetchClause, renderOrderBy, renderParameterAsParameter, renderPrimaryTableReference, renderQueryGroup, renderRecursiveCteVirtualSelections, renderRootTableGroup, renderRowNumber, renderRowNumberingSelectItems, renderRowsToClause, renderRowsToClause, renderSearchClause, renderSelectExpression, renderSelectExpressionWithCastedOrInlinedPlainParameters, renderSelectSimpleComparison, renderSelectTupleComparison, renderSetClause, renderSimpleNamedFunction, renderSkipFirstClause, renderSkipFirstClause, renderSortExpression, renderStandardCycleClause, renderStandardSearchClause, renderTableGroupJoin, renderTableReferenceIdentificationVariable, renderTableReferenceJoins, renderTableReferenceJoins, renderTopClause, renderTopClause, renderTopStartAtClause, renderTopStartAtClause, renderTupleComparisonStandard, renderVirtualSelections, renderWrappedParameter, resolveAliasedExpression, resolveAliasedExpression, resolveExpressionToAlias, setLimitParameter, setLockingTarget, setOffsetParameter, shouldInlineCte, simpleColumnWriteFragmentRendering, supportsRecursiveClauseArrayAndRowEmulation, translate, translateDelete, translateSelect, translateUpdate, useOffsetFetchClause, visitAggregateColumnWriteExpression, visitAnsiCaseSearchedExpression, visitAnsiCaseSimpleExpression, visitAny, visitArithmeticOperand, visitAssignment, visitBetweenPredicate, visitCaseSearchedExpression, visitCaseSearchedExpression, visitCaseSimpleExpression, visitCaseSimpleExpression, visitCollation, visitColumnWriteFragment, visitConversion, visitCteContainer, visitCteDefinition, visitCteObject, visitCustomTableDelete, visitCustomTableInsert, visitCustomTableUpdate, visitDecodeCaseSearchedExpression, visitDeleteStatement, visitDeleteStatementOnly, visitDistinct, visitDuration, visitDurationUnit, visitEmbeddableTypeLiteral, visitEntityTypeLiteral, visitEvery, visitExistsPredicate, visitExtractUnit, visitFilterFragmentPredicate, visitFilterPredicate, visitFormat, visitForUpdateClause, visitFromClause, visitFunctionTableReference, visitGroupByClause, visitGroupedPredicate, visitHavingClause, visitInArrayPredicate, visitInListPredicate, visitInsertStatement, visitInsertStatementEmulateMerge, visitInsertStatementOnly, visitInSubQueryPredicate, visitJdbcLiteral, visitJunction, visitModifiedSubQueryExpression, visitNamedTableReference, visitNegatedPredicate, visitNestedColumnReference, visitNullnessPredicate, visitOnDuplicateKeyConflictClause, visitOnDuplicateKeyConflictClauseWithDoNothing, visitOptionalTableUpdate, visitOrderBy, visitOver, visitOverClause, visitOverClause, visitOverflow, visitParameter, visitParameterAsParameter, visitPartitionByClause, visitPartitionExpressions, visitPartitionExpressions, visitQueryClauses, visitQueryLiteral, visitRelationalPredicate, visitReturningColumns, visitReturningColumns, visitSelectClause, visitSelectStatement, visitSelfRenderingExpression, visitSelfRenderingPredicate, visitSetAssignment, visitSetAssignmentEmulateJoin, visitSortSpecification, visitSortSpecification, visitSqlFragmentPredicate, visitSqlSelectExpression, visitSqlSelection, visitSqlSelectionExpression, visitSqlSelections, visitStandardConflictClause, visitStandardTableDelete, visitStandardTableInsert, visitStandardTableUpdate, visitStar, visitSummarization, visitTableGroup, visitTableGroupJoin, visitTableReferenceJoin, visitThruthnessPredicate, visitTrimSpecification, visitTuple, visitUnaryOperationExpression, visitUnparsedNumericLiteral, visitUpdateStatement, visitUpdateStatementEmulateInlineView, visitUpdateStatementEmulateMerge, visitUpdateStatementEmulateTupleSet, visitUpdateStatementOnly, visitValuesList, visitValuesListEmulateSelectUnion, visitValuesListStandard, visitValuesTableReference, visitWhereClause, withParameterRenderingMode, withRowNumbering
-
Constructor Details
-
MariaDBSqlAstTranslator
public MariaDBSqlAstTranslator(SessionFactoryImplementor sessionFactory, Statement statement, MariaDBDialect dialect)
-
-
Method Details
-
visitBinaryArithmeticExpression
- Specified by:
visitBinaryArithmeticExpressionin interfaceSqlAstWalker- Overrides:
visitBinaryArithmeticExpressionin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitInsertSource
- Overrides:
visitInsertSourcein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitColumnReference
- Specified by:
visitColumnReferencein interfaceSqlAstWalker- Overrides:
visitColumnReferencein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderDeleteClause
- Overrides:
renderDeleteClausein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderUpdateClause
- Overrides:
renderUpdateClausein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderDmlTargetTableExpression
- Overrides:
renderDmlTargetTableExpressionin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
translateInsert
- Overrides:
translateInsertin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitConflictClause
- Overrides:
visitConflictClausein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
determineColumnReferenceQualifier
- Overrides:
determineColumnReferenceQualifierin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderExpressionAsClauseItem
- Overrides:
renderExpressionAsClauseItemin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitRecursivePath
Description copied from class:AbstractSqlAstTranslatorRenders the recursive path, possibly wrapping a cast expression around it, to make sure a type with proper size is chosen.- Overrides:
visitRecursivePathin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitBooleanExpressionPredicate
- Specified by:
visitBooleanExpressionPredicatein interfaceSqlAstWalker- Overrides:
visitBooleanExpressionPredicatein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
shouldEmulateFetchClause
-
shouldEmulateLateralWithIntersect
- Overrides:
shouldEmulateLateralWithIntersectin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitQueryGroup
- Specified by:
visitQueryGroupin interfaceSqlAstWalker- Overrides:
visitQueryGroupin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitQuerySpec
- Specified by:
visitQuerySpecin interfaceSqlAstWalker- Overrides:
visitQuerySpecin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitQueryPartTableReference
- Specified by:
visitQueryPartTableReferencein interfaceSqlAstWalker- Overrides:
visitQueryPartTableReferencein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderDerivedTableReferenceIdentificationVariable
protected void renderDerivedTableReferenceIdentificationVariable(DerivedTableReference tableReference) - Overrides:
renderDerivedTableReferenceIdentificationVariablein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitOffsetFetchClause
- Specified by:
visitOffsetFetchClausein interfaceSqlAstWalker- Overrides:
visitOffsetFetchClausein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderComparison
- Overrides:
renderComparisonin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderPartitionItem
- Overrides:
renderPartitionItemin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitLikePredicate
- Specified by:
visitLikePredicatein interfaceSqlAstWalker- Overrides:
visitLikePredicatein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
getDialect
- Overrides:
getDialectin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
visitCastTarget
- Specified by:
visitCastTargetin interfaceSqlAstWalker- Overrides:
visitCastTargetin classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderStringContainsExactlyPredicate
- Overrides:
renderStringContainsExactlyPredicatein classAbstractSqlAstTranslator<T extends JdbcOperation>
-
renderUpdatevalue
- Overrides:
renderUpdatevaluein classSqlAstTranslatorWithOnDuplicateKeyUpdate<T extends JdbcOperation>
-
appendAssignmentColumn
- Overrides:
appendAssignmentColumnin classAbstractSqlAstTranslator<T extends JdbcOperation>
-