- All Superinterfaces:
Batch,Flow.Publisher<Integer>,Publisher<Integer>,org.reactivestreams.Publisher<Integer>,Serializable
This type is used for the
Batch's DSL API.
Use it to add bind values to a single operation in the batch statement.
- Author:
- Lukas Eder
- See Also:
-
Method Summary
Modifier and TypeMethodDescription@NotNull BatchBindStepSet indexed bind values onto the batch statement.@NotNull BatchBindStepSet several indexed bind values onto the batch statement.@NotNull BatchBindStepSet named bind values onto the batch statement.@NotNull BatchBindStepSet several named bind values onto the batch statement.Methods inherited from interface org.jooq.Batch
execute, executeAsync, executeAsync, sizeMethods inherited from interface org.reactivestreams.Publisher
subscribe
-
Method Details
-
bind
Set indexed bind values onto the batch statement.The argument array of
bindValueswill be set onto the indexed bind values of the batch statement::1->bindValues[0]:2->bindValues[1]- ...
:N->bindValues[N - 1]
"Unmatched" bind values will be left unmodified:
:N+1-> unmodified:N+2-> unmodified
Bind index order
The 1-based parameter index describes a parameter in rendering order, not in input order. For example, if a query contains aDSL.log(Field, Field)call, where the first argument is thevalueand the second argument is thebase, this may produce different dialect specific renderings:- Db2:
ln(value) / ln(base) - Oracle:
log(base, value) - SQL Server:
log(value, base)
Some bind values may even be repeated by a dialect specific emulation, leading to duplication and index-shifting.
As such, it is usually better to supply bind values directly with the input of an expression, e.g.:
- Directly with the
DSLmethod, such asDSL.log(Field, Field), for example. - With the plain SQL template constructor, e.g.
DSL.field(String, Object...) - With the parser method, e.g.
Parser.parseField(String, Object...)
-
bind
Set several indexed bind values onto the batch statement.This is the same as calling
bind(Object...)several times. -
bind
Set named bind values onto the batch statement.The argument map of
namedBindValueswill be set onto the named bind values of the batch statement::name1->bindValues.get("name1"):name2->bindValues.get("name2")- ...
:nameN->bindValues.get("nameN")
"Unmatched" bind values will be left unmodified:
:nameN+1-> unmodified:nameN+2-> unmodified
-
bind
@NotNull @CheckReturnValue @Support @NotNull BatchBindStep bind(Map<String, Object>... namedBindValues) Set several named bind values onto the batch statement.This is the same as calling
bind(Map...)several times.
-