Top Description Fields Constructors Methods
org.hibernate.sql.ast.tree.insert

public Class InsertSelectStatement

extends AbstractMutationStatement
implements InsertStatement
Class Inheritance
All Implemented Interfaces
org.hibernate.sql.ast.tree.insert.InsertStatement, org.hibernate.sql.ast.tree.MutationStatement, org.hibernate.sql.ast.tree.Statement
Imports
java.util.ArrayList, .Collections, .LinkedHashMap, .List, .Map, java.util.function.BiConsumer, org.hibernate.sql.ast.SqlAstWalker, org.hibernate.sql.ast.tree.AbstractMutationStatement, org.hibernate.sql.ast.tree.cte.CteContainer, .CteStatement, org.hibernate.sql.ast.tree.expression.ColumnReference, org.hibernate.sql.ast.tree.from.NamedTableReference, org.hibernate.sql.ast.tree.select.QueryPart

todo (6.2) - Would much prefer to split insert-values and insert-select into individual contracts - something like `InsertStatement` and `InsertSelectStatement` e.g. Would help alleviate much of the duplication in handling between inserts from SQM and those from model mutation
Author
Steve Ebersole

Field Summary

Modifier and TypeField and Description
public static final String
private QueryPart
private List<ColumnReference>
private List<Values>

Constructor Summary

AccessConstructor and Description
public
public
public
InsertSelectStatement(CteContainer cteContainer, NamedTableReference targetTable, List<ColumnReference> returningColumns)

Method Summary

Modifier and TypeMethod and Description
public void
public void
public void
public void
public QueryPart
public List<ColumnReference>
public List<Values>
public void
setSourceSelectStatement(QueryPart sourceSelectStatement)

public void
setValuesList(List<Values> valuesList)

Inherited from org.hibernate.sql.ast.tree.AbstractMutationStatement:
getReturningColumnsgetTargetTable

Field Detail

DEFAULT_ALIASback to summary
public static final String DEFAULT_ALIAS
sourceSelectStatementback to summary
private QueryPart sourceSelectStatement
targetColumnReferencesback to summary
private List<ColumnReference> targetColumnReferences
valuesListback to summary
private List<Values> valuesList

Constructor Detail

InsertSelectStatementback to summary
public InsertSelectStatement(NamedTableReference targetTable)
InsertSelectStatementback to summary
public InsertSelectStatement(NamedTableReference targetTable, List<ColumnReference> returningColumns)
InsertSelectStatementback to summary
public InsertSelectStatement(CteContainer cteContainer, NamedTableReference targetTable, List<ColumnReference> returningColumns)

Method Detail

acceptback to summary
public void accept(SqlAstWalker walker)

Implements org.hibernate.sql.ast.tree.Statement.accept.

Doc from org.hibernate.sql.ast.tree.Statement.accept.

Visitation

Annotations
@Override
addTargetColumnReferencesback to summary
public void addTargetColumnReferences(ColumnReference... references)
addTargetColumnReferencesback to summary
public void addTargetColumnReferences(List<ColumnReference> references)
forEachTargetColumnback to summary
public void forEachTargetColumn(BiConsumer<Integer, ColumnReference> consumer)

Implements org.hibernate.sql.ast.tree.insert.InsertStatement.forEachTargetColumn.

Doc from org.hibernate.sql.ast.tree.insert.InsertStatement.forEachTargetColumn.

Iterates each target column

Annotations
@Override
getSourceSelectStatementback to summary
public QueryPart getSourceSelectStatement()
getTargetColumnsback to summary
public List<ColumnReference> getTargetColumns()

Implements org.hibernate.sql.ast.tree.insert.InsertStatement.getTargetColumns.

Doc from org.hibernate.sql.ast.tree.insert.InsertStatement.getTargetColumns.

Get all target columns

Annotations
@Override
getValuesListback to summary
public List<Values> getValuesList()
setSourceSelectStatementback to summary
public void setSourceSelectStatement(QueryPart sourceSelectStatement)
setValuesListback to summary
public void setValuesList(List<Values> valuesList)