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

  • All Implemented Interfaces:
    Appendable, org.hibernate.sql.ast.spi.SqlAppender, org.hibernate.sql.ast.SqlAstTranslator<T>, org.hibernate.sql.ast.SqlAstWalker

    public class SybaseLegacySqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
    extends org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
    A SQL AST translator for Sybase.
    • 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
      SybaseLegacySqlAstTranslator​(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory, org.hibernate.sql.ast.tree.Statement statement)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.LockStrategy determineLockingStrategy​(org.hibernate.sql.ast.tree.select.QuerySpec querySpec, org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.ForUpdateClause forUpdateClause, Boolean followOnLocking)  
      protected boolean needsMaxRows()  
      protected boolean needsRowsToSkip()  
      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 renderDeleteClause​(org.hibernate.sql.ast.tree.delete.DeleteStatement statement)  
      protected void renderForUpdateClause​(org.hibernate.sql.ast.tree.select.QuerySpec querySpec, org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.ForUpdateClause forUpdateClause)  
      protected void renderFromClauseAfterUpdateSet​(org.hibernate.sql.ast.tree.update.UpdateStatement statement)  
      protected boolean renderNamedTableReference​(org.hibernate.sql.ast.tree.from.NamedTableReference tableReference, org.hibernate.LockMode lockMode)  
      protected void renderPartitionItem​(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 supportsRowValueConstructorSyntax()  
      protected boolean supportsRowValueConstructorSyntaxInInList()  
      protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates()  
      protected boolean supportsWithClause()  
      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)  
      void visitBinaryArithmeticExpression​(org.hibernate.sql.ast.tree.expression.BinaryArithmeticExpression arithmeticExpression)  
      protected void visitConflictClause​(org.hibernate.sql.ast.tree.insert.ConflictClause conflictClause)  
      protected void visitInsertStatementOnly​(org.hibernate.sql.ast.tree.insert.InsertSelectStatement statement)  
      void visitOffsetFetchClause​(org.hibernate.sql.ast.tree.select.QueryPart queryPart)  
      protected void visitValuesList​(List<org.hibernate.sql.ast.tree.insert.Values> valuesList)  
      void visitValuesTableReference​(org.hibernate.sql.ast.tree.from.ValuesTableReference tableReference)  
      • Methods inherited from class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator

        addAdditionalWherePredicate, addAppliedParameterBinding, append, append, append, appendAssignmentColumn, appendBackslashEscapedLikeLiteral, appendSql, appendSql, appendSql, appendSql, appendSql, applyParameter, areAllResultsParameters, areAllResultsParameters, assertRowsOnlyFetchClauseType, castFunction, castNumberToString, cleanup, createRowMatchingPredicate, determineColumnReferenceQualifier, determineCyclePathColumnName, determineLateralEmulationPredicate, determineWhereClauseRestrictionWithJoinEmulation, determineWhereClauseRestrictionWithJoinEmulation, emulateCycleClauseWithRowAndArray, emulateFetchOffsetWithWindowFunctions, emulateFetchOffsetWithWindowFunctions, emulateFetchOffsetWithWindowFunctionsVisitQueryPart, emulateQuantifiedTupleSubQueryPredicate, emulateQueryPartTableReferenceColumnAliasing, emulateSearchClauseOrderWithRowAndArray, emulateSelectTupleComparison, emulateSortSpecificationNullPrecedence, emulateSubQueryRelationalRestrictionPredicate, emulateTupleComparison, emulateValuesTableReferenceColumnAliasing, getAffectedTableNames, getAppliedParameterBindings, getArrayContainsFunction, getBooleanType, getCastTypeName, getCastTypeName, getClauseStack, getCteStatement, getCurrentClauseStack, getCurrentCteStatement, getCurrentDmlStatement, getCurrentQueryPart, getDialect, getDual, getEffectiveLockMode, getEffectiveLockMode, getEffectiveLockTimeout, getFetchClauseTypeForRowNumbering, getForShare, getForUpdate, getForUpdateWithClause, getFromDual, getFromDualForSelectOnly, getIntegerType, getJdbcLockStrategy, getJdbcParameterBindings, getJdbcServices, getLeftHandExpression, getLimit, getLimitParameter, getLiteralValue, getLockOptions, getMaxRows, getNoWait, getOffsetParameter, getParameterBinders, getParameterBindValue, getParameterRenderingMode, getQueryPartForRowNumbering, getQueryPartStack, getRowsToSkip, getSelectItemReference, getSessionFactory, getSkipLocked, getSortSpecificationsRowNumbering, getSql, getSqlAppender, getSqlBuffer, getSqlTypeName, 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, renderDerivedTableReference, renderDmlTargetTableExpression, renderDmlTargetTableGroup, renderExpressionAsClauseItem, renderExpressionAsLiteral, renderExpressionsAsSubquery, renderFetch, renderFetchExpression, renderFetchPlusOffsetExpression, renderFetchPlusOffsetExpressionAsLiteral, renderFetchPlusOffsetExpressionAsSingleParameter, renderFirstClause, renderFirstClause, renderFirstSkipClause, renderFirstSkipClause, renderFromClauseExcludingDmlTargetReference, renderFromClauseJoiningDmlTargetReference, renderFromClauseSpaces, renderInsertIntoNoColumns, renderIntoIntoAndTable, renderLimitOffsetClause, renderLimitOffsetClause, renderLiteral, renderMaterializationHint, renderMergeUpdateClause, renderNull, renderOffset, renderOffsetExpression, renderOffsetFetchClause, renderOffsetFetchClause, renderOrderBy, renderParameterAsParameter, renderParameterAsParameter, renderPrimaryTableReference, renderQueryGroup, renderRecursiveCteVirtualSelections, renderRootTableGroup, renderRowNumber, renderRowNumberingSelectItems, renderSearchClause, renderSelectExpression, renderSelectExpressionWithCastedOrInlinedPlainParameters, renderSelectSimpleComparison, renderSetClause, renderSkipFirstClause, renderSkipFirstClause, renderSortExpression, renderStandardCycleClause, renderStandardSearchClause, renderStringContainsExactlyPredicate, renderTableGroup, renderTableGroupJoin, renderTableReferenceIdentificationVariable, renderTableReferenceJoins, renderTableReferenceJoins, renderTopClause, renderTopClause, renderTopStartAtClause, renderTopStartAtClause, renderTupleComparisonStandard, renderUpdateClause, renderVirtualSelections, renderWrappedParameter, resolveAliasedExpression, resolveAliasedExpression, resolveExpressionToAlias, setLimitParameter, setOffsetParameter, shouldEmulateLateralWithIntersect, shouldInlineCte, simpleColumnWriteFragmentRendering, supportsArrayConstructor, supportsDistinctFromPredicate, supportsDuplicateSelectItemsInQueryGroup, supportsFilterClause, supportsIntersect, supportsJoinInMutationStatementSubquery, supportsJoinsInDelete, supportsNestedSubqueryCorrelation, supportsNestedWithClause, supportsNullPrecedence, supportsQuantifiedPredicates, supportsRecursiveClauseArrayAndRowEmulation, supportsRecursiveCycleClause, supportsRecursiveCycleUsingClause, supportsRecursiveSearchClause, supportsRowConstructor, supportsRowValueConstructorDistinctFromSyntax, supportsRowValueConstructorGtLtSyntax, supportsRowValueConstructorSyntaxInInSubQuery, supportsRowValueConstructorSyntaxInSet, supportsSimpleQueryGrouping, supportsWithClauseInSubquery, translate, translateDelete, translateInsert, translateSelect, translateUpdate, useOffsetFetchClause, visitAggregateColumnWriteExpression, visitAny, visitArithmeticOperand, visitAssignment, visitBetweenPredicate, visitBooleanExpressionPredicate, visitCaseSearchedExpression, visitCaseSearchedExpression, visitCaseSimpleExpression, visitCaseSimpleExpression, visitCastTarget, visitCollation, visitColumnReference, 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, visitInsertSource, visitInsertStatement, visitInsertStatementEmulateMerge, 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, 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, visitValuesListEmulateSelectUnion, visitValuesListStandard, visitWhereClause, withParameterRenderingMode, withRowNumbering
    • Constructor Detail

      • SybaseLegacySqlAstTranslator

        public SybaseLegacySqlAstTranslator​(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory,
                                            org.hibernate.sql.ast.tree.Statement statement)
    • Method Detail

      • visitInsertStatementOnly

        protected void visitInsertStatementOnly​(org.hibernate.sql.ast.tree.insert.InsertSelectStatement statement)
        Overrides:
        visitInsertStatementOnly in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
      • renderDeleteClause

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

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

        protected void visitConflictClause​(org.hibernate.sql.ast.tree.insert.ConflictClause conflictClause)
        Overrides:
        visitConflictClause 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>
      • 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>
      • renderNamedTableReference

        protected boolean renderNamedTableReference​(org.hibernate.sql.ast.tree.from.NamedTableReference tableReference,
                                                    org.hibernate.LockMode lockMode)
        Overrides:
        renderNamedTableReference in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
      • determineLockingStrategy

        protected org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.LockStrategy determineLockingStrategy​(org.hibernate.sql.ast.tree.select.QuerySpec querySpec,
                                                                                                           org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.ForUpdateClause forUpdateClause,
                                                                                                           Boolean followOnLocking)
        Overrides:
        determineLockingStrategy in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
      • renderForUpdateClause

        protected void renderForUpdateClause​(org.hibernate.sql.ast.tree.select.QuerySpec querySpec,
                                             org.hibernate.sql.ast.spi.AbstractSqlAstTranslator.ForUpdateClause forUpdateClause)
        Overrides:
        renderForUpdateClause in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
      • visitValuesList

        protected void visitValuesList​(List<org.hibernate.sql.ast.tree.insert.Values> valuesList)
        Overrides:
        visitValuesList in class org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
      • visitValuesTableReference

        public void visitValuesTableReference​(org.hibernate.sql.ast.tree.from.ValuesTableReference tableReference)
        Specified by:
        visitValuesTableReference in interface org.hibernate.sql.ast.SqlAstWalker
        Overrides:
        visitValuesTableReference 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>
      • 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>
      • 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>
      • visitBinaryArithmeticExpression

        public void visitBinaryArithmeticExpression​(org.hibernate.sql.ast.tree.expression.BinaryArithmeticExpression arithmeticExpression)
        Specified by:
        visitBinaryArithmeticExpression in interface org.hibernate.sql.ast.SqlAstWalker
        Overrides:
        visitBinaryArithmeticExpression 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>
      • 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>