public interface MergeOnStep<R extends Record>
Merge
's DSL API.
Example:
DSLContext create = DSL.using(configuration);
create.mergeInto(table)
.using(select)
.on(condition)
.whenMatchedThenUpdate()
.set(field1, value1)
.set(field2, value2)
.whenNotMatchedThenInsert(field1, field2)
.values(value1, value2)
.execute();
XYZ*Step
types directly from client code
It is usually not recommended to reference any XYZ*Step
types
directly from client code, or assign them to local variables. When writing
dynamic SQL, creating a statement's components dynamically, and passing them
to the DSL API statically is usually a better choice. See the manual's
section about dynamic SQL for details: https://www.jooq.org/doc/latest/manual/sql-building/dynamic-sql.
Drawbacks of referencing the XYZ*Step
types directly:
Modifier and Type | Method and Description |
---|---|
MergeOnConditionStep<R> |
on(Boolean condition)
Deprecated.
- 3.8.0 - [#4763] - Use
on(Condition) or
on(Field) instead. Due to ambiguity between
calling this method using Field.equals(Object)
argument, vs. calling the other method via a
Field.equal(Object) argument, this method will be
removed in the future. |
MergeOnConditionStep<R> |
on(Condition... conditions)
Provide join conditions and proceed to the next step, connecting them
with each other with
Operator.AND . |
MergeOnConditionStep<R> |
on(Condition condition)
Provide join conditions and proceed to the next step, connecting them
with each other with
Operator.AND . |
MergeOnConditionStep<R> |
on(Field<Boolean> condition)
Provide join conditions and proceed to the next step
|
MergeOnConditionStep<R> |
on(SQL sql)
Provide join conditions and proceed to the next step
NOTE: When inserting plain SQL into jOOQ objects, you must
guarantee syntax integrity.
|
MergeOnConditionStep<R> |
on(String sql)
Provide join conditions and proceed to the next step
NOTE: When inserting plain SQL into jOOQ objects, you must
guarantee syntax integrity.
|
MergeOnConditionStep<R> |
on(String sql,
Object... bindings)
Provide join conditions and proceed to the next step
NOTE: When inserting plain SQL into jOOQ objects, you must
guarantee syntax integrity.
|
MergeOnConditionStep<R> |
on(String sql,
QueryPart... parts)
Provide join conditions and proceed to the next step
NOTE: When inserting plain SQL into jOOQ objects, you must
guarantee syntax integrity.
|
@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) MergeOnConditionStep<R> on(Condition condition)
Operator.AND
.@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) MergeOnConditionStep<R> on(Condition... conditions)
Operator.AND
.@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) MergeOnConditionStep<R> on(Field<Boolean> condition)
@Deprecated @Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) MergeOnConditionStep<R> on(Boolean condition)
on(Condition)
or
on(Field)
instead. Due to ambiguity between
calling this method using Field.equals(Object)
argument, vs. calling the other method via a
Field.equal(Object)
argument, this method will be
removed in the future.@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) @PlainSQL MergeOnConditionStep<R> on(SQL sql)
NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
DSL.condition(SQL)
,
SQL
@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) @PlainSQL MergeOnConditionStep<R> on(String sql)
NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
DSL.condition(String)
,
SQL
@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) @PlainSQL MergeOnConditionStep<R> on(String sql, Object... bindings)
NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
@Support(value={CUBRID,DB2,FIREBIRD_3_0,HSQLDB,ORACLE,SQLSERVER,SYBASE,TERADATA}) @PlainSQL MergeOnConditionStep<R> on(String sql, QueryPart... parts)
NOTE: When inserting plain SQL into jOOQ objects, you must guarantee syntax integrity. You may also create the possibility of malicious SQL injection. Be sure to properly use bind variables and/or escape literals when concatenated into SQL clauses!
Copyright © 2019. All rights reserved.