Class CteInsertHandler
java.lang.Object
org.hibernate.query.sqm.mutation.internal.cte.CteInsertHandler
- All Implemented Interfaces:
Handler,InsertHandler
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCteInsertHandler(CteTable cteTable, SqmInsertStatement<?> sqmStatement, DomainParameterXref domainParameterXref, SessionFactoryImplementor sessionFactory) -
Method Summary
Modifier and TypeMethodDescriptionprotected StringaddDmlCtes(CteContainer statement, CteStatement queryCte, List<Map.Entry<List<CteColumn>, Assignment>> assignments, boolean assignsId, MultiTableSqmMutationConverter sqmConverter, SessionFactoryImplementor factory) protected ExpressioncreateCountStar(SessionFactoryImplementor factory, MultiTableSqmMutationConverter sqmConverter) static CteTablecreateCteTable(CteTable sqmCteTable, List<CteColumn> sqmCteColumns) intexecute(DomainQueryExecutionContext executionContext) Execute the multi-table update or delete indicated by the SQM AST passed in when this Handler was created.protected StringgetCteTableName(String tableExpression) protected StringgetCteTableName(String tableExpression, String subPrefix) protected NamedTableReferenceresolveUnionTableReference(TableReference tableReference, String tableExpression)
-
Field Details
-
DML_RESULT_TABLE_NAME_PREFIX
- See Also:
-
CTE_TABLE_IDENTIFIER
- See Also:
-
ROW_NUMBERS_WITH_SEQUENCE_VALUE
- See Also:
-
-
Constructor Details
-
CteInsertHandler
public CteInsertHandler(CteTable cteTable, SqmInsertStatement<?> sqmStatement, DomainParameterXref domainParameterXref, SessionFactoryImplementor sessionFactory)
-
-
Method Details
-
createCteTable
-
getSqmStatement
-
getEntityDescriptor
-
getCteTable
-
getDomainParameterXref
-
execute
Description copied from interface:HandlerExecute the multi-table update or delete indicated by the SQM AST passed in when this Handler was created. -
createCountStar
protected Expression createCountStar(SessionFactoryImplementor factory, MultiTableSqmMutationConverter sqmConverter) -
addDmlCtes
protected String addDmlCtes(CteContainer statement, CteStatement queryCte, List<Map.Entry<List<CteColumn>, Assignment>> assignments, boolean assignsId, MultiTableSqmMutationConverter sqmConverter, SessionFactoryImplementor factory) -
resolveUnionTableReference
protected NamedTableReference resolveUnionTableReference(TableReference tableReference, String tableExpression) -
getCteTableName
-
getCteTableName
-