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

This commit is contained in:
Lukas Eder 2023-04-25 13:35:37 +02:00
parent b75cec9837
commit e5c5ca97fe
9 changed files with 127 additions and 95 deletions

View File

@ -48,6 +48,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;
// ...
@ -101,7 +102,7 @@ public interface AlterTableAlterStep<T> {
* This is an alias for {@link #default_(Object)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep defaultValue(T literal);
/**
@ -110,42 +111,42 @@ public interface AlterTableAlterStep<T> {
* This is an alias for {@link #default_(Field)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep defaultValue(Field<T> expression);
/**
* Specify a new column <code>DEFAULT</code>.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep default_(T literal);
/**
* Specify a new column <code>DEFAULT</code>.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep default_(Field<T> expression);
/**
* Specify a new column <code>DEFAULT</code>.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep setDefault(T literal);
/**
* Specify a new column <code>DEFAULT</code>.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep setDefault(Field<T> expression);
/**
* Drop the column <code>DEFAULT</code>.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, YUGABYTEDB })
AlterTableFinalStep dropDefault();
/**
@ -156,20 +157,20 @@ public interface AlterTableAlterStep<T> {
* support this).
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterTableFinalStep set(DataType<?> type);
/**
* Make the column <code>NOT NULL</code>.
*/
@NotNull @CheckReturnValue
@Support({ DERBY, FIREBIRD, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, YUGABYTEDB })
AlterTableFinalStep setNotNull();
/**
* Make the column nullable.
*/
@NotNull @CheckReturnValue
@Support({ DERBY, FIREBIRD, H2, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, POSTGRES, YUGABYTEDB })
AlterTableFinalStep dropNotNull();
}

View File

@ -43,6 +43,7 @@ import org.jetbrains.annotations.*;
// ...
// ...
import static org.jooq.SQLDialect.DERBY;
import static org.jooq.SQLDialect.DUCKDB;
import static org.jooq.SQLDialect.H2;
import static org.jooq.SQLDialect.HSQLDB;
// ...
@ -88,6 +89,6 @@ public interface AlterTableDropStep extends AlterTableFinalStep {
* <code>ALTER TABLE DROP</code> statement.
*/
@NotNull @CheckReturnValue
@Support({ DERBY, HSQLDB, POSTGRES, YUGABYTEDB })
@Support({ DERBY, DUCKDB, HSQLDB, POSTGRES, YUGABYTEDB })
AlterTableFinalStep restrict();
}

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;
@ -132,7 +133,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
AlterTableFinalStep renameTo(Table<?> newName);
/**
@ -140,7 +141,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
AlterTableFinalStep renameTo(Name newName);
/**
@ -148,7 +149,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
AlterTableFinalStep renameTo(String newName);
/**
@ -156,7 +157,7 @@ public interface AlterTableStep {
* 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 })
AlterTableRenameColumnToStep renameColumn(Field<?> oldName);
/**
@ -164,7 +165,7 @@ public interface AlterTableStep {
* 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 })
AlterTableRenameColumnToStep renameColumn(Name oldName);
/**
@ -172,7 +173,7 @@ public interface AlterTableStep {
* 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 })
AlterTableRenameColumnToStep renameColumn(String oldName);
/**
@ -240,7 +241,7 @@ public interface AlterTableStep {
* This is an alias for {@link #alterColumn(Field)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
<T> AlterTableAlterStep<T> alter(Field<T> field);
/**
@ -250,7 +251,7 @@ public interface AlterTableStep {
* This is an alias for {@link #alterColumn(Name)}
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAlterStep<Object> alter(Name field);
/**
@ -260,7 +261,7 @@ public interface AlterTableStep {
* This is an alias for {@link #alterColumn(String)}
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAlterStep<Object> alter(String field);
/**
@ -268,7 +269,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
<T> AlterTableAlterStep<T> alterColumn(Field<T> field);
/**
@ -276,7 +277,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAlterStep<Object> alterColumn(Name field);
/**
@ -284,7 +285,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ CUBRID, DERBY, DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAlterStep<Object> alterColumn(String field);
/**
@ -374,7 +375,7 @@ public interface AlterTableStep {
* This is an alias for {@link #addColumnIfNotExists(Field)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAddStep addIfNotExists(Field<?> field);
/**
@ -384,7 +385,7 @@ public interface AlterTableStep {
* This is an alias for {@link #addColumnIfNotExists(Field, DataType)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
<T> AlterTableAddStep addIfNotExists(Field<T> field, DataType<T> type);
/**
@ -394,7 +395,7 @@ public interface AlterTableStep {
* This is an alias for {@link #addColumnIfNotExists(Name, DataType)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAddStep addIfNotExists(Name field, DataType<?> type);
/**
@ -404,7 +405,7 @@ public interface AlterTableStep {
* This is an alias for {@link #addColumnIfNotExists(String, DataType)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAddStep addIfNotExists(String field, DataType<?> type);
/**
@ -444,7 +445,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAddStep addColumnIfNotExists(Field<?> field);
/**
@ -452,7 +453,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
<T> AlterTableAddStep addColumnIfNotExists(Field<T> field, DataType<T> type);
/**
@ -460,7 +461,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAddStep addColumnIfNotExists(Name field, DataType<?> type);
/**
@ -468,7 +469,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableAddStep addColumnIfNotExists(String field, DataType<?> type);
/**
@ -486,7 +487,7 @@ public interface AlterTableStep {
* This is an alias for {@link #dropColumn(Field)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support
AlterTableDropStep drop(Field<?> field);
/**
@ -496,7 +497,7 @@ public interface AlterTableStep {
* This is an alias for {@link #dropColumn(Name)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support
AlterTableDropStep drop(Name field);
/**
@ -506,7 +507,7 @@ public interface AlterTableStep {
* This is an alias for {@link #dropColumn(String)}.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support
AlterTableDropStep drop(String field);
/**
@ -516,7 +517,7 @@ public interface AlterTableStep {
* This is an alias for {@link #dropColumnIfExists(Field)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableDropStep dropIfExists(Field<?> field);
/**
@ -526,7 +527,7 @@ public interface AlterTableStep {
* This is an alias for {@link #dropColumnIfExists(Name)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableDropStep dropIfExists(Name field);
/**
@ -536,7 +537,7 @@ public interface AlterTableStep {
* This is an alias for {@link #dropColumnIfExists(String)}.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableDropStep dropIfExists(String field);
/**
@ -544,7 +545,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support
AlterTableDropStep dropColumn(Field<?> field);
/**
@ -552,7 +553,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support
AlterTableDropStep dropColumn(Name field);
/**
@ -560,7 +561,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ CUBRID, DERBY, FIREBIRD, H2, HSQLDB, IGNITE, MARIADB, MYSQL, POSTGRES, SQLITE, TRINO, YUGABYTEDB })
@Support
AlterTableDropStep dropColumn(String field);
/**
@ -568,7 +569,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableDropStep dropColumnIfExists(Field<?> field);
/**
@ -576,7 +577,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableDropStep dropColumnIfExists(Name field);
/**
@ -584,7 +585,7 @@ public interface AlterTableStep {
* statement.
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableDropStep dropColumnIfExists(String field);
/**

View File

@ -87,21 +87,21 @@ public interface AlterViewStep {
/**
* Add the <code>RENAME TO</code> clause to the <code>ALTER VIEW</code> statement.
*/
@Support({ H2, HSQLDB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, POSTGRES, TRINO, YUGABYTEDB })
@NotNull @CheckReturnValue
AlterViewFinalStep renameTo(@Stringly.Name String renameTo);
/**
* Add the <code>RENAME TO</code> clause to the <code>ALTER VIEW</code> statement.
*/
@Support({ H2, HSQLDB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, POSTGRES, TRINO, YUGABYTEDB })
@NotNull @CheckReturnValue
AlterViewFinalStep renameTo(Name renameTo);
/**
* Add the <code>RENAME TO</code> clause to the <code>ALTER VIEW</code> statement.
*/
@Support({ H2, HSQLDB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, HSQLDB, POSTGRES, TRINO, YUGABYTEDB })
@NotNull @CheckReturnValue
AlterViewFinalStep renameTo(Table<?> renameTo);

View File

@ -9581,7 +9581,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterView(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterViewStep alterView(@Stringly.Name String view);
/**
@ -9590,7 +9590,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterView(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterViewStep alterView(Name view);
/**
@ -9599,7 +9599,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterView(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterViewStep alterView(Table<?> view);
/**
@ -9608,7 +9608,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterViewIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ H2, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, POSTGRES, YUGABYTEDB })
AlterViewStep alterViewIfExists(@Stringly.Name String view);
/**
@ -9617,7 +9617,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterViewIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ H2, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, POSTGRES, YUGABYTEDB })
AlterViewStep alterViewIfExists(Name view);
/**
@ -9626,7 +9626,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterViewIfExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ H2, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, POSTGRES, YUGABYTEDB })
AlterViewStep alterViewIfExists(Table<?> view);
/**
@ -9635,7 +9635,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterView(Table, Field...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterViewStep alterView(Table<?> view, Field<?>... fields);
/**
@ -9644,7 +9644,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterView(Table, Collection)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
AlterViewStep alterView(Table<?> view, Collection<? extends Field<?>> fields);
/**
@ -11866,7 +11866,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterTableIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableStep alterTableIfExists(String table);
/**
@ -11875,7 +11875,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterTableIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableStep alterTableIfExists(Name table);
/**
@ -11884,7 +11884,7 @@ public interface DSLContext extends Scope {
* @see DSL#alterTableIfExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
AlterTableStep alterTableIfExists(Table<?> table);
// -------------------------------------------------------------------------

View File

@ -1491,6 +1491,7 @@ implements
case DERBY:
case DUCKDB:
case TRINO:
ctx.sql(' ').visit(K_SET_DATA_TYPE);
break;

View File

@ -7626,7 +7626,7 @@ public class DSL {
* @see DSLContext#alterView(String)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
public static org.jooq.AlterViewStep alterView(@Stringly.Name String view) {
return dsl().alterView(view);
}
@ -7641,7 +7641,7 @@ public class DSL {
* @see DSLContext#alterView(Name)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
public static org.jooq.AlterViewStep alterView(Name view) {
return dsl().alterView(view);
}
@ -7656,7 +7656,7 @@ public class DSL {
* @see DSLContext#alterView(Table)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, HSQLDB, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
public static org.jooq.AlterViewStep alterView(Table<?> view) {
return dsl().alterView(view);
}
@ -7671,7 +7671,7 @@ public class DSL {
* @see DSLContext#alterViewIfExists(String)
*/
@NotNull @CheckReturnValue
@Support({ H2, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, POSTGRES, YUGABYTEDB })
public static org.jooq.AlterViewStep alterViewIfExists(@Stringly.Name String view) {
return dsl().alterViewIfExists(view);
}
@ -7686,7 +7686,7 @@ public class DSL {
* @see DSLContext#alterViewIfExists(Name)
*/
@NotNull @CheckReturnValue
@Support({ H2, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, POSTGRES, YUGABYTEDB })
public static org.jooq.AlterViewStep alterViewIfExists(Name view) {
return dsl().alterViewIfExists(view);
}
@ -7701,7 +7701,7 @@ public class DSL {
* @see DSLContext#alterViewIfExists(Table)
*/
@NotNull @CheckReturnValue
@Support({ H2, POSTGRES, YUGABYTEDB })
@Support({ DUCKDB, H2, POSTGRES, YUGABYTEDB })
public static org.jooq.AlterViewStep alterViewIfExists(Table<?> view) {
return dsl().alterViewIfExists(view);
}
@ -7716,7 +7716,7 @@ public class DSL {
* @see DSLContext#alterView(Table, Field...)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
public static org.jooq.AlterViewStep alterView(Table<?> view, Field<?>... fields) {
return dsl().alterView(view, fields);
}
@ -7731,7 +7731,7 @@ public class DSL {
* @see DSLContext#alterView(Table, Collection)
*/
@NotNull @CheckReturnValue
@Support({ FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, FIREBIRD, H2, MARIADB, MYSQL, POSTGRES, TRINO, YUGABYTEDB })
public static org.jooq.AlterViewStep alterView(Table<?> view, Collection<? extends Field<?>> fields) {
return dsl().alterView(view, fields);
}
@ -10888,7 +10888,7 @@ public class DSL {
* @see DSLContext#alterTableIfExists(String)
*/
@NotNull
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
public static AlterTableStep alterTableIfExists(String table) {
return dsl().alterTableIfExists(table);
}
@ -10899,7 +10899,7 @@ public class DSL {
* @see DSLContext#alterTableIfExists(Name)
*/
@NotNull
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
public static AlterTableStep alterTableIfExists(Name table) {
return dsl().alterTableIfExists(table);
}
@ -10910,7 +10910,7 @@ public class DSL {
* @see DSLContext#alterTableIfExists(Table)
*/
@NotNull
@Support({ H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
@Support({ DUCKDB, H2, IGNITE, MARIADB, POSTGRES, TRINO, YUGABYTEDB })
public static AlterTableStep alterTableIfExists(Table<?> table) {
return dsl().alterTableIfExists(table);
}

View File

@ -2379,12 +2379,16 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
@Override
final void setNull0(BindingSetStatementContext<U> ctx) throws SQLException {
switch (ctx.family()) {
super.setNull0(ctx);
default:
super.setNull0(ctx);
break;
}
}
@Override
@ -2443,6 +2447,7 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
@Override
final void sqlBind0(BindingSQLContext<U> ctx, Date value) throws SQLException {
switch (ctx.family()) {
@ -2453,12 +2458,15 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
super.sqlBind0(ctx, value);
default:
super.sqlBind0(ctx, value);
break;
}
}
@Override
final void register0(BindingRegisterContext<U> ctx) throws SQLException {
switch (ctx.family()) {
@ -2466,14 +2474,23 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
super.register0(ctx);
default:
super.register0(ctx);
break;
}
}
@Override
final void set0(BindingSetStatementContext<U> ctx, Date value) throws SQLException {
if (ctx.family() == SQLITE)
ctx.statement().setString(ctx.index(), value.toString());
switch (ctx.family()) {
// DuckDB doesn't support setDate() yet: https://github.com/duckdb/duckdb/discussions/7207
case DUCKDB:
// SQLite's type affinity needs special care...
case SQLITE:
ctx.statement().setString(ctx.index(), value.toString());
break;
@ -2481,12 +2498,16 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
else
ctx.statement().setDate(ctx.index(), value);
default:
ctx.statement().setDate(ctx.index(), value);
break;
}
}
@Override
final void set0(BindingSetSQLOutputContext<U> ctx, Date value) throws SQLException {
switch (ctx.family()) {
@ -2495,18 +2516,21 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
ctx.output().writeDate(value);
default:
ctx.output().writeDate(value);
break;
}
}
@Override
final Date get0(BindingGetResultSetContext<U> ctx) throws SQLException {
SQLDialect family = ctx.family();
switch (ctx.family()) {
// SQLite's type affinity needs special care...
if (family == SQLITE) {
String date = ctx.resultSet().getString(ctx.index());
return date == null ? null : new Date(parse(Date.class, date));
}
// SQLite's type affinity needs special care...
case SQLITE: {
String date = ctx.resultSet().getString(ctx.index());
return date == null ? null : new Date(parse(Date.class, date));
}
@ -2516,13 +2540,14 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
else {
return ctx.resultSet().getDate(ctx.index());
default:
return ctx.resultSet().getDate(ctx.index());
}
}
@Override
final Date get0(BindingGetStatementContext<U> ctx) throws SQLException {
switch (ctx.family()) {
@ -2531,13 +2556,14 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
return ctx.statement().getDate(ctx.index());
default:
return ctx.statement().getDate(ctx.index());
}
}
@Override
final Date get0(BindingGetSQLInputContext<U> ctx) throws SQLException {
switch (ctx.family()) {
@ -2546,21 +2572,23 @@ public class DefaultBinding<T, U> implements Binding<T, U> {
return ctx.input().readDate();
default:
return ctx.input().readDate();
}
}
@Override
final int sqltype(Statement statement, Configuration configuration) {
switch (configuration.family()) {
return Types.DATE;
default:
return Types.DATE;
}
}
}

View File

@ -85,7 +85,7 @@ import org.jooq.impl.Tools.BooleanDataKey;
final class RowSubqueryCondition extends AbstractCondition implements UNotYetImplemented {
private static final Clause[] CLAUSES = { CONDITION, CONDITION_COMPARISON };
private static final Set<SQLDialect> NO_SUPPORT_NATIVE = SQLDialect.supportedBy(CUBRID, DERBY, DUCKDB, FIREBIRD);
private static final Set<SQLDialect> NO_SUPPORT_QUANTIFIED = SQLDialect.supportedBy(DERBY, FIREBIRD, SQLITE);
private static final Set<SQLDialect> NO_SUPPORT_QUANTIFIED = SQLDialect.supportedBy(DERBY, DUCKDB, FIREBIRD, SQLITE);
// See https://bugs.mysql.com/bug.php?id=103494
private static final Set<SQLDialect> NO_SUPPORT_QUANTIFIED_OTHER_THAN_IN_NOT_IN = SQLDialect.supportedBy(MARIADB, MYSQL);