Package org.hibernate.community.dialect
Class FirebirdSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
java.lang.Object
org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
org.hibernate.community.dialect.FirebirdSqlAstTranslator<T>
- All Implemented Interfaces:
Appendable,org.hibernate.sql.ast.spi.SqlAppender,org.hibernate.sql.ast.SqlAstTranslator<T>,org.hibernate.sql.ast.SqlAstWalker
public class FirebirdSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
extends org.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T>
A SQL AST translator for Firebird.
-
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
ConstructorsConstructorDescriptionFirebirdSqlAstTranslator(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory, org.hibernate.sql.ast.tree.Statement statement) -
Method Summary
Modifier and TypeMethodDescriptionprotected StringgetDual()protected Stringprotected Stringprotected voidrenderPartitionItem(org.hibernate.sql.ast.tree.expression.Expression expression) protected voidrenderSelectExpression(org.hibernate.sql.ast.tree.expression.Expression expression) protected voidrenderSelectTupleComparison(List<org.hibernate.sql.ast.spi.SqlSelection> lhsExpressions, org.hibernate.sql.ast.tree.expression.SqlTuple tuple, org.hibernate.query.sqm.ComparisonOperator operator) protected booleanshouldEmulateFetchClause(org.hibernate.sql.ast.tree.select.QueryPart queryPart) protected booleanprotected booleanprotected booleanprotected booleanprotected booleanprotected booleanprotected voidvisitAnsiCaseSearchedExpression(org.hibernate.sql.ast.tree.expression.CaseSearchedExpression caseSearchedExpression, Consumer<org.hibernate.sql.ast.tree.expression.Expression> resultRenderer) protected voidvisitAnsiCaseSimpleExpression(org.hibernate.sql.ast.tree.expression.CaseSimpleExpression caseSimpleExpression, Consumer<org.hibernate.sql.ast.tree.expression.Expression> resultRenderer) voidvisitBooleanExpressionPredicate(org.hibernate.sql.ast.tree.predicate.BooleanExpressionPredicate booleanExpressionPredicate) voidvisitInListPredicate(org.hibernate.sql.ast.tree.predicate.InListPredicate inListPredicate) voidvisitJdbcLiteral(org.hibernate.sql.ast.tree.expression.JdbcLiteral<?> jdbcLiteral) voidvisitOffsetFetchClause(org.hibernate.sql.ast.tree.select.QueryPart queryPart) voidvisitParameter(org.hibernate.sql.ast.tree.expression.JdbcParameter jdbcParameter) voidvisitQueryGroup(org.hibernate.sql.ast.tree.select.QueryGroup queryGroup) voidvisitQueryLiteral(org.hibernate.sql.ast.tree.expression.QueryLiteral<?> queryLiteral) voidvisitQuerySpec(org.hibernate.sql.ast.tree.select.QuerySpec querySpec) voidvisitSelectClause(org.hibernate.sql.ast.tree.select.SelectClause selectClause) voidvisitSelfRenderingExpression(org.hibernate.sql.ast.tree.expression.SelfRenderingExpression expression) voidvisitSelfRenderingPredicate(org.hibernate.sql.ast.tree.predicate.SelfRenderingPredicate selfRenderingPredicate) protected voidvisitSqlSelections(org.hibernate.sql.ast.tree.select.SelectClause selectClause) 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, getForShare, getForUpdateWithClause, 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, needsMaxRows, needsRecursiveKeywordInWithClause, needsRowsToSkip, prepareLimitOffsetParameters, processNestedTableGroupJoins, processTableGroupJoin, processTableGroupJoins, registerAffectedTable, registerAffectedTable, render, renderAsLiteral, renderBackslashEscapedLikePattern, renderCaseInsensitiveLikeEmulation, renderCasted, renderCombinedLimitClause, renderCombinedLimitClause, renderCommaSeparated, renderCommaSeparatedSelectExpression, renderCommaSeparatedSelectExpression, renderComparison, renderComparisonDistinctOperator, renderComparisonEmulateCase, renderComparisonEmulateDecode, renderComparisonEmulateDecode, renderComparisonEmulateIntersect, renderComparisonStandard, renderCteColumns, renderCycleClause, renderDeleteClause, renderDerivedTableReference, renderDmlTargetTableExpression, renderDmlTargetTableGroup, renderExpressionAsClauseItem, renderExpressionAsLiteral, renderExpressionsAsSubquery, renderFetch, renderFetchExpression, renderFetchPlusOffsetExpression, renderFetchPlusOffsetExpressionAsLiteral, renderFetchPlusOffsetExpressionAsSingleParameter, renderFirstClause, renderFirstClause, renderFirstSkipClause, renderFirstSkipClause, renderForUpdateClause, renderFromClauseAfterUpdateSet, renderFromClauseExcludingDmlTargetReference, renderFromClauseJoiningDmlTargetReference, renderFromClauseSpaces, renderInsertIntoNoColumns, renderIntoIntoAndTable, renderLimitOffsetClause, renderLimitOffsetClause, renderLiteral, renderMaterializationHint, renderMergeUpdateClause, renderNamedTableReference, renderNull, renderOffset, renderOffsetExpression, 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, supportsJoinInMutationStatementSubquery, supportsJoinsInDelete, supportsNestedSubqueryCorrelation, supportsNullPrecedence, supportsQuantifiedPredicates, supportsRecursiveClauseArrayAndRowEmulation, supportsRecursiveCycleClause, supportsRecursiveCycleUsingClause, supportsRecursiveSearchClause, supportsRowConstructor, supportsRowValueConstructorDistinctFromSyntax, supportsRowValueConstructorGtLtSyntax, supportsRowValueConstructorSyntaxInInSubQuery, supportsRowValueConstructorSyntaxInSet, supportsWithClause, supportsWithClauseInSubquery, translate, translateDelete, translateInsert, translateSelect, translateUpdate, useOffsetFetchClause, visitAggregateColumnWriteExpression, visitAny, visitArithmeticOperand, visitAssignment, visitBetweenPredicate, visitBinaryArithmeticExpression, visitCaseSearchedExpression, visitCaseSearchedExpression, visitCaseSimpleExpression, visitCaseSimpleExpression, visitCastTarget, visitCollation, visitColumnReference, visitColumnWriteFragment, visitConflictClause, 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, visitInsertSource, visitInsertStatement, visitInsertStatementEmulateMerge, visitInsertStatementOnly, visitInSubQueryPredicate, visitJunction, visitLikePredicate, visitModifiedSubQueryExpression, visitNamedTableReference, visitNegatedPredicate, visitNestedColumnReference, visitNullnessPredicate, visitOnDuplicateKeyConflictClause, visitOptionalTableUpdate, visitOrderBy, visitOver, visitOverClause, visitOverClause, visitOverflow, visitParameterAsParameter, visitPartitionByClause, visitPartitionExpressions, visitPartitionExpressions, visitQueryPartTableReference, visitRecursivePath, visitRelationalPredicate, visitReturningColumns, visitReturningColumns, visitSelectStatement, visitSetAssignment, visitSetAssignmentEmulateJoin, visitSortSpecification, visitSortSpecification, visitSqlFragmentPredicate, visitSqlSelectExpression, visitSqlSelection, visitSqlSelectionExpression, 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
-
FirebirdSqlAstTranslator
public FirebirdSqlAstTranslator(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory, org.hibernate.sql.ast.tree.Statement statement)
-
-
Method Details
-
visitBooleanExpressionPredicate
public void visitBooleanExpressionPredicate(org.hibernate.sql.ast.tree.predicate.BooleanExpressionPredicate booleanExpressionPredicate) - Specified by:
visitBooleanExpressionPredicatein interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitBooleanExpressionPredicatein classorg.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:
visitAnsiCaseSearchedExpressionin classorg.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:
visitAnsiCaseSimpleExpressionin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
getForUpdate
- Overrides:
getForUpdatein classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
shouldEmulateFetchClause
protected boolean shouldEmulateFetchClause(org.hibernate.sql.ast.tree.select.QueryPart queryPart) -
visitQueryGroup
public void visitQueryGroup(org.hibernate.sql.ast.tree.select.QueryGroup queryGroup) - Specified by:
visitQueryGroupin interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitQueryGroupin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitQuerySpec
public void visitQuerySpec(org.hibernate.sql.ast.tree.select.QuerySpec querySpec) - Specified by:
visitQuerySpecin interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitQuerySpecin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitSelectClause
public void visitSelectClause(org.hibernate.sql.ast.tree.select.SelectClause selectClause) - Specified by:
visitSelectClausein interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitSelectClausein classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitSqlSelections
protected void visitSqlSelections(org.hibernate.sql.ast.tree.select.SelectClause selectClause) - Overrides:
visitSqlSelectionsin classorg.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:
visitOffsetFetchClausein interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitOffsetFetchClausein classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
supportsSimpleQueryGrouping
protected boolean supportsSimpleQueryGrouping()- Overrides:
supportsSimpleQueryGroupingin classorg.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:
renderSelectExpressionin classorg.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:
renderSelectTupleComparisonin classorg.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:
renderPartitionItemin classorg.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:
visitInListPredicatein interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitInListPredicatein classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
supportsRowValueConstructorSyntax
protected boolean supportsRowValueConstructorSyntax()- Overrides:
supportsRowValueConstructorSyntaxin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
supportsRowValueConstructorSyntaxInInList
protected boolean supportsRowValueConstructorSyntaxInInList()- Overrides:
supportsRowValueConstructorSyntaxInInListin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
supportsRowValueConstructorSyntaxInQuantifiedPredicates
protected boolean supportsRowValueConstructorSyntaxInQuantifiedPredicates()- Overrides:
supportsRowValueConstructorSyntaxInQuantifiedPredicatesin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
getDual
- Overrides:
getDualin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
getFromDualForSelectOnly
- Overrides:
getFromDualForSelectOnlyin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
supportsIntersect
protected boolean supportsIntersect()- Overrides:
supportsIntersectin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
supportsNestedWithClause
protected boolean supportsNestedWithClause()- Overrides:
supportsNestedWithClausein classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitSelfRenderingPredicate
public void visitSelfRenderingPredicate(org.hibernate.sql.ast.tree.predicate.SelfRenderingPredicate selfRenderingPredicate) - Specified by:
visitSelfRenderingPredicatein interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitSelfRenderingPredicatein classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitSelfRenderingExpression
public void visitSelfRenderingExpression(org.hibernate.sql.ast.tree.expression.SelfRenderingExpression expression) - Specified by:
visitSelfRenderingExpressionin interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitSelfRenderingExpressionin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitParameter
public void visitParameter(org.hibernate.sql.ast.tree.expression.JdbcParameter jdbcParameter) - Specified by:
visitParameterin interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitParameterin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitJdbcLiteral
public void visitJdbcLiteral(org.hibernate.sql.ast.tree.expression.JdbcLiteral<?> jdbcLiteral) - Specified by:
visitJdbcLiteralin interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitJdbcLiteralin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-
visitQueryLiteral
public void visitQueryLiteral(org.hibernate.sql.ast.tree.expression.QueryLiteral<?> queryLiteral) - Specified by:
visitQueryLiteralin interfaceorg.hibernate.sql.ast.SqlAstWalker- Overrides:
visitQueryLiteralin classorg.hibernate.sql.ast.spi.AbstractSqlAstTranslator<T extends org.hibernate.sql.exec.spi.JdbcOperation>
-