Package org.h2.command.dml
Class MergeUsing
- java.lang.Object
-
- org.h2.command.Prepared
-
- org.h2.command.dml.DataChangeStatement
-
- org.h2.command.dml.MergeUsing
-
public final class MergeUsing extends DataChangeStatement
This class represents the statement syntax MERGE INTO table alias USING... It does not replace the MERGE INTO... KEYS... form.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classMergeUsing.WhenAbstract WHEN command of the MERGE statement.classMergeUsing.WhenMatchedThenDeleteclassMergeUsing.WhenMatchedThenUpdateclassMergeUsing.WhenNotMatched
-
Field Summary
-
Fields inherited from class org.h2.command.Prepared
create, parameters, prepareAlways, session, sqlStatement, sqlTokens
-
-
Constructor Summary
Constructors Constructor Description MergeUsing(SessionLocal session, TableFilter targetTableFilter)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddWhen(MergeUsing.When w)Adds WHEN command.voidcollectDependencies(java.util.HashSet<DbObject> dependencies)Find and collect all DbObjects, this Prepared depends on.ExpressiongetOnCondition()java.lang.StringBuildergetPlanSQL(java.lang.StringBuilder builder, int sqlFlags)Appends the SQL statement with the execution plan.TableFiltergetSourceTableFilter()java.lang.StringgetStatementName()Return the name of this statement.TablegetTable()Return the target table.TableFiltergetTargetTableFilter()intgetType()Get the command type as defined in CommandInterfacejava.util.ArrayList<MergeUsing.When>getWhen()voidsetOnCondition(Expression condition)voidsetSourceTableFilter(TableFilter sourceTableFilter)voidsetTargetTableFilter(TableFilter targetTableFilter)longupdate(ResultTarget deltaChangeCollector, DataChangeDeltaTable.ResultOption deltaChangeCollectionMode)Execute the statement with specified delta change collector and collection mode.-
Methods inherited from class org.h2.command.dml.DataChangeStatement
isCacheable, isTransactional, lockAndRecheckCondition, prepare, queryMeta, update
-
Methods inherited from class org.h2.command.Prepared
checkCanceled, checkParameters, getCurrentRowNumber, getDatabase, getObjectId, getParameters, getPersistedObjectId, getPlanSQL, getSession, getSimpleSQL, getSQL, getSQLTokens, invalidateCachedResult, isQuery, isReadOnly, isRetryable, isWithParamValues, needRecompile, query, setCommand, setCurrentRowNumber, setParameterList, setPersistedObjectId, setPrepareAlways, setRow, setSession, setSQL, setWithParamValues, toString
-
-
-
-
Constructor Detail
-
MergeUsing
public MergeUsing(SessionLocal session, TableFilter targetTableFilter)
-
-
Method Detail
-
update
public long update(ResultTarget deltaChangeCollector, DataChangeDeltaTable.ResultOption deltaChangeCollectionMode)
Description copied from class:DataChangeStatementExecute the statement with specified delta change collector and collection mode.- Specified by:
updatein classDataChangeStatement- Parameters:
deltaChangeCollector- target resultdeltaChangeCollectionMode- collection mode- Returns:
- the update count
-
getPlanSQL
public java.lang.StringBuilder getPlanSQL(java.lang.StringBuilder builder, int sqlFlags)Description copied from class:PreparedAppends the SQL statement with the execution plan.- Overrides:
getPlanSQLin classPrepared- Parameters:
builder- string buildersqlFlags- formatting flags- Returns:
- the execution plan
-
setSourceTableFilter
public void setSourceTableFilter(TableFilter sourceTableFilter)
-
getSourceTableFilter
public TableFilter getSourceTableFilter()
-
setOnCondition
public void setOnCondition(Expression condition)
-
getOnCondition
public Expression getOnCondition()
-
getWhen
public java.util.ArrayList<MergeUsing.When> getWhen()
-
addWhen
public void addWhen(MergeUsing.When w)
Adds WHEN command.- Parameters:
w- new WHEN command to add (update, delete or insert).
-
getTable
public Table getTable()
Description copied from class:DataChangeStatementReturn the target table.- Specified by:
getTablein classDataChangeStatement- Returns:
- the target table
-
setTargetTableFilter
public void setTargetTableFilter(TableFilter targetTableFilter)
-
getTargetTableFilter
public TableFilter getTargetTableFilter()
-
getType
public int getType()
Description copied from class:PreparedGet the command type as defined in CommandInterface
-
getStatementName
public java.lang.String getStatementName()
Description copied from class:DataChangeStatementReturn the name of this statement.- Specified by:
getStatementNamein classDataChangeStatement- Returns:
- the short name of this statement.
-
collectDependencies
public void collectDependencies(java.util.HashSet<DbObject> dependencies)
Description copied from class:PreparedFind and collect all DbObjects, this Prepared depends on.- Overrides:
collectDependenciesin classPrepared- Parameters:
dependencies- collection of dependencies to populate
-
-