Class DerbyLegacySqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>

java.lang.Object
org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
org.hibernate.community.dialect.DerbyLegacySqlAstTranslator<T>
All Implemented Interfaces:
Appendable, org.hibernate.sql.ast.spi.SqlAppender, org.hibernate.sql.ast.SqlAstTranslator<T>, org.hibernate.sql.ast.SqlAstWalker

public class DerbyLegacySqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation> extends org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
A SQL AST translator for Derby.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator

    org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.ForUpdateClause, org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.LockStrategy, org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.SubQueryRelationalRestrictionEmulationRenderer<X extends org.hibernate.sql.ast.tree.expression.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

    Constructors
    Constructor
    Description
    DerbyLegacySqlAstTranslator(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory, org.hibernate.sql.ast.tree.Statement statement)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected String
     
    protected String
    getForShare(int timeoutMillis)
     
    protected String
     
    protected String
     
    protected String
     
    protected boolean
     
    protected boolean
     
    protected void
    renderComparison(org.hibernate.sql.ast.tree.expression.Expression lhs, org.hibernate.query.sqm.ComparisonOperator operator, org.hibernate.sql.ast.tree.expression.Expression rhs)
     
    protected void
    renderDmlTargetTableExpression(org.hibernate.sql.ast.tree.from.NamedTableReference tableReference)
     
    protected void
    renderExpressionAsClauseItem(org.hibernate.sql.ast.tree.expression.Expression expression)
     
    protected void
    renderFetchExpression(org.hibernate.sql.ast.tree.expression.Expression fetchExpression)
     
    protected void
    renderOffsetExpression(org.hibernate.sql.ast.tree.expression.Expression offsetExpression)
     
    protected void
    renderPartitionItem(org.hibernate.sql.ast.tree.expression.Expression expression)
     
    protected void
    renderSelectExpression(org.hibernate.sql.ast.tree.expression.Expression expression)
     
    protected void
    renderSelectTupleComparison(List<org.hibernate.sql.ast.spi.SqlSelection> lhsExpressions, org.hibernate.sql.ast.tree.expression.SqlTuple tuple, org.hibernate.query.sqm.ComparisonOperator operator)
     
    protected boolean
     
    protected boolean
     
    protected boolean
     
    protected boolean
     
    protected boolean
     
    protected void
    visitAnsiCaseSearchedExpression(org.hibernate.sql.ast.tree.expression.CaseSearchedExpression caseSearchedExpression, Consumer<org.hibernate.sql.ast.tree.expression.Expression> resultRenderer)
     
    protected void
    visitAnsiCaseSimpleExpression(org.hibernate.sql.ast.tree.expression.CaseSimpleExpression caseSimpleExpression, Consumer<org.hibernate.sql.ast.tree.expression.Expression> resultRenderer)
     
    protected void
    visitArithmeticOperand(org.hibernate.sql.ast.tree.expression.Expression expression)
     
    void
    visitBooleanExpressionPredicate(org.hibernate.sql.ast.tree.predicate.BooleanExpressionPredicate booleanExpressionPredicate)
     
    protected void
    visitDeleteStatementOnly(org.hibernate.sql.ast.tree.delete.DeleteStatement statement)
     
    void
    visitInListPredicate(org.hibernate.sql.ast.tree.predicate.InListPredicate inListPredicate)
     
    void
    visitOffsetFetchClause(org.hibernate.sql.ast.tree.select.QueryPart queryPart)
     
    protected void
    visitSetAssignment(org.hibernate.sql.ast.tree.update.Assignment assignment)
     
    protected void
    visitUpdateStatementOnly(org.hibernate.sql.ast.tree.update.UpdateStatement statement)
     

    Methods inherited from class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator

    addAdditionalWherePredicate, addAppliedParameterBinding, append, append, append, appendBackslashEscapedLikeLiteral, appendSql, appendSql, appendSql, appendSql, appendSql, applyParameter, areAllResultsParameters, areAllResultsParameters, assertRowsOnlyFetchClauseType, castFunction, castNumberToString, cleanup, createRowMatchingPredicate, determineColumnReferenceQualifier, 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, getDialect, getEffectiveLockMode, getEffectiveLockMode, getEffectiveLockTimeout, getFetchClauseTypeForRowNumbering, getIntegerType, getJdbcLockStrategy, getJdbcParameterBindings, getJdbcServices, getLeftHandExpression, getLimit, getLimitParameter, getLockOptions, getMaxRows, getNoWait, getOffsetParameter, getParameterBinders, getParameterBindValue, getParameterRenderingMode, getQueryPartForRowNumbering, getQueryPartStack, getRowsToSkip, getSelectItemReference, getSessionFactory, getSkipLocked, getSortSpecificationsRowNumbering, getSql, getSqlAppender, getSqlBuffer, getSqlTypeName, getStatement, getStatementStack, getStringType, getUniqueConstraintNameThatMayFail, getWrapperOptions, hasAggregateFunctions, hasLimit, hasLimit, hasNestedTableGroupsToRender, hasNonTrivialFromClause, hasOffset, inlineCteTableGroup, inOverOrWithinGroupClause, interpretExpression, isCorrelated, isInRecursiveQueryPart, isInSubquery, isIntegerDivisionEmulationRequired, isLiteral, isParameter, isRowNumberingCurrentQueryPart, isRowsOnlyFetchClauseType, isStruct, needsCteInlining, needsLocking, needsRecursiveKeywordInWithClause, prepareLimitOffsetParameters, processNestedTableGroupJoins, processTableGroupJoin, processTableGroupJoins, registerAffectedTable, registerAffectedTable, render, renderAsLiteral, renderBackslashEscapedLikePattern, renderCaseInsensitiveLikeEmulation, renderCasted, renderCombinedLimitClause, renderCombinedLimitClause, renderCommaSeparated, renderCommaSeparatedSelectExpression, renderCommaSeparatedSelectExpression, renderComparisonDistinctOperator, renderComparisonEmulateCase, renderComparisonEmulateDecode, renderComparisonEmulateDecode, renderComparisonEmulateIntersect, renderComparisonStandard, renderCteColumns, renderCycleClause, renderDeleteClause, renderDerivedTableReference, renderDmlTargetTableGroup, renderExpressionAsLiteral, renderExpressionsAsSubquery, renderFetch, renderFetchPlusOffsetExpression, renderFetchPlusOffsetExpressionAsLiteral, renderFetchPlusOffsetExpressionAsSingleParameter, renderFirstClause, renderFirstClause, renderFirstSkipClause, renderFirstSkipClause, renderForUpdateClause, renderFromClauseAfterUpdateSet, renderFromClauseExcludingDmlTargetReference, renderFromClauseJoiningDmlTargetReference, renderFromClauseSpaces, renderInsertIntoNoColumns, renderIntoIntoAndTable, renderLimitOffsetClause, renderLimitOffsetClause, renderLiteral, renderMaterializationHint, renderMergeUpdateClause, renderNamedTableReference, renderNull, renderOffset, renderOffsetFetchClause, renderOffsetFetchClause, renderOrderBy, renderParameterAsParameter, renderParameterAsParameter, renderPrimaryTableReference, renderQueryGroup, renderRecursiveCteVirtualSelections, renderRootTableGroup, renderRowNumber, renderRowNumberingSelectItems, renderRowsToClause, renderRowsToClause, renderSearchClause, renderSelectExpressionWithCastedOrInlinedPlainParameters, renderSelectSimpleComparison, renderSetClause, renderSkipFirstClause, renderSkipFirstClause, renderSortExpression, renderStandardCycleClause, renderStandardSearchClause, renderStringContainsExactlyPredicate, renderTableGroup, renderTableGroupJoin, renderTableReferenceIdentificationVariable, renderTableReferenceJoins, renderTopClause, renderTopClause, renderTopStartAtClause, renderTopStartAtClause, renderTupleComparisonStandard, renderUpdateClause, renderVirtualSelections, resolveAliasedExpression, resolveAliasedExpression, resolveExpressionToAlias, setLimitParameter, setOffsetParameter, shouldEmulateLateralWithIntersect, shouldInlineCte, simpleColumnWriteFragmentRendering, supportsArrayConstructor, supportsDistinctFromPredicate, supportsDuplicateSelectItemsInQueryGroup, supportsFilterClause, supportsIntersect, supportsJoinsInDelete, supportsNestedSubqueryCorrelation, supportsNestedWithClause, supportsNullPrecedence, supportsQuantifiedPredicates, supportsRecursiveClauseArrayAndRowEmulation, supportsRecursiveCycleClause, supportsRecursiveCycleUsingClause, supportsRecursiveSearchClause, supportsRowConstructor, supportsRowValueConstructorDistinctFromSyntax, supportsRowValueConstructorGtLtSyntax, supportsRowValueConstructorSyntaxInInSubQuery, supportsRowValueConstructorSyntaxInSet, supportsSimpleQueryGrouping, supportsWithClauseInSubquery, translate, translateDelete, translateInsert, translateSelect, translateUpdate, useOffsetFetchClause, visitAggregateColumnWriteExpression, visitAny, visitAssignment, visitBetweenPredicate, visitBinaryArithmeticExpression, visitCaseSearchedExpression, visitCaseSearchedExpression, visitCaseSimpleExpression, visitCaseSimpleExpression, visitCastTarget, visitCollation, visitColumnReference, visitColumnWriteFragment, visitConflictClause, visitConversion, visitCteContainer, visitCteDefinition, visitCteObject, visitCustomTableDelete, visitCustomTableInsert, visitCustomTableUpdate, visitDecodeCaseSearchedExpression, visitDeleteStatement, visitDistinct, visitDuration, visitDurationUnit, visitEmbeddableTypeLiteral, visitEntityTypeLiteral, visitEvery, visitExistsPredicate, visitExtractUnit, visitFilterFragmentPredicate, visitFilterPredicate, visitFormat, visitForUpdateClause, visitFromClause, visitFunctionTableReference, visitGroupByClause, visitGroupedPredicate, visitHavingClause, visitInArrayPredicate, visitInsertSource, visitInsertStatement, visitInsertStatementEmulateMerge, visitInsertStatementOnly, visitInSubQueryPredicate, visitJdbcLiteral, visitJunction, visitLikePredicate, visitModifiedSubQueryExpression, visitNamedTableReference, visitNegatedPredicate, visitNestedColumnReference, visitNullnessPredicate, visitOnDuplicateKeyConflictClause, visitOptionalTableUpdate, visitOrderBy, visitOver, visitOverClause, visitOverClause, visitOverflow, visitParameter, visitParameterAsParameter, visitPartitionByClause, visitPartitionExpressions, visitPartitionExpressions, visitQueryGroup, visitQueryLiteral, visitQueryPartTableReference, visitQuerySpec, visitRecursivePath, visitRelationalPredicate, visitReturningColumns, visitReturningColumns, visitSelectClause, visitSelectStatement, visitSelfRenderingExpression, visitSelfRenderingPredicate, 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, visitValuesList, visitValuesListEmulateSelectUnion, visitValuesListStandard, visitValuesTableReference, visitWhereClause, withParameterRenderingMode, withRowNumbering

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DerbyLegacySqlAstTranslator

      public DerbyLegacySqlAstTranslator(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory, org.hibernate.sql.ast.tree.Statement statement)
  • Method Details

    • visitDeleteStatementOnly

      protected void visitDeleteStatementOnly(org.hibernate.sql.ast.tree.delete.DeleteStatement statement)
      Overrides:
      visitDeleteStatementOnly in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitUpdateStatementOnly

      protected void visitUpdateStatementOnly(org.hibernate.sql.ast.tree.update.UpdateStatement statement)
      Overrides:
      visitUpdateStatementOnly in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitSetAssignment

      protected void visitSetAssignment(org.hibernate.sql.ast.tree.update.Assignment assignment)
      Overrides:
      visitSetAssignment in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderDmlTargetTableExpression

      protected void renderDmlTargetTableExpression(org.hibernate.sql.ast.tree.from.NamedTableReference tableReference)
      Overrides:
      renderDmlTargetTableExpression in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • supportsWithClause

      protected boolean supportsWithClause()
      Overrides:
      supportsWithClause in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderExpressionAsClauseItem

      protected void renderExpressionAsClauseItem(org.hibernate.sql.ast.tree.expression.Expression expression)
      Overrides:
      renderExpressionAsClauseItem in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitBooleanExpressionPredicate

      public void visitBooleanExpressionPredicate(org.hibernate.sql.ast.tree.predicate.BooleanExpressionPredicate booleanExpressionPredicate)
      Specified by:
      visitBooleanExpressionPredicate in interface org.hibernate.sql.ast.SqlAstWalker
      Overrides:
      visitBooleanExpressionPredicate in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitAnsiCaseSearchedExpression

      protected void visitAnsiCaseSearchedExpression(org.hibernate.sql.ast.tree.expression.CaseSearchedExpression caseSearchedExpression, Consumer<org.hibernate.sql.ast.tree.expression.Expression> resultRenderer)
      Overrides:
      visitAnsiCaseSearchedExpression in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitAnsiCaseSimpleExpression

      protected void visitAnsiCaseSimpleExpression(org.hibernate.sql.ast.tree.expression.CaseSimpleExpression caseSimpleExpression, Consumer<org.hibernate.sql.ast.tree.expression.Expression> resultRenderer)
      Overrides:
      visitAnsiCaseSimpleExpression in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • getForUpdate

      protected String getForUpdate()
      Overrides:
      getForUpdate in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • getForShare

      protected String getForShare(int timeoutMillis)
      Overrides:
      getForShare in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • getForUpdateWithClause

      protected String getForUpdateWithClause()
      Overrides:
      getForUpdateWithClause in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitOffsetFetchClause

      public void visitOffsetFetchClause(org.hibernate.sql.ast.tree.select.QueryPart queryPart)
      Specified by:
      visitOffsetFetchClause in interface org.hibernate.sql.ast.SqlAstWalker
      Overrides:
      visitOffsetFetchClause in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderFetchExpression

      protected void renderFetchExpression(org.hibernate.sql.ast.tree.expression.Expression fetchExpression)
      Overrides:
      renderFetchExpression in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderOffsetExpression

      protected void renderOffsetExpression(org.hibernate.sql.ast.tree.expression.Expression offsetExpression)
      Overrides:
      renderOffsetExpression in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderComparison

      protected void renderComparison(org.hibernate.sql.ast.tree.expression.Expression lhs, org.hibernate.query.sqm.ComparisonOperator operator, org.hibernate.sql.ast.tree.expression.Expression rhs)
      Overrides:
      renderComparison in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderSelectExpression

      protected void renderSelectExpression(org.hibernate.sql.ast.tree.expression.Expression expression)
      Overrides:
      renderSelectExpression in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderSelectTupleComparison

      protected void renderSelectTupleComparison(List<org.hibernate.sql.ast.spi.SqlSelection> lhsExpressions, org.hibernate.sql.ast.tree.expression.SqlTuple tuple, org.hibernate.query.sqm.ComparisonOperator operator)
      Overrides:
      renderSelectTupleComparison in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • renderPartitionItem

      protected void renderPartitionItem(org.hibernate.sql.ast.tree.expression.Expression expression)
      Overrides:
      renderPartitionItem in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitInListPredicate

      public void visitInListPredicate(org.hibernate.sql.ast.tree.predicate.InListPredicate inListPredicate)
      Specified by:
      visitInListPredicate in interface org.hibernate.sql.ast.SqlAstWalker
      Overrides:
      visitInListPredicate in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • supportsRowValueConstructorSyntax

      protected boolean supportsRowValueConstructorSyntax()
      Overrides:
      supportsRowValueConstructorSyntax in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • supportsRowValueConstructorSyntaxInInList

      protected boolean supportsRowValueConstructorSyntaxInInList()
      Overrides:
      supportsRowValueConstructorSyntaxInInList in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • supportsRowValueConstructorSyntaxInQuantifiedPredicates

      protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates()
      Overrides:
      supportsRowValueConstructorSyntaxInQuantifiedPredicates in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • getDual

      protected String getDual()
      Overrides:
      getDual in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • getFromDualForSelectOnly

      protected String getFromDualForSelectOnly()
      Overrides:
      getFromDualForSelectOnly in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • needsRowsToSkip

      protected boolean needsRowsToSkip()
      Overrides:
      needsRowsToSkip in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • needsMaxRows

      protected boolean needsMaxRows()
      Overrides:
      needsMaxRows in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • supportsJoinInMutationStatementSubquery

      protected boolean supportsJoinInMutationStatementSubquery()
      Overrides:
      supportsJoinInMutationStatementSubquery in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    • visitArithmeticOperand

      protected void visitArithmeticOperand(org.hibernate.sql.ast.tree.expression.Expression expression)
      Overrides:
      visitArithmeticOperand in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>