- All Superinterfaces:
Attachable
,AttachableQueryPart
,AutoCloseable
,Flow.Publisher<Integer>
,Insert<R>
,InsertFinalStep<R>
,InsertReturningStep<R>
,Publisher<Integer>
,org.reactivestreams.Publisher<Integer>
,Query
,QueryPart
,RowCountQuery
,Serializable
,Statement
- All Known Subinterfaces:
InsertOnDuplicateSetMoreStep<R>
Insert
's DSL API.
Example:
DSLContext create = DSL.using(configuration);
create.insertInto(table, field1, field2)
.values(value1, value2)
.values(value3, value4)
.onConflict(field1)
.doUpdate()
.set(field2, value2)
.where(field3.eq(value5))
.execute();
Referencing 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:
- They're operating on mutable implementations (as of jOOQ 3.x)
- They're less composable and not easy to get right when dynamic SQL gets complex
- They're less readable
- They might have binary incompatible changes between minor releases
- Author:
- Lukas Eder
-
Method Summary
Modifier and TypeMethodDescription@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
where(Collection<? extends Condition> conditions)
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
Add aWHERE
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
whereExists(Select<?> select)
Add aWHERE EXISTS
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
@NotNull InsertOnConflictConditionStep<R>
whereNotExists(Select<?> select)
Add aWHERE NOT EXISTS
clause to theINSERT
statement'sON DUPLICATE KEY UPDATE
orON CONFLICT ...
Methods inherited from interface org.jooq.Attachable
attach, configuration, detach
Methods inherited from interface org.jooq.AttachableQueryPart
getBindValues, getParam, getParams, getSQL, getSQL
Methods inherited from interface org.jooq.InsertReturningStep
returning, returning, returning, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult, returningResult
Methods inherited from interface org.reactivestreams.Publisher
subscribe
Methods inherited from interface org.jooq.Query
bind, bind, cancel, close, execute, executeAsync, executeAsync, isExecutable, keepStatement, poolable, queryTimeout
-
Method Details
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@NotNull InsertOnConflictConditionStep<R> where(Condition condition)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@NotNull InsertOnConflictConditionStep<R> where(Condition... conditions)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause,
connecting them with each other using Operator.AND
.
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@NotNull InsertOnConflictConditionStep<R> where(Collection<? extends Condition> conditions)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause,
connecting them with each other using Operator.AND
.
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@NotNull InsertOnConflictConditionStep<R> where(Field<Boolean> field)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@PlainSQL
@NotNull InsertOnConflictConditionStep<R> where(SQL sql)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
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!
- See Also:
DSL.condition(SQL)
,
SQL
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@PlainSQL
@NotNull InsertOnConflictConditionStep<R> where(String sql)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
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!
- See Also:
DSL.condition(String)
,
SQL
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@PlainSQL
@NotNull InsertOnConflictConditionStep<R> where(String sql,
Object... bindings)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
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!
-
where
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,H2,MARIADB,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@PlainSQL
@NotNull InsertOnConflictConditionStep<R> where(String sql,
QueryPart... parts)
Add a WHERE
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
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!
-
whereExists
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@NotNull InsertOnConflictConditionStep<R> whereExists(Select<?> select)
Add a WHERE EXISTS
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.
-
whereNotExists
@NotNull
@CheckReturnValue
@Support({AURORA_POSTGRES,COCKROACHDB,CUBRID,DERBY,EXASOL,ORACLE,POSTGRES_9_5,SNOWFLAKE,SQLITE,SQLSERVER})
@NotNull InsertOnConflictConditionStep<R> whereNotExists(Select<?> select)
Add a WHERE NOT EXISTS
clause to the INSERT
statement's
ON DUPLICATE KEY UPDATE
or ON CONFLICT ... DO UPDATE
clause.