- All Superinterfaces:
- Attachable,- AttachableQueryPart,- Flow.Publisher<Integer>,- Publisher<Integer>,- org.reactivestreams.Publisher<Integer>,- Query,- QueryPart,- RowCountQuery,- Serializable,- Statement
A procedural block.
 
 Many RDBMS support procedural languages and in those languages, blocks are an
 essential means of grouping logic and creating scope. Some databases support
 executing anonymous blocks, in case of which the jOOQ Block can
 be executed like any other Query. This works in a similar way as a
 Batch containing multiple queries, but unlike a Batch, a
 Block can contain procedural code as well.
 
Example:
 // Assuming import static org.jooq.impl.DSL.*;
 // Wrapping SQL statements only
 using(configuration)
    .begin(
        insertInto(TABLE1).columns(TABLE1.COL).values(1),
        insertInto(TABLE2).columns(TABLE2.COL).values(2),
        insertInto(TABLE3).columns(TABLE3.COL).values(3)
    )
    .execute();
 // Wrapping procedural code
 Variable<Integer> i = var("i", SQLDataType.INTEGER);
 using(configuration)
    .begin(
        for_(i).in(1, 3).loop(
            insertInto(TABLE1).columns(TABLE1.COL).values(i)
        )
    )
    .execute();
 
 Instances can be created using DSL.begin(Statement...) and overloads.
- Author:
- Lukas Eder
- 
Method SummaryModifier and TypeMethodDescription@NotNull QOM.UnmodifiableList<? extends Statement> Experimental query object model accessor method, see alsoQOM.Methods inherited from interface org.jooq.Attachableattach, configuration, detachMethods inherited from interface org.jooq.AttachableQueryPartgetBindValues, getParam, getParams, getSQL, getSQLMethods inherited from interface org.reactivestreams.PublishersubscribeMethods inherited from interface org.jooq.Querybind, bind, cancel, execute, executeAsync, executeAsync, isExecutable, keepStatement, poolable, queryTimeout
- 
Method Details- 
$statementsExperimental query object model accessor method, see alsoQOM. Subject to change in future jOOQ versions, use at your own risk.
 
-