Class PersistentTableMutationStrategy
java.lang.Object
org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableStrategy
org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableMutationStrategy
- All Implemented Interfaces:
SqmMultiTableMutationStrategy
public class PersistentTableMutationStrategy
extends PersistentTableStrategy
implements SqmMultiTableMutationStrategy
This is a strategy that mimics temporary tables for databases which do not support
temporary tables. It follows a pattern similar to the ANSI SQL definition of global
temporary table using a "session id" column to segment rows from the various sessions.
-
Field Summary
Fields inherited from class org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableStrategy
CATALOG, CREATE_ID_TABLES, DROP_ID_TABLES, SCHEMA, SHORT_NAME
-
Constructor Summary
ConstructorsConstructorDescriptionPersistentTableMutationStrategy
(TemporaryTable idTable, SessionFactoryImplementor sessionFactory) PersistentTableMutationStrategy
(EntityMappingType rootEntityDescriptor, RuntimeModelCreationContext runtimeModelCreationContext) -
Method Summary
Modifier and TypeMethodDescriptionbuildHandler
(SqmDeleteStatement<?> sqmDelete, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context, MutableObject<JdbcParameterBindings> firstJdbcParameterBindingsConsumer) buildHandler
(SqmDeleteOrUpdateStatement<?> sqmStatement, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context) Builds a cacheable handler for the passed SqmDeleteOrUpdateStatement.buildHandler
(SqmUpdateStatement<?> sqmUpdate, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context, MutableObject<JdbcParameterBindings> firstJdbcParameterBindingsConsumer) Methods inherited from class org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableStrategy
getSessionFactory, getTemporaryTable, getTemporaryTableStrategy, prepare, release
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.hibernate.query.sqm.mutation.spi.SqmMultiTableMutationStrategy
executeDelete, executeUpdate, prepare, prepare, release
-
Constructor Details
-
PersistentTableMutationStrategy
public PersistentTableMutationStrategy(EntityMappingType rootEntityDescriptor, RuntimeModelCreationContext runtimeModelCreationContext) -
PersistentTableMutationStrategy
public PersistentTableMutationStrategy(TemporaryTable idTable, SessionFactoryImplementor sessionFactory)
-
-
Method Details
-
buildHandler
public MultiTableHandlerBuildResult buildHandler(SqmDeleteOrUpdateStatement<?> sqmStatement, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context) Description copied from interface:SqmMultiTableMutationStrategy
Builds a cacheable handler for the passed SqmDeleteOrUpdateStatement.- Specified by:
buildHandler
in interfaceSqmMultiTableMutationStrategy
- Returns:
- The number of rows affected
-
buildHandler
public MultiTableHandler buildHandler(SqmUpdateStatement<?> sqmUpdate, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context, MutableObject<JdbcParameterBindings> firstJdbcParameterBindingsConsumer) -
buildHandler
public MultiTableHandler buildHandler(SqmDeleteStatement<?> sqmDelete, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context, MutableObject<JdbcParameterBindings> firstJdbcParameterBindingsConsumer)
-