Class PersistentTableInsertStrategy
- java.lang.Object
-
- org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableStrategy
-
- org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableInsertStrategy
-
- All Implemented Interfaces:
SqmMultiTableInsertStrategy
public class PersistentTableInsertStrategy extends PersistentTableStrategy implements SqmMultiTableInsertStrategy
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 Modifier and Type Field Description static String
CATALOG
static String
DROP_ID_TABLES
static String
SCHEMA
static String
SHORT_NAME
-
Constructor Summary
Constructors Constructor Description PersistentTableInsertStrategy(TemporaryTable entityTable, SessionFactoryImplementor sessionFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
executeInsert(SqmInsertStatement<?> sqmInsertStatement, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context)
Execute the multi-table insert indicated by the passed SqmInsertStatement-
Methods inherited from class org.hibernate.query.sqm.mutation.internal.temptable.PersistentTableStrategy
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.SqmMultiTableInsertStrategy
prepare, release
-
-
-
-
Field Detail
-
SHORT_NAME
public static final String SHORT_NAME
- See Also:
- Constant Field Values
-
DROP_ID_TABLES
public static final String DROP_ID_TABLES
- See Also:
- Constant Field Values
-
SCHEMA
public static final String SCHEMA
- See Also:
- Constant Field Values
-
CATALOG
public static final String CATALOG
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
PersistentTableInsertStrategy
public PersistentTableInsertStrategy(TemporaryTable entityTable, SessionFactoryImplementor sessionFactory)
-
-
Method Detail
-
executeInsert
public int executeInsert(SqmInsertStatement<?> sqmInsertStatement, DomainParameterXref domainParameterXref, DomainQueryExecutionContext context)
Description copied from interface:SqmMultiTableInsertStrategy
Execute the multi-table insert indicated by the passed SqmInsertStatement- Specified by:
executeInsert
in interfaceSqmMultiTableInsertStrategy
- Returns:
- The number of rows affected
-
-