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
Constructors Constructor Description PersistentTableMutationStrategy(TemporaryTable idTable, SessionFactoryImplementor sessionFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
executeDelete(SqmDeleteStatement<?> sqmDelete, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context)
Execute the multi-table update indicated by the passed SqmUpdateStatementint
executeUpdate(SqmUpdateStatement<?> sqmUpdate, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context)
Execute the multi-table update indicated by the passed SqmUpdateStatement-
Methods inherited from class org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableStrategy
getEntityDescriptor, getSessionFactory, getTemporaryTable, 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
prepare, release
-
-
-
-
Constructor Detail
-
PersistentTableMutationStrategy
public PersistentTableMutationStrategy(TemporaryTable idTable, SessionFactoryImplementor sessionFactory)
-
-
Method Detail
-
executeUpdate
public int executeUpdate(SqmUpdateStatement<?> sqmUpdate, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context)
Description copied from interface:SqmMultiTableMutationStrategy
Execute the multi-table update indicated by the passed SqmUpdateStatement- Specified by:
executeUpdate
in interfaceSqmMultiTableMutationStrategy
- Returns:
- The number of rows affected
-
executeDelete
public int executeDelete(SqmDeleteStatement<?> sqmDelete, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context)
Description copied from interface:SqmMultiTableMutationStrategy
Execute the multi-table update indicated by the passed SqmUpdateStatement- Specified by:
executeDelete
in interfaceSqmMultiTableMutationStrategy
- Returns:
- The number of rows affected
-
-