Exploring jOOQ query types
jOOQ distinguishes between two main types of queries:
- DML (
INSERT
,UPDATE
,DELETE
, andMERGE
, among others) and DDL (CREATE
,ALTER
,DROP
,RENAME
, and similar) queries that produce a modification in the database - DQL (
SELECT
) queries that produce results
DML and DDL queries are represented in jOOQ by the org.jooq.Query
interface, while DQL queries are represented by the org.jooq.ResultQuery
interface. The ResultQuery
interface extends (among others) the Query
interface.
For instance, the following snippet of code contains two jOOQ queries:
Query query = ctx.query("DELETE FROM payment WHERE customer_number = 103"); Query query = ctx.deleteFrom(PAYMENT) .where(PAYMENT.CUSTOMER_NUMBER.eq(103L));
These queries can be executed via jOOQ and they return the number of affected rows:
int affectedRows = query.execute();
And, here are two result queries: first, a plain SQL query –...