[jOOQ/jOOQ#12052] Add DuckDB support - WIP

This commit is contained in:
Lukas Eder 2023-04-25 10:33:41 +02:00
parent 22bff38380
commit b75cec9837
72 changed files with 646 additions and 512 deletions

View File

@ -76,7 +76,7 @@ public interface CreateIndexIncludeStep extends CreateIndexWhereStep {
* If this is not supported by any given database, then the included columns will simply
* be put in the index as ordinary columns, making the index a composite index.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexWhereStep include(String... include);
@ -86,7 +86,7 @@ public interface CreateIndexIncludeStep extends CreateIndexWhereStep {
* If this is not supported by any given database, then the included columns will simply
* be put in the index as ordinary columns, making the index a composite index.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexWhereStep include(Name... include);
@ -96,7 +96,7 @@ public interface CreateIndexIncludeStep extends CreateIndexWhereStep {
* If this is not supported by any given database, then the included columns will simply
* be put in the index as ordinary columns, making the index a composite index.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexWhereStep include(Field<?>... include);
@ -106,7 +106,7 @@ public interface CreateIndexIncludeStep extends CreateIndexWhereStep {
* If this is not supported by any given database, then the included columns will simply
* be put in the index as ordinary columns, making the index a composite index.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexWhereStep include(Collection<? extends Field<?>> include);
}

View File

@ -73,42 +73,42 @@ public interface CreateIndexStep {
/**
* Add the <code>ON</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexIncludeStep on(@Stringly.Name String table, String... on);
/**
* Add the <code>ON</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexIncludeStep on(Name table, Name... on);
/**
* Add the <code>ON</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexIncludeStep on(Table<?> table, OrderField<?>... on);
/**
* Add the <code>ON</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexIncludeStep on(@Stringly.Name String table, Collection<? extends String> on);
/**
* Add the <code>ON</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexIncludeStep on(Name table, Collection<? extends Name> on);
/**
* Add the <code>ON</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexIncludeStep on(Table<?> table, Collection<? extends OrderField<?>> on);
}

View File

@ -73,28 +73,28 @@ public interface CreateIndexWhereStep extends CreateIndexFinalStep {
/**
* Add the <code>WHERE</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexFinalStep where(Field<Boolean> where);
/**
* Add the <code>WHERE</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexFinalStep where(Condition... where);
/**
* Add the <code>WHERE</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexFinalStep where(Collection<? extends Condition> where);
/**
* Add the <code>WHERE</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexFinalStep where(Condition where);
@ -103,7 +103,7 @@ public interface CreateIndexWhereStep extends CreateIndexFinalStep {
*
* @see SQL
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
@NotNull @CheckReturnValue
CreateIndexFinalStep where(@Stringly.SQL String where, QueryPart... parts);
@ -113,7 +113,7 @@ public interface CreateIndexWhereStep extends CreateIndexFinalStep {
*
* @see SQL
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
@NotNull @CheckReturnValue
CreateIndexFinalStep where(@Stringly.SQL String where, Object... bindings);
@ -123,7 +123,7 @@ public interface CreateIndexWhereStep extends CreateIndexFinalStep {
*
* @see SQL
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
@NotNull @CheckReturnValue
CreateIndexFinalStep where(@Stringly.SQL String where);
@ -133,7 +133,7 @@ public interface CreateIndexWhereStep extends CreateIndexFinalStep {
*
* @see SQL
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
@NotNull @CheckReturnValue
CreateIndexFinalStep where(SQL where);
@ -141,7 +141,7 @@ public interface CreateIndexWhereStep extends CreateIndexFinalStep {
/**
* Add the <code>EXCLUDE NULL KEYS</code> clause to the <code>CREATE INDEX</code> statement.
*/
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateIndexFinalStep excludeNullKeys();
}

View File

@ -75,14 +75,14 @@ public interface CreateSequenceFlagsStep extends CreateSequenceFinalStep {
*
* @param startWith is wrapped as {@link org.jooq.impl.DSL#val(Object)}.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep startWith(Number startWith);
/**
* Add the <code>START WITH</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep startWith(Field<? extends Number> startWith);
@ -91,14 +91,14 @@ public interface CreateSequenceFlagsStep extends CreateSequenceFinalStep {
*
* @param incrementBy is wrapped as {@link org.jooq.impl.DSL#val(Object)}.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep incrementBy(Number incrementBy);
/**
* Add the <code>INCREMENT BY</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep incrementBy(Field<? extends Number> incrementBy);
@ -107,21 +107,21 @@ public interface CreateSequenceFlagsStep extends CreateSequenceFinalStep {
*
* @param minvalue is wrapped as {@link org.jooq.impl.DSL#val(Object)}.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep minvalue(Number minvalue);
/**
* Add the <code>MINVALUE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep minvalue(Field<? extends Number> minvalue);
/**
* Add the <code>NO MINVALUE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep noMinvalue();
@ -130,35 +130,35 @@ public interface CreateSequenceFlagsStep extends CreateSequenceFinalStep {
*
* @param maxvalue is wrapped as {@link org.jooq.impl.DSL#val(Object)}.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep maxvalue(Number maxvalue);
/**
* Add the <code>MAXVALUE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep maxvalue(Field<? extends Number> maxvalue);
/**
* Add the <code>NO MAXVALUE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep noMaxvalue();
/**
* Add the <code>CYCLE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep cycle();
/**
* Add the <code>NO CYCLE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep noCycle();
@ -181,7 +181,7 @@ public interface CreateSequenceFlagsStep extends CreateSequenceFinalStep {
/**
* Add the <code>NO CACHE</code> clause to the <code>CREATE SEQUENCE</code> statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateSequenceFlagsStep noCache();
}

View File

@ -73,7 +73,7 @@ public interface CreateTableAsStep extends CreateTableOnCommitStep {
/**
* Add the <code>AS</code> clause to the <code>CREATE TABLE</code> statement.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateTableWithDataStep as(Select<?> select);
}

View File

@ -73,14 +73,14 @@ public interface CreateTableWithDataStep extends CreateTableOnCommitStep {
/**
* Add the <code>WITH DATA</code> clause to the <code>CREATE TABLE</code> statement.
*/
@Support({ CUBRID, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateTableOnCommitStep withData();
/**
* Add the <code>WITH NO DATA</code> clause to the <code>CREATE TABLE</code> statement.
*/
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
CreateTableOnCommitStep withNoData();
}

View File

@ -46,6 +46,7 @@ package org.jooq;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -101,7 +102,7 @@ public interface CreateViewAsStep<R extends Record> {
* Add an <code>AS</code> clause to the <code>CREATE VIEW</code> statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewFinalStep as(Select<? extends R> select);
/**
@ -116,7 +117,7 @@ public interface CreateViewAsStep<R extends Record> {
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@PlainSQL
CreateViewFinalStep as(SQL sql);
@ -132,7 +133,7 @@ public interface CreateViewAsStep<R extends Record> {
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@PlainSQL
CreateViewFinalStep as(String sql);
@ -148,7 +149,7 @@ public interface CreateViewAsStep<R extends Record> {
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@PlainSQL
CreateViewFinalStep as(String sql, Object... bindings);
@ -164,7 +165,7 @@ public interface CreateViewAsStep<R extends Record> {
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@PlainSQL
CreateViewFinalStep as(String sql, QueryPart... parts);
}

View File

@ -49,6 +49,7 @@ package org.jooq;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
@ -9885,7 +9886,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndex(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndex(@Stringly.Name String index);
/**
@ -9894,7 +9895,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndex(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndex(Name index);
/**
@ -9903,7 +9904,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndex(Index)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndex(Index index);
/**
@ -9912,7 +9913,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndex()
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndex();
/**
@ -9921,7 +9922,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndexIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndexIfNotExists(@Stringly.Name String index);
/**
@ -9930,7 +9931,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndexIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndexIfNotExists(Name index);
/**
@ -9939,7 +9940,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndexIfNotExists(Index)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndexIfNotExists(Index index);
/**
@ -9948,7 +9949,7 @@ public interface DSLContext extends Scope {
* @see DSL#createIndexIfNotExists()
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createIndexIfNotExists();
/**
@ -9957,7 +9958,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndex(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndex(@Stringly.Name String index);
/**
@ -9966,7 +9967,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndex(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndex(Name index);
/**
@ -9975,7 +9976,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndex(Index)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndex(Index index);
/**
@ -9984,7 +9985,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndex()
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndex();
/**
@ -9993,7 +9994,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndexIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndexIfNotExists(@Stringly.Name String index);
/**
@ -10002,7 +10003,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndexIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndexIfNotExists(Name index);
/**
@ -10011,7 +10012,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndexIfNotExists(Index)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndexIfNotExists(Index index);
/**
@ -10020,7 +10021,7 @@ public interface DSLContext extends Scope {
* @see DSL#createUniqueIndexIfNotExists()
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
CreateIndexStep createUniqueIndexIfNotExists();
@ -10100,7 +10101,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTableIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateTableElementListStep createTableIfNotExists(@Stringly.Name String table);
/**
@ -10109,7 +10110,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTableIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateTableElementListStep createTableIfNotExists(Name table);
/**
@ -10118,7 +10119,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTableIfNotExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateTableElementListStep createTableIfNotExists(Table<?> table);
/**
@ -10127,7 +10128,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTemporaryTable(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createTemporaryTable(@Stringly.Name String table);
/**
@ -10136,7 +10137,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTemporaryTable(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createTemporaryTable(Name table);
/**
@ -10145,7 +10146,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTemporaryTable(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createTemporaryTable(Table<?> table);
/**
@ -10154,7 +10155,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTemporaryTableIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createTemporaryTableIfNotExists(@Stringly.Name String table);
/**
@ -10163,7 +10164,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTemporaryTableIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createTemporaryTableIfNotExists(Name table);
/**
@ -10172,7 +10173,7 @@ public interface DSLContext extends Scope {
* @see DSL#createTemporaryTableIfNotExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createTemporaryTableIfNotExists(Table<?> table);
/**
@ -10181,7 +10182,7 @@ public interface DSLContext extends Scope {
* @see DSL#createGlobalTemporaryTable(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createGlobalTemporaryTable(@Stringly.Name String table);
/**
@ -10190,7 +10191,7 @@ public interface DSLContext extends Scope {
* @see DSL#createGlobalTemporaryTable(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createGlobalTemporaryTable(Name table);
/**
@ -10199,7 +10200,7 @@ public interface DSLContext extends Scope {
* @see DSL#createGlobalTemporaryTable(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateTableElementListStep createGlobalTemporaryTable(Table<?> table);
/**
@ -10208,7 +10209,7 @@ public interface DSLContext extends Scope {
* @see DSL#createGlobalTemporaryTableIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateTableElementListStep createGlobalTemporaryTableIfNotExists(@Stringly.Name String table);
/**
@ -10217,7 +10218,7 @@ public interface DSLContext extends Scope {
* @see DSL#createGlobalTemporaryTableIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateTableElementListStep createGlobalTemporaryTableIfNotExists(Name table);
/**
@ -10226,7 +10227,7 @@ public interface DSLContext extends Scope {
* @see DSL#createGlobalTemporaryTableIfNotExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateTableElementListStep createGlobalTemporaryTableIfNotExists(Table<?> table);
@ -10279,7 +10280,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSchema(String)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateSchemaFinalStep createSchema(@Stringly.Name String schema);
/**
@ -10288,7 +10289,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSchema(Name)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateSchemaFinalStep createSchema(Name schema);
/**
@ -10297,7 +10298,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSchema(Schema)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateSchemaFinalStep createSchema(Schema schema);
/**
@ -10306,7 +10307,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSchemaIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ H2, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateSchemaFinalStep createSchemaIfNotExists(@Stringly.Name String schema);
/**
@ -10315,7 +10316,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSchemaIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ H2, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateSchemaFinalStep createSchemaIfNotExists(Name schema);
/**
@ -10324,7 +10325,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSchemaIfNotExists(Schema)
*/
@NotNull @CheckReturnValue
@Support({ H2, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
CreateSchemaFinalStep createSchemaIfNotExists(Schema schema);
/**
@ -10333,7 +10334,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSequence(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
CreateSequenceFlagsStep createSequence(@Stringly.Name String sequence);
/**
@ -10342,7 +10343,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSequence(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
CreateSequenceFlagsStep createSequence(Name sequence);
/**
@ -10351,7 +10352,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSequence(Sequence)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
CreateSequenceFlagsStep createSequence(Sequence<?> sequence);
/**
@ -10360,7 +10361,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSequenceIfNotExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
CreateSequenceFlagsStep createSequenceIfNotExists(@Stringly.Name String sequence);
/**
@ -10369,7 +10370,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSequenceIfNotExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
CreateSequenceFlagsStep createSequenceIfNotExists(Name sequence);
/**
@ -10378,7 +10379,7 @@ public interface DSLContext extends Scope {
* @see DSL#createSequenceIfNotExists(Sequence)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
CreateSequenceFlagsStep createSequenceIfNotExists(Sequence<?> sequence);
/**
@ -10539,7 +10540,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropIndex(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
DropIndexOnStep dropIndex(@Stringly.Name String index);
/**
@ -10548,7 +10549,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropIndex(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
DropIndexOnStep dropIndex(Name index);
/**
@ -10557,7 +10558,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropIndex(Index)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
DropIndexOnStep dropIndex(Index index);
/**
@ -10566,7 +10567,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropIndexIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
DropIndexOnStep dropIndexIfExists(@Stringly.Name String index);
/**
@ -10575,7 +10576,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropIndexIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
DropIndexOnStep dropIndexIfExists(Name index);
/**
@ -10584,7 +10585,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropIndexIfExists(Index)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, POSTGRES, SQLITE, YUGABYTEDB })
DropIndexOnStep dropIndexIfExists(Index index);
@ -10637,7 +10638,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSchema(String)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropSchemaStep dropSchema(@Stringly.Name String schema);
/**
@ -10646,7 +10647,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSchema(Name)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropSchemaStep dropSchema(Name schema);
/**
@ -10655,7 +10656,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSchema(Schema)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropSchemaStep dropSchema(Schema schema);
/**
@ -10664,7 +10665,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSchemaIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropSchemaStep dropSchemaIfExists(@Stringly.Name String schema);
/**
@ -10673,7 +10674,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSchemaIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropSchemaStep dropSchemaIfExists(Name schema);
/**
@ -10682,7 +10683,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSchemaIfExists(Schema)
*/
@NotNull @CheckReturnValue
@Support({ H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropSchemaStep dropSchemaIfExists(Schema schema);
/**
@ -10691,7 +10692,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSequence(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
DropSequenceFinalStep dropSequence(@Stringly.Name String sequence);
/**
@ -10700,7 +10701,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSequence(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
DropSequenceFinalStep dropSequence(Name sequence);
/**
@ -10709,7 +10710,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSequence(Sequence)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
DropSequenceFinalStep dropSequence(Sequence<?> sequence);
/**
@ -10718,7 +10719,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSequenceIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
DropSequenceFinalStep dropSequenceIfExists(@Stringly.Name String sequence);
/**
@ -10727,7 +10728,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSequenceIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
DropSequenceFinalStep dropSequenceIfExists(Name sequence);
/**
@ -10736,7 +10737,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropSequenceIfExists(Sequence)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, POSTGRES, YUGABYTEDB })
DropSequenceFinalStep dropSequenceIfExists(Sequence<?> sequence);
/**
@ -10772,7 +10773,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTableIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
DropTableStep dropTableIfExists(@Stringly.Name String table);
/**
@ -10781,7 +10782,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTableIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
DropTableStep dropTableIfExists(Name table);
/**
@ -10790,7 +10791,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTableIfExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
DropTableStep dropTableIfExists(Table<?> table);
/**
@ -10799,7 +10800,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTemporaryTable(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropTableStep dropTemporaryTable(@Stringly.Name String table);
/**
@ -10808,7 +10809,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTemporaryTable(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropTableStep dropTemporaryTable(Name table);
/**
@ -10817,7 +10818,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTemporaryTable(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropTableStep dropTemporaryTable(Table<?> table);
/**
@ -10826,7 +10827,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTemporaryTableIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropTableStep dropTemporaryTableIfExists(@Stringly.Name String table);
/**
@ -10835,7 +10836,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTemporaryTableIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropTableStep dropTemporaryTableIfExists(Name table);
/**
@ -10844,7 +10845,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropTemporaryTableIfExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
DropTableStep dropTemporaryTableIfExists(Table<?> table);
@ -10897,7 +10898,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropView(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
DropViewFinalStep dropView(@Stringly.Name String view);
/**
@ -10906,7 +10907,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropView(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
DropViewFinalStep dropView(Name view);
/**
@ -10915,7 +10916,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropView(Table)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
DropViewFinalStep dropView(Table<?> view);
/**
@ -10924,7 +10925,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropViewIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
DropViewFinalStep dropViewIfExists(@Stringly.Name String view);
/**
@ -10933,7 +10934,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropViewIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
DropViewFinalStep dropViewIfExists(Name view);
/**
@ -10942,7 +10943,7 @@ public interface DSLContext extends Scope {
* @see DSL#dropViewIfExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
DropViewFinalStep dropViewIfExists(Table<?> view);
/**
@ -11078,7 +11079,7 @@ public interface DSLContext extends Scope {
* @see DSL#setCatalog(String)
*/
@NotNull @CheckReturnValue
@Support({ MARIADB, MYSQL })
@Support({ DUCKDB, MARIADB, MYSQL })
RowCountQuery setCatalog(@Stringly.Name String catalog);
/**
@ -11089,7 +11090,7 @@ public interface DSLContext extends Scope {
* @see DSL#setCatalog(Name)
*/
@NotNull @CheckReturnValue
@Support({ MARIADB, MYSQL })
@Support({ DUCKDB, MARIADB, MYSQL })
RowCountQuery setCatalog(Name catalog);
/**
@ -11100,7 +11101,7 @@ public interface DSLContext extends Scope {
* @see DSL#setCatalog(Catalog)
*/
@NotNull @CheckReturnValue
@Support({ MARIADB, MYSQL })
@Support({ DUCKDB, MARIADB, MYSQL })
RowCountQuery setCatalog(Catalog catalog);
/**
@ -11111,7 +11112,7 @@ public interface DSLContext extends Scope {
* @see DSL#setSchema(String)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
RowCountQuery setSchema(@Stringly.Name String schema);
/**
@ -11122,7 +11123,7 @@ public interface DSLContext extends Scope {
* @see DSL#setSchema(Name)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
RowCountQuery setSchema(Name schema);
/**
@ -11133,7 +11134,7 @@ public interface DSLContext extends Scope {
* @see DSL#setSchema(Schema)
*/
@NotNull @CheckReturnValue
@Support({ DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
RowCountQuery setSchema(Schema schema);
/**
@ -11307,7 +11308,7 @@ public interface DSLContext extends Scope {
* @see DSL#createView(String, String...)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(String view, String... fields);
/**
@ -11316,7 +11317,7 @@ public interface DSLContext extends Scope {
* @see DSL#createView(Name, Name...)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(Name view, Name... fields);
/**
@ -11325,7 +11326,7 @@ public interface DSLContext extends Scope {
* @see DSL#createView(Table, Field...)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(Table<?> view, Field<?>... fields);
/**
@ -11344,7 +11345,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(String view, Function<? super Field<?>, ? extends String> fieldNameFunction);
/**
@ -11363,7 +11364,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(String view, BiFunction<? super Field<?>, ? super Integer, ? extends String> fieldNameFunction);
/**
@ -11382,7 +11383,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(Name view, Function<? super Field<?>, ? extends Name> fieldNameFunction);
/**
@ -11401,7 +11402,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(Name view, BiFunction<? super Field<?>, ? super Integer, ? extends Name> fieldNameFunction);
/**
@ -11420,7 +11421,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(Table<?> view, Function<? super Field<?>, ? extends Field<?>> fieldNameFunction);
/**
@ -11439,7 +11440,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createView(Table<?> view, BiFunction<? super Field<?>, ? super Integer, ? extends Field<?>> fieldNameFunction);
/**
@ -11448,7 +11449,7 @@ public interface DSLContext extends Scope {
* @see DSL#createOrReplaceView(String, String...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(String view, String... fields);
/**
@ -11457,7 +11458,7 @@ public interface DSLContext extends Scope {
* @see DSL#createOrReplaceView(Name, Name...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(Name view, Name... fields);
/**
@ -11466,7 +11467,7 @@ public interface DSLContext extends Scope {
* @see DSL#createOrReplaceView(Table, Field...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(Table<?> view, Field<?>... fields);
/**
@ -11485,7 +11486,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(String view, Function<? super Field<?>, ? extends String> fieldNameFunction);
/**
@ -11504,7 +11505,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(String view, BiFunction<? super Field<?>, ? super Integer, ? extends String> fieldNameFunction);
/**
@ -11523,7 +11524,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(Name view, Function<? super Field<?>, ? extends Name> fieldNameFunction);
/**
@ -11542,7 +11543,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(Name view, BiFunction<? super Field<?>, ? super Integer, ? extends Name> fieldNameFunction);
/**
@ -11561,7 +11562,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(Table<?> view, Function<? super Field<?>, ? extends Field<?>> fieldNameFunction);
/**
@ -11580,7 +11581,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
CreateViewAsStep<Record> createOrReplaceView(Table<?> view, BiFunction<? super Field<?>, ? super Integer, ? extends Field<?>> fieldNameFunction);
/**
@ -11589,7 +11590,7 @@ public interface DSLContext extends Scope {
* @see DSL#createViewIfNotExists(String, String...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(String view, String... fields);
/**
@ -11598,7 +11599,7 @@ public interface DSLContext extends Scope {
* @see DSL#createViewIfNotExists(Name, Name...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(Name view, Name... fields);
/**
@ -11607,7 +11608,7 @@ public interface DSLContext extends Scope {
* @see DSL#createViewIfNotExists(Table, Field...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(Table<?> view, Field<?>... fields);
/**
@ -11626,7 +11627,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(String view, Function<? super Field<?>, ? extends String> fieldNameFunction);
/**
@ -11645,7 +11646,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(String view, BiFunction<? super Field<?>, ? super Integer, ? extends String> fieldNameFunction);
/**
@ -11664,7 +11665,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(Name view, Function<? super Field<?>, ? extends Name> fieldNameFunction);
/**
@ -11683,7 +11684,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(Name view, BiFunction<? super Field<?>, ? super Integer, ? extends Name> fieldNameFunction);
/**
@ -11702,7 +11703,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(Table<?> view, Function<? super Field<?>, ? extends Field<?>> fieldNameFunction);
/**
@ -11721,7 +11722,7 @@ public interface DSLContext extends Scope {
*/
@Deprecated(forRemoval = true, since = "3.14")
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
CreateViewAsStep<Record> createViewIfNotExists(Table<?> view, BiFunction<? super Field<?>, ? super Integer, ? extends Field<?>> fieldNameFunction);
/**

View File

@ -73,14 +73,14 @@ public interface DropIndexCascadeStep extends DropIndexFinalStep {
/**
* Add the <code>CASCADE</code> clause to the <code>DROP INDEX</code> statement.
*/
@Support({ POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
DropIndexFinalStep cascade();
/**
* Add the <code>RESTRICT</code> clause to the <code>DROP INDEX</code> statement.
*/
@Support({ POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
DropIndexFinalStep restrict();
}

View File

@ -78,7 +78,7 @@ public interface DropIndexOnStep extends DropIndexCascadeStep {
* the ON clause is mandatory in order to unambiguously identify an index. In all other
* databases, the ON clause will simply be ignored for compatibility reasons.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
DropIndexCascadeStep on(@Stringly.Name String on);
@ -90,7 +90,7 @@ public interface DropIndexOnStep extends DropIndexCascadeStep {
* the ON clause is mandatory in order to unambiguously identify an index. In all other
* databases, the ON clause will simply be ignored for compatibility reasons.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
DropIndexCascadeStep on(Name on);
@ -102,7 +102,7 @@ public interface DropIndexOnStep extends DropIndexCascadeStep {
* the ON clause is mandatory in order to unambiguously identify an index. In all other
* databases, the ON clause will simply be ignored for compatibility reasons.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@NotNull @CheckReturnValue
DropIndexCascadeStep on(Table<?> on);
}

View File

@ -73,14 +73,14 @@ public interface DropSchemaStep extends DropSchemaFinalStep {
/**
* Add the <code>CASCADE</code> clause to the <code>DROP SCHEMA</code> statement.
*/
@Support({ H2, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
DropSchemaFinalStep cascade();
/**
* Add the <code>RESTRICT</code> clause to the <code>DROP SCHEMA</code> statement.
*/
@Support({ DERBY, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
DropSchemaFinalStep restrict();
}

View File

@ -73,14 +73,14 @@ public interface DropTableStep extends DropTableFinalStep {
/**
* Add the <code>CASCADE</code> clause to the <code>DROP TABLE</code> statement.
*/
@Support({ H2, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
DropTableFinalStep cascade();
/**
* Add the <code>RESTRICT</code> clause to the <code>DROP TABLE</code> statement.
*/
@Support({ H2, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@NotNull @CheckReturnValue
DropTableFinalStep restrict();
}

View File

@ -666,7 +666,7 @@ extends
* The <code>EQ</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition eq(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -694,7 +694,7 @@ extends
* The <code>EQUAL</code> operator, an alias for the <code>EQ</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition equal(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -722,7 +722,7 @@ extends
* The <code>GE</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition ge(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -750,7 +750,7 @@ extends
* The <code>GREATER_OR_EQUAL</code> operator, an alias for the <code>GE</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition greaterOrEqual(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -778,7 +778,7 @@ extends
* The <code>GREATER_THAN</code> operator, an alias for the <code>GT</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition greaterThan(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -806,7 +806,7 @@ extends
* The <code>GT</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition gt(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -919,7 +919,7 @@ extends
* The <code>LE</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition le(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -947,7 +947,7 @@ extends
* The <code>LESS_OR_EQUAL</code> operator, an alias for the <code>LE</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition lessOrEqual(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -975,7 +975,7 @@ extends
* The <code>LESS_THAN</code> operator, an alias for the <code>LT</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition lessThan(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -1056,7 +1056,7 @@ extends
* The <code>LT</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition lt(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -1084,7 +1084,7 @@ extends
* The <code>NE</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition ne(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -1112,7 +1112,7 @@ extends
* The <code>NOT_EQUAL</code> operator, an alias for the <code>NE</code> operator.
*/
@NotNull
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
Condition notEqual(org.jooq.QuantifiedSelect<? extends Record1<T>> arg2);
/**
@ -1189,21 +1189,21 @@ extends
* @param pattern is wrapped as {@link #val(Object)}.
*/
@NotNull
@Support({ CUBRID, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
LikeEscapeStep notSimilarTo(@Stringly.Param String pattern);
/**
* The <code>NOT_SIMILAR_TO</code> operator.
*/
@NotNull
@Support({ CUBRID, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
LikeEscapeStep notSimilarTo(Field<String> pattern);
/**
* The <code>NOT_SIMILAR_TO</code> operator.
*/
@NotNull
@Support({ CUBRID, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
LikeEscapeStep notSimilarTo(org.jooq.QuantifiedSelect<? extends Record1<String>> pattern);
/**
@ -1212,21 +1212,21 @@ extends
* @param pattern is wrapped as {@link #val(Object)}.
*/
@NotNull
@Support({ CUBRID, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
LikeEscapeStep similarTo(@Stringly.Param String pattern);
/**
* The <code>SIMILAR_TO</code> operator.
*/
@NotNull
@Support({ CUBRID, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
LikeEscapeStep similarTo(Field<String> pattern);
/**
* The <code>SIMILAR_TO</code> operator.
*/
@NotNull
@Support({ CUBRID, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, IGNITE, POSTGRES, YUGABYTEDB })
LikeEscapeStep similarTo(org.jooq.QuantifiedSelect<? extends Record1<String>> pattern);
// -------------------------------------------------------------------------
@ -1261,7 +1261,7 @@ extends
* Create a condition to check if this field contains JSON data.
*/
@NotNull
@Support({ MARIADB, MYSQL })
@Support({ DUCKDB, MARIADB, MYSQL })
Condition isJson();
/**
@ -1270,7 +1270,7 @@ extends
* Create a condition to check if this field does not contain JSON data.
*/
@NotNull
@Support({ MARIADB, MYSQL })
@Support({ DUCKDB, MARIADB, MYSQL })
Condition isNotJson();
// -------------------------------------------------------------------------

View File

@ -42,6 +42,7 @@ package org.jooq;
// ...
import static org.jooq.SQLDialect.CUBRID;
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.H2;
// ...
@ -101,7 +102,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* {@link Operator#AND} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> and(Condition condition);
/**
@ -109,7 +110,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* {@link Operator#AND} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> and(Field<Boolean> condition);
/**
@ -125,7 +126,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> and(SQL sql);
@ -142,7 +143,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> and(String sql);
@ -160,7 +161,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> and(String sql, Object... bindings);
@ -178,7 +179,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> and(String sql, QueryPart... parts);
@ -187,7 +188,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#AND} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> andNot(Condition condition);
/**
@ -195,7 +196,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#AND} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> andNot(Field<Boolean> condition);
/**
@ -203,7 +204,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#AND} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> andExists(Select<?> select);
/**
@ -211,7 +212,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#AND} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> andNotExists(Select<?> select);
/**
@ -219,7 +220,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* {@link Operator#OR} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> or(Condition condition);
/**
@ -227,7 +228,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* {@link Operator#OR} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> or(Field<Boolean> condition);
/**
@ -243,7 +244,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> or(SQL sql);
@ -260,7 +261,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> or(String sql);
@ -278,7 +279,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> or(String sql, Object... bindings);
@ -296,7 +297,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> or(String sql, QueryPart... parts);
@ -305,7 +306,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#OR} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> orNot(Condition condition);
/**
@ -313,7 +314,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#OR} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> orNot(Field<Boolean> condition);
/**
@ -321,7 +322,7 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#OR} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> orExists(Select<?> select);
/**
@ -329,6 +330,6 @@ public interface InsertOnConflictConditionStep<R extends Record> extends InsertR
* the {@link Operator#OR} operator and proceed to the next step.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> orNotExists(Select<?> select);
}

View File

@ -45,6 +45,7 @@ import org.jetbrains.annotations.*;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -82,7 +83,7 @@ public interface InsertOnConflictDoUpdateStep<R extends Record> {
* Add the <code>DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnDuplicateSetStep<R> doUpdate();
/**

View File

@ -37,10 +37,8 @@
*/
package org.jooq;
import org.jetbrains.annotations.*;
// ...
import static org.jooq.SQLDialect.DUCKDB;
import static org.jooq.SQLDialect.POSTGRES;
import static org.jooq.SQLDialect.SQLITE;
import static org.jooq.SQLDialect.YUGABYTEDB;
@ -49,6 +47,8 @@ import java.util.Collection;
import org.jooq.impl.DSL;
import org.jetbrains.annotations.NotNull;
/**
* This type is used for the {@link Insert}'s DSL API.
* <p>
@ -92,7 +92,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* <code>INSERT</code> statement's <code>ON CONFLICT </code> clause.
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictDoUpdateStep<R> where(Condition condition);
/**
@ -101,7 +101,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* connecting them with each other using {@link Operator#AND}.
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictDoUpdateStep<R> where(Condition... conditions);
/**
@ -110,7 +110,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* connecting them with each other using {@link Operator#AND}.
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictDoUpdateStep<R> where(Collection<? extends Condition> conditions);
/**
@ -118,7 +118,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* <code>INSERT</code> statement's <code>ON CONFLICT </code> clause.
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictDoUpdateStep<R> where(Field<Boolean> field);
/**
@ -134,7 +134,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictDoUpdateStep<R> where(SQL sql);
@ -151,7 +151,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictDoUpdateStep<R> where(String sql);
@ -169,7 +169,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictDoUpdateStep<R> where(String sql, Object... bindings);
@ -187,7 +187,7 @@ public interface InsertOnConflictWhereIndexPredicateStep<R extends Record> exten
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ POSTGRES, SQLITE, YUGABYTEDB })
@Support({ DUCKDB, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictDoUpdateStep<R> where(String sql, QueryPart... parts);
}

View File

@ -37,13 +37,12 @@
*/
package org.jooq;
import org.jetbrains.annotations.*;
// ...
// ...
// ...
import static org.jooq.SQLDialect.CUBRID;
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.H2;
// ...
@ -60,6 +59,8 @@ import java.util.Collection;
import org.jooq.impl.DSL;
import org.jetbrains.annotations.NotNull;
/**
* This type is used for the {@link Insert}'s DSL API.
* <p>
@ -103,7 +104,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* <code>ON DUPLICATE KEY UPDATE</code> or <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> where(Condition condition);
/**
@ -112,7 +113,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* connecting them with each other using {@link Operator#AND}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> where(Condition... conditions);
/**
@ -121,7 +122,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* connecting them with each other using {@link Operator#AND}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> where(Collection<? extends Condition> conditions);
/**
@ -129,7 +130,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* <code>ON DUPLICATE KEY UPDATE</code> or <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> where(Field<Boolean> field);
/**
@ -145,7 +146,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> where(SQL sql);
@ -162,7 +163,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> where(String sql);
@ -180,7 +181,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> where(String sql, Object... bindings);
@ -198,7 +199,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* @see SQL
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@PlainSQL
InsertOnConflictConditionStep<R> where(String sql, QueryPart... parts);
@ -207,7 +208,7 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* <code>ON DUPLICATE KEY UPDATE</code> or <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> whereExists(Select<?> select);
/**
@ -215,6 +216,6 @@ public interface InsertOnConflictWhereStep<R extends Record> extends InsertRetur
* <code>ON DUPLICATE KEY UPDATE</code> or <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnConflictConditionStep<R> whereNotExists(Select<?> select);
}

View File

@ -43,6 +43,7 @@ package org.jooq;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -110,7 +111,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
<T> InsertOnDuplicateSetMoreStep<R> set(Field<T> field, T value);
/**
@ -119,7 +120,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
<T> InsertOnDuplicateSetMoreStep<R> set(Field<T> field, Field<T> value);
/**
@ -128,7 +129,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* <code>ON CONFLICT DO UPDATE</code> clause.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
<T> InsertOnDuplicateSetMoreStep<R> set(Field<T> field, Select<? extends Record1<T>> value);
/**
@ -141,7 +142,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* <code>(T)</code>.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
<T> InsertOnDuplicateSetMoreStep<R> setNull(Field<T> field);
/**
@ -157,7 +158,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* corresponding field's type.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnDuplicateSetMoreStep<R> set(Map<?, ?> map);
/**
@ -171,7 +172,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* @see #set(Map)
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnDuplicateSetMoreStep<R> set(Record record);
/**
@ -179,7 +180,7 @@ public interface InsertOnDuplicateSetStep<R extends Record> {
* {@link DSL#excluded(Field)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnDuplicateSetMoreStep<R> setAllToExcluded();
}

View File

@ -43,6 +43,7 @@ package org.jooq;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -106,14 +107,14 @@ public interface InsertOnDuplicateStep<R extends Record> extends InsertReturning
* Add a <code>ON CONFLICT ON CONSTRAINT</code> clause to this INSERT statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
InsertOnConflictDoUpdateStep<R> onConflictOnConstraint(Constraint constraint);
/**
* Add a <code>ON CONFLICT ON CONSTRAINT</code> clause to this INSERT statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
InsertOnConflictDoUpdateStep<R> onConflictOnConstraint(Name constraint);
/**
@ -177,7 +178,7 @@ public interface InsertOnDuplicateStep<R extends Record> extends InsertReturning
* H2 supports this clause in MySQL mode.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnDuplicateSetStep<R> onDuplicateKeyUpdate();
/**

View File

@ -45,6 +45,7 @@ package org.jooq;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
@ -143,7 +144,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* <code>ON CONFLICT ON CONSTRAINT</code> clause in this <code>INSERT</code>
* statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
void onConflictOnConstraint(Name constraint);
/**
@ -151,7 +152,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* <code>ON CONFLICT ON CONSTRAINT</code> clause in this <code>INSERT</code>
* statement.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
void onConflictOnConstraint(Constraint constraint);
/**
@ -175,7 +176,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
*
* @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void onDuplicateKeyUpdate(boolean flag);
/**
@ -233,7 +234,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
*
* @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
<T> void addValueForUpdate(Field<T> field, T value);
/**
@ -242,7 +243,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
*
* @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
<T> void addValueForUpdate(Field<T> field, Field<T> value);
/**
@ -255,7 +256,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
*
* @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addValuesForUpdate(Map<?, ?> map);
/**
@ -279,7 +280,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* @param condition The condition
*/
@Override
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addConditions(Condition condition);
/**
@ -292,7 +293,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* @param conditions The condition
*/
@Override
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addConditions(Condition... conditions);
/**
@ -305,7 +306,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* @param conditions The condition
*/
@Override
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addConditions(Collection<? extends Condition> conditions);
/**
@ -318,7 +319,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* @param condition The condition
*/
@Override
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addConditions(Operator operator, Condition condition);
/**
@ -331,7 +332,7 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* @param conditions The condition
*/
@Override
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addConditions(Operator operator, Condition... conditions);
/**
@ -344,13 +345,13 @@ public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R>,
* @param conditions The condition
*/
@Override
@Support({ CUBRID, DERBY, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void addConditions(Operator operator, Collection<? extends Condition> conditions);
/**
* Set an empty record with the <code>DEFAULT VALUES</code> clause.
*/
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
void setDefaultValues();
/**

View File

@ -47,6 +47,7 @@ import org.jetbrains.annotations.*;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -364,7 +365,7 @@ public interface InsertSetStep<R extends Record> {
* Add an empty record with default values.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, YUGABYTEDB })
InsertOnDuplicateStep<R> defaultValues();
/**

View File

@ -42,6 +42,7 @@ package org.jooq;
// ...
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
@ -57,6 +58,7 @@ import static org.jooq.SQLDialect.MYSQL;
import static org.jooq.SQLDialect.POSTGRES;
// ...
// ...
// ...
import static org.jooq.SQLDialect.SQLITE;
// ...
// ...
@ -242,7 +244,7 @@ public interface Name extends QueryPart, Comparable<Name> {
* @see #as(WindowSpecification)
*/
@NotNull
@Support({ CUBRID, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
WindowDefinition as();
/**
@ -257,7 +259,7 @@ public interface Name extends QueryPart, Comparable<Name> {
* </ul>
*/
@NotNull
@Support({ CUBRID, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
WindowDefinition as(WindowSpecification window);
/**

View File

@ -48,6 +48,7 @@ import java.util.regex.Pattern;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.ApiStatus.Experimental;
/**
* Dialects and dialect families as supported by jOOQ.
@ -112,7 +113,13 @@ public enum SQLDialect {
/**
* The DuckDB dialect family.
* <p>
* jOOQ integration tests have found that this RDBMS is in a beta state. We
* do not run the complete integration test suite against it, nor do we
* regression test, currently, until significant issues are resolved in both
* the RDBMS and the JDBC driver.
*/
@Experimental
DUCKDB("DuckDB", false, true),
/**

View File

@ -45,6 +45,7 @@ import static java.lang.Boolean.FALSE;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
@ -114,7 +115,6 @@ import static org.jooq.util.sqlite.SQLiteDSL.rowid;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
@ -165,12 +165,10 @@ import org.jooq.conf.ExecuteWithoutWhere;
import org.jooq.conf.RenderNameCase;
import org.jooq.conf.SettingsTools;
import org.jooq.exception.DataAccessException;
import org.jooq.impl.DefaultUnwrapperProvider.DefaultUnwrapper;
import org.jooq.impl.QOM.ResultOption;
import org.jooq.impl.Tools.BooleanDataKey;
import org.jooq.impl.Tools.SimpleDataKey;
import org.jooq.tools.JooqLogger;
import org.jooq.tools.jdbc.BatchedPreparedStatement;
import org.jooq.tools.jdbc.JDBCUtils;
@ -181,7 +179,7 @@ abstract class AbstractDMLQuery<R extends Record> extends AbstractRowCountQuery
private static final JooqLogger log = JooqLogger.getLogger(AbstractQuery.class);
private static final Set<SQLDialect> NO_SUPPORT_INSERT_ALIASED_TABLE = SQLDialect.supportedBy(DERBY, FIREBIRD, H2, MARIADB, MYSQL, TRINO);
private static final Set<SQLDialect> NO_SUPPORT_INSERT_ALIASED_TABLE = SQLDialect.supportedBy(DERBY, DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, TRINO);
private static final Set<SQLDialect> NO_NATIVE_SUPPORT_INSERT_RETURNING = SQLDialect.supportedUntil(CUBRID, DERBY, H2, HSQLDB, IGNITE, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> NO_NATIVE_SUPPORT_UPDATE_RETURNING = SQLDialect.supportedUntil(CUBRID, DERBY, H2, HSQLDB, IGNITE, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> NO_NATIVE_SUPPORT_DELETE_RETURNING = SQLDialect.supportedUntil(CUBRID, DERBY, H2, HSQLDB, IGNITE, MYSQL, SQLITE, TRINO);

View File

@ -241,7 +241,8 @@ implements
case DUCKDB:
break;
default:
acceptNullTreatmentStandard(ctx);
@ -252,9 +253,8 @@ implements
final void acceptNullTreatmentStandard(Context<?> ctx) {
switch (ctx.family()) {
case DUCKDB:
break;
default:
if (nullTreatment == NullTreatment.IGNORE_NULLS)

View File

@ -50,6 +50,7 @@ import static org.jooq.Clause.CONDITION_NOT_BETWEEN_SYMMETRIC;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
// ...
@ -102,7 +103,7 @@ final class BetweenCondition<T> extends AbstractCondition implements BetweenAndS
private static final Clause[] CLAUSES_BETWEEN_SYMMETRIC = { CONDITION, CONDITION_BETWEEN_SYMMETRIC };
private static final Clause[] CLAUSES_NOT_BETWEEN = { CONDITION, CONDITION_NOT_BETWEEN };
private static final Clause[] CLAUSES_NOT_BETWEEN_SYMMETRIC = { CONDITION, CONDITION_NOT_BETWEEN_SYMMETRIC };
private static final Set<SQLDialect> NO_SUPPORT_SYMMETRIC = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, H2, IGNITE, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> NO_SUPPORT_SYMMETRIC = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, H2, IGNITE, MARIADB, MYSQL, SQLITE, TRINO);
private final boolean symmetric;
private final boolean not;

View File

@ -103,6 +103,10 @@ implements
case DUCKDB:
ctx.visit(function(N_ARRAY_LENGTH, getDataType(), array));
break;
default:
ctx.visit(function(N_CARDINALITY, getDataType(), array));
break;

View File

@ -119,6 +119,7 @@ implements
case DERBY:
case DUCKDB:
case SQLITE:
case TRINO:
ctx.visit(function(N_LENGTH, getDataType(), string));

View File

@ -98,6 +98,7 @@ final class Choose<T> extends AbstractField<T> implements QOM.Choose<T> {
case CUBRID:
case DERBY:
case DUCKDB:
case FIREBIRD:
case H2:
case HSQLDB:

View File

@ -88,6 +88,23 @@ implements
// XXX: QueryPart API
// -------------------------------------------------------------------------
@Override
final boolean parenthesised(Context<?> ctx) {
switch (ctx.family()) {
case POSTGRES:
case YUGABYTEDB:
return false;
case DUCKDB:
return true;
default:
return false;
}
}
@Override
public final void accept(Context<?> ctx) {
switch (ctx.family()) {
@ -112,6 +129,10 @@ implements
break;
}
case DUCKDB:
ctx.visit(function(N_CONTAINS, BOOLEAN, value, content));
break;
default:
acceptDefault(ctx);
break;

View File

@ -97,6 +97,10 @@ implements
case DUCKDB:
ctx.visit(value.lower().contains(content.lower()));
break;
default:
ctx.visit(value.likeIgnoreCase(DSL.concat(inline("%"), Tools.escapeForLike(content, ctx.configuration()), inline("%")), Tools.ESCAPE));
break;

View File

@ -115,6 +115,7 @@ implements
case CUBRID:
case DERBY:
case DUCKDB:
case FIREBIRD:
case H2:
case HSQLDB:
@ -163,6 +164,7 @@ implements
case CUBRID:
case DERBY:
case DUCKDB:
case FIREBIRD:
case H2:
case HSQLDB:

View File

@ -343,14 +343,14 @@ implements
static final Set<SQLDialect> NO_SUPPORT_IF_NOT_EXISTS = SQLDialect.supportedUntil(DERBY, FIREBIRD);
static final Set<SQLDialect> NO_SUPPORT_WITH_DATA = SQLDialect.supportedBy(H2, MARIADB, MYSQL, SQLITE);
static final Set<SQLDialect> NO_SUPPORT_WITH_DATA = SQLDialect.supportedBy(DUCKDB, H2, MARIADB, MYSQL, SQLITE);
static final Set<SQLDialect> NO_SUPPORT_CTAS_COLUMN_NAMES = SQLDialect.supportedBy(H2);
static final Set<SQLDialect> EMULATE_INDEXES_IN_BLOCK = SQLDialect.supportedBy(FIREBIRD, POSTGRES, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_SOME_ENUM_TYPES_AS_CHECK = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_STORED_ENUM_TYPES_AS_CHECK = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, HSQLDB, SQLITE);
static final Set<SQLDialect> REQUIRES_WITH_DATA = SQLDialect.supportedBy(HSQLDB);
static final Set<SQLDialect> WRAP_SELECT_IN_PARENS = SQLDialect.supportedBy(HSQLDB);
static final Set<SQLDialect> SUPPORT_TEMPORARY = SQLDialect.supportedBy(MARIADB, MYSQL, POSTGRES, YUGABYTEDB);
static final Set<SQLDialect> SUPPORT_TEMPORARY = SQLDialect.supportedBy(DUCKDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_TABLE_COMMENT_IN_BLOCK = SQLDialect.supportedBy(FIREBIRD, POSTGRES, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_COLUMN_COMMENT_IN_BLOCK = SQLDialect.supportedBy(FIREBIRD, POSTGRES, YUGABYTEDB);
static final Set<SQLDialect> REQUIRE_EXECUTE_IMMEDIATE = SQLDialect.supportedBy(FIREBIRD);

File diff suppressed because it is too large Load Diff

View File

@ -45,6 +45,7 @@ package org.jooq.impl;
// ...
import static org.jooq.SQLDialect.CUBRID;
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
import static org.jooq.SQLDialect.FIREBIRD;
// ...
import static org.jooq.SQLDialect.HSQLDB;
@ -90,7 +91,7 @@ implements
QOM.Decode<V, T>
{
private static final Set<SQLDialect> EMULATE_DECODE_ORACLE = SQLDialect.supportedBy(MARIADB);
private static final Set<SQLDialect> EMULATE_DISTINCT = SQLDialect.supportedUntil(CUBRID, DERBY, FIREBIRD, HSQLDB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
private static final Set<SQLDialect> EMULATE_DISTINCT = SQLDialect.supportedUntil(CUBRID, DERBY, DUCKDB, FIREBIRD, HSQLDB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);

View File

@ -51,6 +51,7 @@ import static org.jooq.Clause.DELETE_WHERE;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -106,7 +107,6 @@ import org.jooq.Record;
// ...
import org.jooq.SQLDialect;
import org.jooq.Scope;
import org.jooq.SelectFieldOrAsterisk;
import org.jooq.SortField;
import org.jooq.Table;
import org.jooq.TableLike;
@ -130,7 +130,7 @@ implements
private static final Set<SQLDialect> SPECIAL_DELETE_AS_SYNTAX = SQLDialect.supportedBy(MARIADB, MYSQL);
// LIMIT is not supported at all
private static final Set<SQLDialect> NO_SUPPORT_LIMIT = SQLDialect.supportedUntil(CUBRID, DERBY, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB);
private static final Set<SQLDialect> NO_SUPPORT_LIMIT = SQLDialect.supportedUntil(CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB);
// LIMIT is supported but not ORDER BY
private static final Set<SQLDialect> NO_SUPPORT_ORDER_BY_LIMIT = SQLDialect.supportedBy(IGNITE);

View File

@ -91,7 +91,7 @@ implements
private static final Set<SQLDialect> NO_SUPPORT_DIGITS = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
private static final Set<SQLDialect> NO_SUPPORT_DIGITS = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
@Override
public final void accept(Context<?> ctx) {

View File

@ -88,6 +88,17 @@ implements
// XXX: QueryPart API
// -------------------------------------------------------------------------
@Override
final boolean parenthesised(Context<?> ctx) {
switch (ctx.family()) {
case DUCKDB:
return true;
default:
return false;
}
}
@Override
public final void accept(Context<?> ctx) {
switch (ctx.family()) {
@ -97,6 +108,10 @@ implements
case DUCKDB:
ctx.visit(function(N_SUFFIX, BOOLEAN, string, suffix));
break;
default:
ctx.visit(string.like(DSL.concat(inline("%"), Tools.escapeForLike(suffix, ctx.configuration())), Tools.ESCAPE));
break;

View File

@ -97,6 +97,10 @@ implements
case DUCKDB:
ctx.visit(string.lower().endsWith(suffix.lower()));
break;
default:
ctx.visit(string.likeIgnoreCase(DSL.concat(inline("%"), Tools.escapeForLike(suffix, ctx.configuration())), Tools.ESCAPE));
break;

View File

@ -133,7 +133,7 @@ extends
static final Set<SQLDialect> NO_SUPPORT_RVE_SET = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, IGNITE, MARIADB, MYSQL, SQLITE);
static final Set<SQLDialect> NO_SUPPORT_RVE_SET = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, IGNITE, MARIADB, MYSQL, SQLITE);
static final Set<SQLDialect> NO_SUPPORT_RVE_SET_IN_MERGE = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, IGNITE, MARIADB, MYSQL, SQLITE);
static final Set<SQLDialect> REQUIRE_RVE_ROW_CLAUSE = SQLDialect.supportedBy(POSTGRES, YUGABYTEDB);

View File

@ -43,6 +43,7 @@ package org.jooq.impl;
// ...
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -78,8 +79,8 @@ import org.jooq.UniqueKey;
*/
final class GroupFieldList extends QueryPartList<GroupField> {
static final Set<SQLDialect> NO_SUPPORT_GROUP_BY_TABLE = SQLDialect.supportedBy(DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
static final Set<SQLDialect> NO_SUPPORT_GROUP_FUNCTIONAL_DEP = SQLDialect.supportedBy(DERBY, FIREBIRD, TRINO);
static final Set<SQLDialect> NO_SUPPORT_GROUP_BY_TABLE = SQLDialect.supportedBy(DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
static final Set<SQLDialect> NO_SUPPORT_GROUP_FUNCTIONAL_DEP = SQLDialect.supportedBy(DERBY, DUCKDB, FIREBIRD, TRINO);
GroupFieldList() {
super();

View File

@ -371,6 +371,7 @@ implements
switch (ctx.family()) {
case DUCKDB:
case POSTGRES:
case SQLITE:
case YUGABYTEDB: {
@ -549,6 +550,7 @@ implements
case DUCKDB:
case POSTGRES:
case SQLITE:
case YUGABYTEDB: {

View File

@ -88,6 +88,7 @@ implements
@Override
final boolean parenthesised(Context<?> ctx) {
switch (ctx.family()) {
case DUCKDB:
case MARIADB:
case MYSQL:
return true;
@ -115,6 +116,7 @@ implements
case DUCKDB:
case MARIADB:
case MYSQL:
ctx.visit(function(N_JSON_VALID, BOOLEAN, field));

View File

@ -94,6 +94,7 @@ implements
case DUCKDB:
case MARIADB:
case MYSQL:
ctx.visit(condition(function(N_JSON_VALID, BOOLEAN, field)).not());

View File

@ -295,6 +295,14 @@ final class Limit extends AbstractQueryPart implements UTransient {
case DUCKDB: {
// It appears that bind values in OFFSET can be trouble, see
// https://github.com/duckdb/duckdb/issues/7212
ctx.paramType(INLINED, c -> acceptDefault(c, castMode));
break;
}
default: {
acceptDefault(ctx, castMode);
break;

View File

@ -35,6 +35,7 @@ final class MetaSQL {
static {
M_UNIQUE_KEYS.put(DUCKDB, "select duckdb_constraints.database_name, duckdb_constraints.schema_name, duckdb_constraints.table_name, ((((((duckdb_constraints.database_name || '__') || duckdb_constraints.schema_name) || '__') || duckdb_constraints.table_name) || '__') || duckdb_constraints.constraint_text) constraint_text, unnest(duckdb_constraints.constraint_column_names) constraint_column_names, unnest(duckdb_constraints.constraint_column_indexes) constraint_column_indexes from duckdb_constraints() where (duckdb_constraints.constraint_type = 'UNIQUE' and duckdb_constraints.schema_name in (cast(? as varchar)))");
M_UNIQUE_KEYS.put(FIREBIRD, "select null catalog, null schema, trim(RDB$RELATION_CONSTRAINTS.RDB$RELATION_NAME) RDB$RELATION_NAME, trim(RDB$RELATION_CONSTRAINTS.RDB$CONSTRAINT_NAME) RDB$CONSTRAINT_NAME, trim(RDB$INDEX_SEGMENTS.RDB$FIELD_NAME) RDB$FIELD_NAME, RDB$INDEX_SEGMENTS.RDB$FIELD_POSITION from RDB$RELATION_CONSTRAINTS join RDB$INDEX_SEGMENTS on RDB$INDEX_SEGMENTS.RDB$INDEX_NAME = RDB$RELATION_CONSTRAINTS.RDB$INDEX_NAME where RDB$RELATION_CONSTRAINTS.RDB$CONSTRAINT_TYPE = 'UNIQUE' order by RDB$RELATION_CONSTRAINTS.RDB$CONSTRAINT_NAME asc, RDB$INDEX_SEGMENTS.RDB$FIELD_POSITION asc");
M_UNIQUE_KEYS.put(H2, "select INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_CATALOG, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_SCHEMA, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_NAME, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_NAME, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.COLUMN_NAME, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.ORDINAL_POSITION from (INFORMATION_SCHEMA.KEY_COLUMN_USAGE left outer join INFORMATION_SCHEMA.TABLE_CONSTRAINTS alias_10316587 on (INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_CATALOG = alias_10316587.CONSTRAINT_CATALOG and INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA = alias_10316587.CONSTRAINT_SCHEMA and INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_NAME = alias_10316587.CONSTRAINT_NAME)) where (alias_10316587.CONSTRAINT_TYPE in ('UNIQUE') and alias_10316587.TABLE_SCHEMA in (cast(? as varchar(128)))) order by INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_SCHEMA asc, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_NAME asc, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_NAME asc, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.ORDINAL_POSITION asc");
M_UNIQUE_KEYS.put(HSQLDB, "select INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_CATALOG, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_SCHEMA, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_NAME, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_NAME, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.COLUMN_NAME, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.ORDINAL_POSITION from (INFORMATION_SCHEMA.KEY_COLUMN_USAGE left outer join INFORMATION_SCHEMA.TABLE_CONSTRAINTS as alias_10316587 on (INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_CATALOG = alias_10316587.CONSTRAINT_CATALOG and INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA = alias_10316587.CONSTRAINT_SCHEMA and INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_NAME = alias_10316587.CONSTRAINT_NAME)) where (alias_10316587.CONSTRAINT_TYPE = 'UNIQUE' and alias_10316587.TABLE_SCHEMA in (cast(? as varchar(128)))) order by INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_SCHEMA asc, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.TABLE_NAME asc, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.CONSTRAINT_NAME asc, INFORMATION_SCHEMA.KEY_COLUMN_USAGE.ORDINAL_POSITION asc");
@ -107,6 +108,7 @@ final class MetaSQL {
M_SEQUENCES.put(DERBY, "select cast(null as varchar(32672)) as catalog, alias_8805161.SCHEMANAME, SYS.SYSSEQUENCES.SEQUENCENAME, SYS.SYSSEQUENCES.SEQUENCEDATATYPE, cast(null as int) as numeric_precision, cast(null as int) as numeric_scale, nullif(SYS.SYSSEQUENCES.STARTVALUE, 1) as STARTVALUE, nullif(SYS.SYSSEQUENCES.INCREMENT, 1) as INCREMENT, nullif(SYS.SYSSEQUENCES.MINIMUMVALUE, case when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'SMALLINT' then -32768 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'INTEGER' then -2147483648 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'BIGINT' then -9223372036854775808 end) as MINIMUMVALUE, nullif(SYS.SYSSEQUENCES.MAXIMUMVALUE, case when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'SMALLINT' then 32767 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'INTEGER' then 2147483647 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'BIGINT' then 9223372036854775807 end) as MAXIMUMVALUE, (SYS.SYSSEQUENCES.CYCLEOPTION = 'Y') as CYCLEOPTION, cast(null as bigint) as cache from (SYS.SYSSEQUENCES join SYS.SYSSCHEMAS as alias_8805161 on SYS.SYSSEQUENCES.SCHEMAID = alias_8805161.SCHEMAID) where cast(alias_8805161.SCHEMANAME as varchar(32672)) in (cast(? as varchar(32672))) order by alias_8805161.SCHEMANAME, SYS.SYSSEQUENCES.SEQUENCENAME");
M_SEQUENCES.put(DUCKDB, "select database_name, schema_name, sequence_name, 'bigint' as data_type, 0 as precision, 0 as scale, start_value, increment_by, min_value, max_value, cycle, 0 as cache from duckdb_sequences() where sequence_name in (cast(? as varchar)) ");
M_SEQUENCES.put(FIREBIRD, "select null catalog, null schema, trim(RDB$GENERATORS.RDB$GENERATOR_NAME) RDB$GENERATOR_NAME, 'BIGINT' type_name, null numeric_precision, null numeric_scale, nullif(RDB$GENERATORS.RDB$INITIAL_VALUE, 0) RDB$INITIAL_VALUE, nullif(RDB$GENERATORS.RDB$GENERATOR_INCREMENT, 1) RDB$GENERATOR_INCREMENT, null min_value, null max_value, null cycle, null cache from RDB$GENERATORS where RDB$GENERATORS.RDB$GENERATOR_NAME not in (select RDB$RELATION_FIELDS.RDB$GENERATOR_NAME from RDB$RELATION_FIELDS where (RDB$RELATION_FIELDS.RDB$GENERATOR_NAME is not null and RDB$RELATION_FIELDS.RDB$IDENTITY_TYPE = 1)) order by RDB$GENERATORS.RDB$GENERATOR_NAME");
M_SEQUENCES.put(H2, "select null catalog, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME, 'BIGINT' type_name, null precision, null scale, null start_value, nullif(INFORMATION_SCHEMA.SEQUENCES.INCREMENT, 1) INCREMENT, nullif(SEQUENCES.MINIMUM_VALUE, 1) MIN_VALUE, nullif(SEQUENCES.MAXIMUM_VALUE, 9223372036854775807) MAX_VALUE, (SEQUENCES.CYCLE_OPTION = 'YES') IS_CYCLE, nullif(INFORMATION_SCHEMA.SEQUENCES.CACHE, 32) CACHE from INFORMATION_SCHEMA.SEQUENCES where (INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA in (cast(? as varchar)) and upper(INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME) not like 'SYSTEM!_SEQUENCE!_%' escape '!') order by INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME");
M_SEQUENCES.put(HSQLDB, "select null as catalog, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME, INFORMATION_SCHEMA.SEQUENCES.DATA_TYPE, INFORMATION_SCHEMA.SEQUENCES.NUMERIC_PRECISION, INFORMATION_SCHEMA.SEQUENCES.NUMERIC_SCALE, INFORMATION_SCHEMA.SEQUENCES.START_WITH, INFORMATION_SCHEMA.SEQUENCES.INCREMENT, INFORMATION_SCHEMA.SEQUENCES.MINIMUM_VALUE, INFORMATION_SCHEMA.SEQUENCES.MAXIMUM_VALUE, case when INFORMATION_SCHEMA.SEQUENCES.CYCLE_OPTION is not distinct from 'YES' then true else false end as CYCLE_OPTION, null as cache from INFORMATION_SCHEMA.SEQUENCES where INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA in (cast(? as varchar(128))) order by INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME");
@ -158,6 +160,7 @@ final class MetaSQL {
M_SEQUENCES_INCLUDING_SYSTEM_SEQUENCES.put(DERBY, "select cast(null as varchar(32672)) as catalog, alias_8805161.SCHEMANAME, SYS.SYSSEQUENCES.SEQUENCENAME, SYS.SYSSEQUENCES.SEQUENCEDATATYPE, cast(null as int) as numeric_precision, cast(null as int) as numeric_scale, nullif(SYS.SYSSEQUENCES.STARTVALUE, 1) as STARTVALUE, nullif(SYS.SYSSEQUENCES.INCREMENT, 1) as INCREMENT, nullif(SYS.SYSSEQUENCES.MINIMUMVALUE, case when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'SMALLINT' then -32768 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'INTEGER' then -2147483648 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'BIGINT' then -9223372036854775808 end) as MINIMUMVALUE, nullif(SYS.SYSSEQUENCES.MAXIMUMVALUE, case when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'SMALLINT' then 32767 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'INTEGER' then 2147483647 when cast(SYS.SYSSEQUENCES.SEQUENCEDATATYPE as varchar(32672)) = 'BIGINT' then 9223372036854775807 end) as MAXIMUMVALUE, (SYS.SYSSEQUENCES.CYCLEOPTION = 'Y') as CYCLEOPTION, cast(null as bigint) as cache from (SYS.SYSSEQUENCES join SYS.SYSSCHEMAS as alias_8805161 on SYS.SYSSEQUENCES.SCHEMAID = alias_8805161.SCHEMAID) where cast(alias_8805161.SCHEMANAME as varchar(32672)) in (cast(? as varchar(32672))) order by alias_8805161.SCHEMANAME, SYS.SYSSEQUENCES.SEQUENCENAME");
M_SEQUENCES_INCLUDING_SYSTEM_SEQUENCES.put(DUCKDB, "select database_name, schema_name, sequence_name, 'bigint' as data_type, 0 as precision, 0 as scale, start_value, increment_by, min_value, max_value, cycle, 0 as cache from duckdb_sequences() where sequence_name in (cast(? as varchar)) ");
M_SEQUENCES_INCLUDING_SYSTEM_SEQUENCES.put(FIREBIRD, "select null catalog, null schema, trim(RDB$GENERATORS.RDB$GENERATOR_NAME) RDB$GENERATOR_NAME, 'BIGINT' type_name, null numeric_precision, null numeric_scale, nullif(RDB$GENERATORS.RDB$INITIAL_VALUE, 0) RDB$INITIAL_VALUE, nullif(RDB$GENERATORS.RDB$GENERATOR_INCREMENT, 1) RDB$GENERATOR_INCREMENT, null min_value, null max_value, null cycle, null cache from RDB$GENERATORS order by RDB$GENERATORS.RDB$GENERATOR_NAME");
M_SEQUENCES_INCLUDING_SYSTEM_SEQUENCES.put(H2, "select null catalog, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME, 'BIGINT' type_name, null precision, null scale, null start_value, nullif(INFORMATION_SCHEMA.SEQUENCES.INCREMENT, 1) INCREMENT, nullif(SEQUENCES.MINIMUM_VALUE, 1) MIN_VALUE, nullif(SEQUENCES.MAXIMUM_VALUE, 9223372036854775807) MAX_VALUE, (SEQUENCES.CYCLE_OPTION = 'YES') IS_CYCLE, nullif(INFORMATION_SCHEMA.SEQUENCES.CACHE, 32) CACHE from INFORMATION_SCHEMA.SEQUENCES where INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA in (cast(? as varchar)) order by INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME");
M_SEQUENCES_INCLUDING_SYSTEM_SEQUENCES.put(HSQLDB, "select null as catalog, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME, INFORMATION_SCHEMA.SEQUENCES.DATA_TYPE, INFORMATION_SCHEMA.SEQUENCES.NUMERIC_PRECISION, INFORMATION_SCHEMA.SEQUENCES.NUMERIC_SCALE, INFORMATION_SCHEMA.SEQUENCES.START_WITH, INFORMATION_SCHEMA.SEQUENCES.INCREMENT, INFORMATION_SCHEMA.SEQUENCES.MINIMUM_VALUE, INFORMATION_SCHEMA.SEQUENCES.MAXIMUM_VALUE, case when INFORMATION_SCHEMA.SEQUENCES.CYCLE_OPTION is not distinct from 'YES' then true else false end as CYCLE_OPTION, null as cache from INFORMATION_SCHEMA.SEQUENCES where INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA in (cast(? as varchar(128))) order by INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_SCHEMA, INFORMATION_SCHEMA.SEQUENCES.SEQUENCE_NAME");
@ -209,6 +212,7 @@ final class MetaSQL {
M_SOURCES.put(DERBY, "select cast(null as varchar(32672)) as catalog, alias_57844683.SCHEMANAME, SYS.SYSTABLES.TABLENAME, SYS.SYSVIEWS.VIEWDEFINITION from (SYS.SYSTABLES join SYS.SYSSCHEMAS as alias_57844683 on SYS.SYSTABLES.SCHEMAID = alias_57844683.SCHEMAID) left outer join SYS.SYSVIEWS on SYS.SYSTABLES.TABLEID = SYS.SYSVIEWS.TABLEID where cast(alias_57844683.SCHEMANAME as varchar(32672)) in (cast(? as varchar(32672))) order by alias_57844683.SCHEMANAME, SYS.SYSTABLES.TABLENAME");
M_SOURCES.put(DUCKDB, "select duckdb_views.database_name, duckdb_views.schema_name, duckdb_views.view_name, duckdb_views.sql from duckdb_views() where duckdb_views.schema_name in (cast(? as varchar))");
M_SOURCES.put(FIREBIRD, "select null catalog, null schema, trim(RDB$RELATIONS.RDB$RELATION_NAME), case when lower(RDB$RELATIONS.RDB$VIEW_SOURCE) like 'create%' then trim(RDB$RELATIONS.RDB$VIEW_SOURCE) else ((('create view \"' || trim(RDB$RELATIONS.RDB$RELATION_NAME)) || '\" as ') || RDB$RELATIONS.RDB$VIEW_SOURCE) end view_source from RDB$RELATIONS order by trim(RDB$RELATIONS.RDB$RELATION_NAME)");
M_SOURCES.put(H2, "select INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG, INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA, INFORMATION_SCHEMA.VIEWS.TABLE_NAME, ((('create view \"' || INFORMATION_SCHEMA.VIEWS.TABLE_NAME) || '\" as ') || INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION) VIEW_DEFINITION from INFORMATION_SCHEMA.VIEWS where INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA in (cast(? as varchar)) order by INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA, INFORMATION_SCHEMA.VIEWS.TABLE_NAME");
M_SOURCES.put(HSQLDB, "select INFORMATION_SCHEMA.VIEWS.TABLE_CATALOG, INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA, INFORMATION_SCHEMA.VIEWS.TABLE_NAME, INFORMATION_SCHEMA.VIEWS.VIEW_DEFINITION from INFORMATION_SCHEMA.VIEWS where INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA in (cast(? as varchar(128))) order by INFORMATION_SCHEMA.VIEWS.TABLE_SCHEMA, INFORMATION_SCHEMA.VIEWS.TABLE_NAME");

View File

@ -72,7 +72,6 @@ final class Names {
static final Name N_ARRAY_AGG = systemName("array_agg");
static final Name N_ARRAY_CONSTRUCT = systemName("array_construct");
static final Name N_ARRAY_CONSTRUCT_COMPACT = systemName("array_construct_compact");
static final Name N_ARRAY_LENGTH = systemName("array_length");
static final Name N_BITCOUNT = systemName("bitcount");
static final Name N_BITWISE_AND_AGG = systemName("bitwise_and_agg");
static final Name N_BITWISE_OR_AGG = systemName("bitwise_or_agg");
@ -309,6 +308,7 @@ final class Names {
static final Name N_ARRAY_APPEND = systemName("array_append");
static final Name N_ARRAY_CONCAT = systemName("array_concat");
static final Name N_ARRAY_GET = systemName("array_get");
static final Name N_ARRAY_LENGTH = systemName("array_length");
static final Name N_ARRAY_OVERLAP = systemName("array_overlap");
static final Name N_ARRAY_PREPEND = systemName("array_prepend");
static final Name N_ARRAY_REMOVE = systemName("array_remove");
@ -377,6 +377,7 @@ final class Names {
static final Name N_CONNECT_BY_ISCYCLE = systemName("connect_by_iscycle");
static final Name N_CONNECT_BY_ISLEAF = systemName("connect_by_isleaf");
static final Name N_CONNECT_BY_ROOT = systemName("connect_by_root");
static final Name N_CONTAINS = systemName("contains");
static final Name N_CORR = systemName("corr");
static final Name N_COS = systemName("cos");
static final Name N_COSH = systemName("cosh");
@ -515,6 +516,7 @@ final class Names {
static final Name N_STDDEV_SAMP = systemName("stddev_samp");
static final Name N_STRREVERSE = systemName("strreverse");
static final Name N_STRTOK = systemName("strtok");
static final Name N_STR_SPLIT = systemName("str_split");
static final Name N_ST_AREA = systemName("st_area");
static final Name N_ST_ASBINARY = systemName("st_asbinary");
static final Name N_ST_ASTEXT = systemName("st_astext");
@ -552,6 +554,7 @@ final class Names {
static final Name N_ST_Z = systemName("st_z");
static final Name N_SUBSTRING = systemName("substring");
static final Name N_SUBSTRING_INDEX = systemName("substring_index");
static final Name N_SUFFIX = systemName("suffix");
static final Name N_SUM = systemName("sum");
static final Name N_SYS_CONNECT_BY_PATH = systemName("sys_connect_by_path");
static final Name N_TAN = systemName("tan");

View File

@ -119,6 +119,7 @@ implements
case CUBRID:
case DUCKDB:
case FIREBIRD:
case IGNITE:
case POSTGRES:
@ -183,6 +184,7 @@ implements
case CUBRID:
case DUCKDB:
case FIREBIRD:
case IGNITE:
case POSTGRES:

View File

@ -93,6 +93,7 @@ final class Nvl2<T> extends AbstractField<T> implements QOM.Nvl2<T> {
case CUBRID:
case DERBY:
case DUCKDB:
case FIREBIRD:
case MYSQL:
case POSTGRES:

View File

@ -121,6 +121,7 @@ implements
case DERBY:
case DUCKDB:
case SQLITE:
case TRINO:
ctx.visit(function(N_LENGTH, getDataType(), string));

View File

@ -116,7 +116,7 @@ implements
private static final Set<SQLDialect> NO_SUPPORT = SQLDialect.supportedBy(DERBY, HSQLDB, IGNITE, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> NO_SUPPORT = SQLDialect.supportedBy(DERBY, DUCKDB, HSQLDB, IGNITE, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> SUPPORT_INSERT = SQLDialect.supportedBy(H2, MARIADB, MYSQL);
@Override

View File

@ -8585,6 +8585,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
return coth((Field) parseFieldNumericOpParenthesised());
else if (parseFunctionNameIf("COT"))
return cot((Field) parseFieldNumericOpParenthesised());
else if (parseFunctionNameIf("CONTAINS"))
return parseFunctionArgs2((f1, f2) -> f1.contains(f2));
else if ((field = parseNextvalCurrvalIf(SequenceMethod.CURRVAL)) != null)
return field;
else if (parseFunctionNameIf("CENTURY"))
@ -8693,6 +8695,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
return field;
else if (parseFunctionNameIf("ELEMENT_AT"))
return parseFunctionArgs2(DSL::arrayGet);
else if (parseFunctionNameIf("ENDS_WITH"))
return parseFunctionArgs2((f1, f2) -> f1.endsWith(f2));
else if (parseFunctionNameIf("EXP"))
return exp((Field) parseFieldNumericOpParenthesised());
else if (parseFunctionNameIf("EPOCH"))
@ -9005,6 +9009,8 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
return parseFunctionArgs3(DSL::splitPart);
else if (parseFunctionNameIf("STR_REPLACE"))
return parseFunctionArgs3(DSL::replace, DSL::replace);
else if (parseFunctionNameIf("STARTS_WITH"))
return parseFunctionArgs2((f1, f2) -> f1.startsWith(f2));
else if (parseFunctionNameIf("SCHEMA") && parseEmptyParensIf())
return currentSchema();
else if (parseFunctionNameIf("STRREVERSE"))

View File

@ -98,6 +98,9 @@ implements
case DUCKDB:
return true;
@ -141,6 +144,10 @@ implements
case DUCKDB:
ctx.visit(function(N_RANDOM, getDataType()));
break;

View File

@ -98,6 +98,7 @@ implements
case DUCKDB:
case MARIADB:
case MYSQL:
case POSTGRES:

View File

@ -148,6 +148,7 @@ implements
case DUCKDB:
case FIREBIRD:
case HSQLDB:
case MARIADB:

View File

@ -169,8 +169,8 @@ implements
private static final Clause[] CLAUSES_BETWEEN_SYMMETRIC = { CONDITION, CONDITION_BETWEEN_SYMMETRIC };
private static final Clause[] CLAUSES_NOT_BETWEEN = { CONDITION, CONDITION_NOT_BETWEEN };
private static final Clause[] CLAUSES_NOT_BETWEEN_SYMMETRIC = { CONDITION, CONDITION_NOT_BETWEEN_SYMMETRIC };
private static final Set<SQLDialect> NO_SUPPORT_SYMMETRIC = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, H2, IGNITE, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> EMULATE_BETWEEN = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, MARIADB, MYSQL);
private static final Set<SQLDialect> NO_SUPPORT_SYMMETRIC = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, H2, IGNITE, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> EMULATE_BETWEEN = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, MARIADB, MYSQL);
private final boolean symmetric;
private final boolean not;

View File

@ -51,6 +51,7 @@ import static org.jooq.Comparator.NOT_EQUALS;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
@ -75,11 +76,9 @@ import java.util.Set;
import org.jooq.Clause;
import org.jooq.Comparator;
import org.jooq.Condition;
import org.jooq.Configuration;
import org.jooq.Context;
import org.jooq.Field;
// ...
import org.jooq.QueryPartInternal;
import org.jooq.Row;
import org.jooq.SQLDialect;
import org.jooq.impl.QOM.UNotYetImplemented;
@ -95,8 +94,8 @@ final class RowCondition extends AbstractCondition implements UNotYetImplemented
private static final Set<SQLDialect> EMULATE_EQ_AND_NE = SQLDialect.supportedBy(DERBY, FIREBIRD);
private static final Set<SQLDialect> EMULATE_RANGES = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD);
private static final Set<SQLDialect> EMULATE_EQ_AND_NE = SQLDialect.supportedBy(DERBY, DUCKDB, FIREBIRD);
private static final Set<SQLDialect> EMULATE_RANGES = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD);
private final Row left;
private final Row right;

View File

@ -45,6 +45,7 @@ package org.jooq.impl;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
@ -81,7 +82,7 @@ final class RowIsNull extends AbstractCondition implements QOM.RowIsNull {
// Currently not yet supported in SQLite:
// https://www.sqlite.org/rowvalue.html
static final Set<SQLDialect> EMULATE_NULL_ROW = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, HSQLDB, MARIADB, MYSQL, SQLITE, TRINO);
static final Set<SQLDialect> EMULATE_NULL_ROW = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, HSQLDB, MARIADB, MYSQL, SQLITE, TRINO);
private final Row row;

View File

@ -46,6 +46,7 @@ import static org.jooq.SQLDialect.CUBRID;
// ...
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -81,8 +82,8 @@ import org.jooq.SQLDialect;
*/
final class RowOverlaps<T1, T2> extends AbstractCondition implements QOM.RowOverlaps {
private static final Set<SQLDialect> EMULATE_NON_STANDARD_OVERLAPS = SQLDialect.supportedUntil(CUBRID, DERBY, FIREBIRD, H2, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> EMULATE_INTERVAL_OVERLAPS = SQLDialect.supportedBy(HSQLDB, TRINO);
private static final Set<SQLDialect> EMULATE_NON_STANDARD_OVERLAPS = SQLDialect.supportedUntil(CUBRID, DERBY, DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, SQLITE, TRINO);
private static final Set<SQLDialect> EMULATE_INTERVAL_OVERLAPS = SQLDialect.supportedBy(DUCKDB, HSQLDB, TRINO);
private final Row2<T1, T2> left;
private final Row2<T1, T2> right;

View File

@ -171,11 +171,16 @@ final class RowSubqueryCondition extends AbstractCondition implements UNotYetImp
else if (NO_SUPPORT_NATIVE.contains(ctx.dialect()))
return emulationUsingExists(ctx, left, right,
comparator == GREATER
|| comparator == GREATER_OR_EQUAL
|| comparator == LESS
|| comparator == LESS_OR_EQUAL ? comparator : EQUALS,
comparator == NOT_IN || comparator == NOT_EQUALS
comparator == GREATER
|| comparator == GREATER_OR_EQUAL
|| comparator == LESS
|| comparator == LESS_OR_EQUAL
|| comparator == IS_DISTINCT_FROM
|| comparator == IS_NOT_DISTINCT_FROM
? comparator
: EQUALS,
comparator == NOT_IN
|| comparator == NOT_EQUALS
);
else
return new Native();

View File

@ -80,38 +80,38 @@ final class SQLDataTypes {
// Default SQL data types and synonyms thereof
// -------------------------------------------------------------------------
public static final DataType<Byte> TINYINT = new BuiltInDataType<>(FAMILY, SQLDataType.TINYINT, "tinyint");
public static final DataType<Short> SMALLINT = new BuiltInDataType<>(FAMILY, SQLDataType.SMALLINT, "smallint");
public static final DataType<Integer> INT = new BuiltInDataType<>(FAMILY, SQLDataType.INTEGER, "int");
public static final DataType<Integer> INTEGER = new BuiltInDataType<>(FAMILY, SQLDataType.INTEGER, "integer");
public static final DataType<Long> BIGINT = new BuiltInDataType<>(FAMILY, SQLDataType.BIGINT, "bigint");
public static final DataType<Double> DOUBLE = new BuiltInDataType<>(FAMILY, SQLDataType.DOUBLE, "double");
public static final DataType<Double> DOUBLEPRECISION = new BuiltInDataType<>(FAMILY, SQLDataType.DOUBLE, "double precision");
public static final DataType<Double> FLOAT = new BuiltInDataType<>(FAMILY, SQLDataType.FLOAT, "float");
public static final DataType<Float> REAL = new BuiltInDataType<>(FAMILY, SQLDataType.REAL, "real");
public static final DataType<Boolean> BOOLEAN = new BuiltInDataType<>(FAMILY, SQLDataType.BOOLEAN, "boolean");
public static final DataType<Boolean> BIT = new BuiltInDataType<>(FAMILY, SQLDataType.BIT, "bit");
public static final DataType<BigDecimal> DECIMAL = new BuiltInDataType<>(FAMILY, SQLDataType.DECIMAL, "decimal(p, s)");
public static final DataType<BigDecimal> NUMERIC = new BuiltInDataType<>(FAMILY, SQLDataType.NUMERIC, "numeric(p, s)");
public static final DataType<String> VARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.VARCHAR, "varchar(l)", "varchar(32672)");
public static final DataType<String> LONGVARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.LONGVARCHAR, "longvarchar(l)");
public static final DataType<String> CHAR = new BuiltInDataType<>(FAMILY, SQLDataType.CHAR, "char(l)");
public static final DataType<String> CHARACTER = new BuiltInDataType<>(FAMILY, SQLDataType.CHAR, "character(l)");
public static final DataType<String> CHARACTERVARYING = new BuiltInDataType<>(FAMILY, SQLDataType.VARCHAR, "character varying(l)", "character varying(32672)");
public static final DataType<String> CLOB = new BuiltInDataType<>(FAMILY, SQLDataType.CLOB, "clob");
public static final DataType<String> CHARLARGEOBJECT = new BuiltInDataType<>(FAMILY, SQLDataType.CLOB, "char large object", "clob");
public static final DataType<String> CHARACTERLARGEOBJECT = new BuiltInDataType<>(FAMILY, SQLDataType.CLOB, "character large object", "clob");
public static final DataType<Date> DATE = new BuiltInDataType<>(FAMILY, SQLDataType.DATE, "date");
public static final DataType<Time> TIME = new BuiltInDataType<>(FAMILY, SQLDataType.TIME, "time(p)");
public static final DataType<Time> TIMEWITHOUTTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIME, "time(p) without time zone");
public static final DataType<OffsetTime> TIMEWITHTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIMEWITHTIMEZONE, "time(p) with time zone");
public static final DataType<Timestamp> TIMESTAMP = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMP, "timestamp(p)");
public static final DataType<Timestamp> TIMESTAMPWITHOUTTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMP, "timestamp(p) without time zone");
public static final DataType<Timestamp> DATETIME = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMP, "datetime(p)");
public static final DataType<OffsetDateTime> TIMESTAMPWITHTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMPWITHTIMEZONE, "timestamp(p) with time zone");
public static final DataType<Instant> INSTANT = new BuiltInDataType<>(FAMILY, SQLDataType.INSTANT, "timestamp(p) with time zone");
public static final DataType<Byte> TINYINT = new BuiltInDataType<>(FAMILY, SQLDataType.TINYINT, "tinyint");
public static final DataType<Short> SMALLINT = new BuiltInDataType<>(FAMILY, SQLDataType.SMALLINT, "smallint");
public static final DataType<Integer> INT = new BuiltInDataType<>(FAMILY, SQLDataType.INTEGER, "int");
public static final DataType<Integer> INTEGER = new BuiltInDataType<>(FAMILY, SQLDataType.INTEGER, "integer");
public static final DataType<Long> BIGINT = new BuiltInDataType<>(FAMILY, SQLDataType.BIGINT, "bigint");
public static final DataType<Double> DOUBLE = new BuiltInDataType<>(FAMILY, SQLDataType.DOUBLE, "double");
public static final DataType<Double> DOUBLEPRECISION = new BuiltInDataType<>(FAMILY, SQLDataType.DOUBLE, "double precision");
public static final DataType<Double> FLOAT = new BuiltInDataType<>(FAMILY, SQLDataType.FLOAT, "float");
public static final DataType<Float> REAL = new BuiltInDataType<>(FAMILY, SQLDataType.REAL, "real");
public static final DataType<Boolean> BOOLEAN = new BuiltInDataType<>(FAMILY, SQLDataType.BOOLEAN, "boolean");
public static final DataType<Boolean> BIT = new BuiltInDataType<>(FAMILY, SQLDataType.BIT, "bit");
public static final DataType<BigDecimal> DECIMAL = new BuiltInDataType<>(FAMILY, SQLDataType.DECIMAL, "decimal(p, s)");
public static final DataType<BigDecimal> NUMERIC = new BuiltInDataType<>(FAMILY, SQLDataType.NUMERIC, "numeric(p, s)");
public static final DataType<String> VARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.VARCHAR, "varchar(l)");
public static final DataType<String> LONGVARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.LONGVARCHAR, "longvarchar(l)");
public static final DataType<String> CHAR = new BuiltInDataType<>(FAMILY, SQLDataType.CHAR, "char(l)");
public static final DataType<String> CHARACTER = new BuiltInDataType<>(FAMILY, SQLDataType.CHAR, "character(l)");
public static final DataType<String> CHARACTERVARYING = new BuiltInDataType<>(FAMILY, SQLDataType.VARCHAR, "character varying(l)");
public static final DataType<String> CLOB = new BuiltInDataType<>(FAMILY, SQLDataType.CLOB, "clob");
public static final DataType<String> CHARLARGEOBJECT = new BuiltInDataType<>(FAMILY, SQLDataType.CLOB, "char large object", "clob");
public static final DataType<String> CHARACTERLARGEOBJECT = new BuiltInDataType<>(FAMILY, SQLDataType.CLOB, "character large object", "clob");
public static final DataType<Date> DATE = new BuiltInDataType<>(FAMILY, SQLDataType.DATE, "date");
public static final DataType<Time> TIME = new BuiltInDataType<>(FAMILY, SQLDataType.TIME, "time(p)");
public static final DataType<Time> TIMEWITHOUTTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIME, "time(p) without time zone");
public static final DataType<OffsetTime> TIMEWITHTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIMEWITHTIMEZONE, "time(p) with time zone");
public static final DataType<Timestamp> TIMESTAMP = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMP, "timestamp(p)");
public static final DataType<Timestamp> TIMESTAMPWITHOUTTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMP, "timestamp(p) without time zone");
public static final DataType<Timestamp> DATETIME = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMP, "datetime(p)");
public static final DataType<OffsetDateTime> TIMESTAMPWITHTIMEZONE = new BuiltInDataType<>(FAMILY, SQLDataType.TIMESTAMPWITHTIMEZONE, "timestamp(p) with time zone");
public static final DataType<Instant> INSTANT = new BuiltInDataType<>(FAMILY, SQLDataType.INSTANT, "timestamp(p) with time zone");
public static final DataType<byte[]> LONGVARBINARY = new BuiltInDataType<>(FAMILY, SQLDataType.LONGVARBINARY, "longvarbinary(l)");
public static final DataType<byte[]> VARBINARY = new BuiltInDataType<>(FAMILY, SQLDataType.VARBINARY, "varbinary(l)", "varbinary(32672)");
public static final DataType<byte[]> VARBINARY = new BuiltInDataType<>(FAMILY, SQLDataType.VARBINARY, "varbinary(l)");
public static final DataType<byte[]> BINARY = new BuiltInDataType<>(FAMILY, SQLDataType.BINARY, "binary(l)");
public static final DataType<byte[]> BLOB = new BuiltInDataType<>(FAMILY, SQLDataType.BLOB, "blob");
public static final DataType<byte[]> BINARYLARGEOBJECT = new BuiltInDataType<>(FAMILY, SQLDataType.BLOB, "binary large object", "blob");
@ -124,17 +124,17 @@ final class SQLDataTypes {
// Compatibility types for supported SQLDialect.HSQLDB, SQLDataTypes
// -------------------------------------------------------------------------
protected static final DataType<String> __NCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.NCHAR, "char(l)");
protected static final DataType<String> __NCLOB = new BuiltInDataType<>(FAMILY, SQLDataType.NCLOB, "clob");
protected static final DataType<String> __LONGNVARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.LONGNVARCHAR, "longvarchar(l)");
protected static final DataType<String> __NVARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.NVARCHAR, "varchar(l)", "varchar(32672)");
protected static final DataType<UByte> __TINYINTUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.TINYINTUNSIGNED, "smallint");
protected static final DataType<UShort> __SMALLINTUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.SMALLINTUNSIGNED, "int");
protected static final DataType<UInteger> __INTEGERUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.INTEGERUNSIGNED, "bigint");
protected static final DataType<ULong> __BIGINTUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.BIGINTUNSIGNED, "decimal(p, s)");
protected static final DataType<JSON> __JSON = new BuiltInDataType<>(FAMILY, SQLDataType.JSON, "clob");
protected static final DataType<JSONB> __JSONB = new BuiltInDataType<>(FAMILY, SQLDataType.JSONB, "blob");
protected static final DataType<Year> __YEAR = new BuiltInDataType<>(FAMILY, SQLDataType.YEAR, "smallint");
protected static final DataType<String> __NCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.NCHAR, "char(l)");
protected static final DataType<String> __NCLOB = new BuiltInDataType<>(FAMILY, SQLDataType.NCLOB, "clob");
protected static final DataType<String> __LONGNVARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.LONGNVARCHAR, "longvarchar(l)");
protected static final DataType<String> __NVARCHAR = new BuiltInDataType<>(FAMILY, SQLDataType.NVARCHAR, "varchar(l)");
protected static final DataType<UByte> __TINYINTUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.TINYINTUNSIGNED, "smallint");
protected static final DataType<UShort> __SMALLINTUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.SMALLINTUNSIGNED, "int");
protected static final DataType<UInteger> __INTEGERUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.INTEGERUNSIGNED, "bigint");
protected static final DataType<ULong> __BIGINTUNSIGNED = new BuiltInDataType<>(FAMILY, SQLDataType.BIGINTUNSIGNED, "decimal(p, s)");
protected static final DataType<JSON> __JSON = new BuiltInDataType<>(FAMILY, SQLDataType.JSON, "clob");
protected static final DataType<JSONB> __JSONB = new BuiltInDataType<>(FAMILY, SQLDataType.JSONB, "blob");
protected static final DataType<Year> __YEAR = new BuiltInDataType<>(FAMILY, SQLDataType.YEAR, "smallint");
// -------------------------------------------------------------------------
// Compatibility types for supported Java types
@ -147,7 +147,6 @@ final class SQLDataTypes {
// -------------------------------------------------------------------------
public static final DataType<UUID> UUID = new BuiltInDataType<>(FAMILY, SQLDataType.UUID, "uuid");
public static final DataType<String> VARCHARIGNORECASE = new BuiltInDataType<>(FAMILY, SQLDataType.VARCHAR, "varchar_ignorecase(l)", "varchar_ignorecase(32672)");
public static final DataType<Object> OBJECT = new BuiltInDataType<>(FAMILY, SQLDataType.OTHER, "object");
public static final DataType<Result<Record>> ROW = new BuiltInDataType<>(FAMILY, SQLDataType.RESULT, "row");
}

View File

@ -1908,6 +1908,7 @@ final class SelectQueryImpl<R extends Record> extends AbstractResultQuery<R> imp
case CUBRID:
case DUCKDB:
case YUGABYTEDB: {
if (getLimit().isApplicable() && getLimit().withTies())
toSQLReferenceLimitWithWindowFunctions(context);

View File

@ -108,6 +108,7 @@ implements
case DERBY:
case DUCKDB:
case HSQLDB:
case POSTGRES:
case YUGABYTEDB:
@ -146,6 +147,7 @@ implements
case DERBY:
case DUCKDB:
case HSQLDB:
case POSTGRES:
case YUGABYTEDB:

View File

@ -110,6 +110,9 @@ implements
case DUCKDB:
return false;
case MARIADB:
@ -180,6 +183,10 @@ implements
case DUCKDB:
ctx.visit(arrayGet(function(N_STR_SPLIT, getDataType().array(), string, delimiter), (Field<Integer>) n));
break;

View File

@ -124,6 +124,7 @@ implements
case YUGABYTEDB:
return false;
case DUCKDB:
case TRINO:
return true;
@ -175,6 +176,7 @@ implements
ctx.visit(string.like(DSL.concat(Tools.escapeForLike(prefix, ctx.configuration()), inline("%")), Tools.ESCAPE));
break;
case DUCKDB:
case TRINO:
ctx.visit(function(N_STARTS_WITH, BOOLEAN, string, prefix));
break;

View File

@ -97,6 +97,11 @@ implements
case DUCKDB:
case TRINO:
ctx.visit(string.lower().startsWith(prefix.lower()));
break;
default:
ctx.visit(string.likeIgnoreCase(DSL.concat(Tools.escapeForLike(prefix, ctx.configuration()), inline("%")), Tools.ESCAPE));
break;

View File

@ -6895,6 +6895,7 @@ final class Tools {
case DUCKDB:
case MARIADB:
case MYSQL:
case SQLITE:

View File

@ -46,6 +46,7 @@ package org.jooq.impl;
import static org.jooq.SQLDialect.CUBRID;
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
import static org.jooq.SQLDialect.H2;
@ -92,7 +93,7 @@ final class Transformations {
static final Set<SQLDialect> NO_SUPPORT_IN_LIMIT = SQLDialect.supportedBy(MARIADB, MYSQL);
static final Set<SQLDialect> SUPPORT_MISSING_TABLE_REFERENCES = SQLDialect.supportedBy();
static final Set<SQLDialect> EMULATE_QUALIFY = SQLDialect.supportedBy(CUBRID, FIREBIRD, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_ROWNUM = SQLDialect.supportedBy(CUBRID, DERBY, FIREBIRD, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_ROWNUM = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
static final Set<SQLDialect> EMULATE_GROUP_BY_COLUMN_INDEX = SQLDialect.supportedBy(CUBRID, DERBY, H2, HSQLDB, IGNITE);
static final Set<SQLDialect> NO_SUPPORT_CTE = SQLDialect.supportedUntil(CUBRID, DERBY);

View File

@ -50,14 +50,13 @@ import static org.jooq.Clause.UPDATE_WHERE;
// ...
// ...
// ...
// ...
import static org.jooq.SQLDialect.CUBRID;
// ...
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
// ...
import static org.jooq.SQLDialect.FIREBIRD;
// ...
import static org.jooq.SQLDialect.H2;
// ...
import static org.jooq.SQLDialect.HSQLDB;
@ -67,8 +66,6 @@ import static org.jooq.SQLDialect.IGNITE;
import static org.jooq.SQLDialect.MARIADB;
// ...
// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
import static org.jooq.SQLDialect.POSTGRES;
// ...
@ -207,7 +204,7 @@ implements
private static final Set<SQLDialect> EMULATE_RETURNING_WITH_UPSERT = SQLDialect.supportedBy(MARIADB);
// LIMIT is not supported at all
private static final Set<SQLDialect> NO_SUPPORT_LIMIT = SQLDialect.supportedUntil(CUBRID, DERBY, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB);
private static final Set<SQLDialect> NO_SUPPORT_LIMIT = SQLDialect.supportedUntil(CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, SQLITE, YUGABYTEDB);
// LIMIT is supported but not ORDER BY
private static final Set<SQLDialect> NO_SUPPORT_ORDER_BY_LIMIT = SQLDialect.supportedBy(IGNITE);

View File

@ -118,6 +118,7 @@ implements
case H2:
return true;
case DUCKDB:
case HSQLDB:
case IGNITE:
case MARIADB:
@ -206,6 +207,7 @@ implements
ctx.visit(function(N_RANDOM_UUID, getDataType()));
break;
case DUCKDB:
case HSQLDB:
case IGNITE:
case MARIADB:

View File

@ -120,6 +120,7 @@ implements
case CUBRID:
case DERBY:
case DUCKDB:
case FIREBIRD:
case H2:
case HSQLDB:

View File

@ -91,7 +91,7 @@ implements
private static final Clause[] CLAUSES = { Clause.CONDITION, Clause.CONDITION_XOR };
private static final Set<SQLDialect> NO_SUPPORT_NATIVE = SQLDialect.supportedBy(DERBY, FIREBIRD, H2, HSQLDB, IGNITE, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
private static final Set<SQLDialect> NO_SUPPORT_NATIVE = SQLDialect.supportedBy(DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, IGNITE, POSTGRES, SQLITE, TRINO, YUGABYTEDB);
@Override
final boolean parenthesised(Context<?> ctx) {