diff --git a/jOOQ/src/main/java/org/jooq/JSONTableColumnForOrdinalityStep.java b/jOOQ/src/main/java/org/jooq/JSONTableColumnForOrdinalityStep.java
index 1ed800ed7e..22de5d422f 100644
--- a/jOOQ/src/main/java/org/jooq/JSONTableColumnForOrdinalityStep.java
+++ b/jOOQ/src/main/java/org/jooq/JSONTableColumnForOrdinalityStep.java
@@ -42,6 +42,7 @@ import org.jetbrains.annotations.*;
// ...
// ...
+import static org.jooq.SQLDialect.MARIADB;
import static org.jooq.SQLDialect.MYSQL;
// ...
import static org.jooq.SQLDialect.POSTGRES;
@@ -59,7 +60,7 @@ public interface JSONTableColumnForOrdinalityStep {
* COLUMNS clause of the JSON_TABLE predicate.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnsStep forOrdinality();
}
diff --git a/jOOQ/src/main/java/org/jooq/JSONTableColumnPathStep.java b/jOOQ/src/main/java/org/jooq/JSONTableColumnPathStep.java
index fead41ce2d..f8bbaf6315 100644
--- a/jOOQ/src/main/java/org/jooq/JSONTableColumnPathStep.java
+++ b/jOOQ/src/main/java/org/jooq/JSONTableColumnPathStep.java
@@ -42,6 +42,7 @@ import org.jetbrains.annotations.*;
// ...
// ...
+import static org.jooq.SQLDialect.MARIADB;
import static org.jooq.SQLDialect.MYSQL;
// ...
import static org.jooq.SQLDialect.POSTGRES;
@@ -59,7 +60,7 @@ public interface JSONTableColumnPathStep extends JSONTableColumnForOrdinalitySte
* clause of the JSON_TABLE predicate.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnsStep path(String path);
}
diff --git a/jOOQ/src/main/java/org/jooq/JSONTableColumnsFirstStep.java b/jOOQ/src/main/java/org/jooq/JSONTableColumnsFirstStep.java
index 0e93d728f5..ceb804a81d 100644
--- a/jOOQ/src/main/java/org/jooq/JSONTableColumnsFirstStep.java
+++ b/jOOQ/src/main/java/org/jooq/JSONTableColumnsFirstStep.java
@@ -42,6 +42,7 @@ import org.jetbrains.annotations.*;
// ...
// ...
+import static org.jooq.SQLDialect.MARIADB;
import static org.jooq.SQLDialect.MYSQL;
// ...
import static org.jooq.SQLDialect.POSTGRES;
@@ -59,7 +60,7 @@ public interface JSONTableColumnsFirstStep {
* JSON_TABLE expression.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnForOrdinalityStep column(String name);
/**
@@ -67,7 +68,7 @@ public interface JSONTableColumnsFirstStep {
* JSON_TABLE expression.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnForOrdinalityStep column(Name name);
/**
@@ -75,7 +76,7 @@ public interface JSONTableColumnsFirstStep {
* JSON_TABLE expression.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnPathStep column(Field> name);
/**
@@ -83,7 +84,7 @@ public interface JSONTableColumnsFirstStep {
* JSON_TABLE expression.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnPathStep column(String name, DataType> type);
/**
@@ -91,7 +92,7 @@ public interface JSONTableColumnsFirstStep {
* JSON_TABLE expression.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnPathStep column(Name name, DataType> type);
/**
@@ -99,7 +100,7 @@ public interface JSONTableColumnsFirstStep {
* JSON_TABLE expression.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
JSONTableColumnPathStep column(Field> name, DataType> type);
}
diff --git a/jOOQ/src/main/java/org/jooq/SQLDialect.java b/jOOQ/src/main/java/org/jooq/SQLDialect.java
index ae3291c4b0..e7eba2b684 100644
--- a/jOOQ/src/main/java/org/jooq/SQLDialect.java
+++ b/jOOQ/src/main/java/org/jooq/SQLDialect.java
@@ -213,6 +213,14 @@ public enum SQLDialect {
+
+
+
+
+
+
+
+
diff --git a/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java b/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java
index ebd26feb2a..0c9c99f60e 100644
--- a/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java
+++ b/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java
@@ -43,6 +43,7 @@ import org.jetbrains.annotations.*;
// ...
import static org.jooq.SQLDialect.MARIADB;
// ...
+// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@@ -141,6 +142,6 @@ public interface SelectForUpdateWaitStep extends SelectForStep
* @see SelectQuery#setForLockModeSkipLocked()
*/
@NotNull @CheckReturnValue
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
SelectForStep skipLocked();
}
diff --git a/jOOQ/src/main/java/org/jooq/SelectQuery.java b/jOOQ/src/main/java/org/jooq/SelectQuery.java
index d4e9901c0e..75b253c3f8 100644
--- a/jOOQ/src/main/java/org/jooq/SelectQuery.java
+++ b/jOOQ/src/main/java/org/jooq/SelectQuery.java
@@ -60,6 +60,7 @@ import static org.jooq.SQLDialect.MARIADB;
// ...
// ...
// ...
+// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@@ -1200,7 +1201,7 @@ public interface SelectQuery extends Select, ConditionProvi
* Depending on the dialect and lock mode this flag may or may not be
* supported.
*/
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
void setForLockModeSkipLocked();
diff --git a/jOOQ/src/main/java/org/jooq/impl/DSL.java b/jOOQ/src/main/java/org/jooq/impl/DSL.java
index 1db6871138..75da8f1d4b 100644
--- a/jOOQ/src/main/java/org/jooq/impl/DSL.java
+++ b/jOOQ/src/main/java/org/jooq/impl/DSL.java
@@ -67,6 +67,7 @@ import static org.jooq.SQLDialect.MARIADB;
// ...
// ...
// ...
+// ...
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@@ -23246,7 +23247,7 @@ public class DSL {
* The JSON table function.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
public static JSONTableColumnsFirstStep jsonTable(JSON json, String path) {
return jsonTable(Tools.field(json), Tools.field(path));
}
@@ -23255,7 +23256,7 @@ public class DSL {
* The JSON table function.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
public static JSONTableColumnsFirstStep jsonTable(Field json, Field path) {
return new JSONTable(Tools.nullSafe(json), Tools.nullSafe(path));
}
@@ -23264,7 +23265,7 @@ public class DSL {
* The JSON table function.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
public static JSONTableColumnsFirstStep jsonbTable(JSONB json, String path) {
return jsonbTable(Tools.field(json), Tools.field(path));
}
@@ -23273,7 +23274,7 @@ public class DSL {
* The JSON table function.
*/
@NotNull
- @Support({ MYSQL, POSTGRES })
+ @Support({ MARIADB, MYSQL, POSTGRES })
public static JSONTableColumnsFirstStep jsonbTable(Field json, Field path) {
return new JSONTable(Tools.nullSafe(json), Tools.nullSafe(path));
}
diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java
index f2d7619b42..911fabadd3 100644
--- a/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java
+++ b/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java
@@ -451,6 +451,7 @@ final class InsertQueryImpl extends AbstractStoreQuery impl
+
case MYSQL:
case MARIADB: {
toSQLInsert(ctx);
diff --git a/jOOQ/src/main/java/org/jooq/impl/JSONTable.java b/jOOQ/src/main/java/org/jooq/impl/JSONTable.java
index 992a726a87..2b67017005 100644
--- a/jOOQ/src/main/java/org/jooq/impl/JSONTable.java
+++ b/jOOQ/src/main/java/org/jooq/impl/JSONTable.java
@@ -39,6 +39,7 @@ package org.jooq.impl;
// ...
// ...
+import static org.jooq.SQLDialect.MARIADB;
import static org.jooq.SQLDialect.MYSQL;
// ...
// ...
@@ -75,9 +76,7 @@ import org.jooq.Name;
// ...
import org.jooq.Record;
import org.jooq.SQLDialect;
-import org.jooq.SelectField;
import org.jooq.TableOptions;
-import org.jooq.conf.ParamType;
/**
* @author Lukas Eder
@@ -86,7 +85,7 @@ final class JSONTable
extends AbstractTable
implements
JSONTableColumnPathStep {
- private static final Set REQUIRES_COLUMN_PATH = SQLDialect.supportedBy(MYSQL);
+ private static final Set REQUIRES_COLUMN_PATH = SQLDialect.supportedBy(MARIADB, MYSQL);
diff --git a/jOOQ/src/main/java/org/jooq/impl/Limit.java b/jOOQ/src/main/java/org/jooq/impl/Limit.java
index d8c3f6b1da..4ecfc3a05a 100644
--- a/jOOQ/src/main/java/org/jooq/impl/Limit.java
+++ b/jOOQ/src/main/java/org/jooq/impl/Limit.java
@@ -168,6 +168,7 @@ final class Limit extends AbstractQueryPart {
case DERBY:
case FIREBIRD:
case H2:
+ case MARIADB:
case POSTGRES: {
// [#8415] For backwards compatibility reasons, we generate standard
@@ -276,7 +277,6 @@ final class Limit extends AbstractQueryPart {
// [#4785] OFFSET cannot be without LIMIT
- case MARIADB:
diff --git a/jOOQ/src/main/java/org/jooq/impl/MetaSQL.java b/jOOQ/src/main/java/org/jooq/impl/MetaSQL.java
index fba75d5286..1d1da4861b 100644
--- a/jOOQ/src/main/java/org/jooq/impl/MetaSQL.java
+++ b/jOOQ/src/main/java/org/jooq/impl/MetaSQL.java
@@ -77,6 +77,9 @@ final class MetaSQL {
+
+
+
@@ -117,6 +120,8 @@ final class MetaSQL {
+
+
@@ -155,6 +160,8 @@ final class MetaSQL {
+
+
diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java
index c91c510ffb..08be22dfbf 100644
--- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java
+++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java
@@ -329,7 +329,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp
- private static final Set SUPPORT_FULL_WITH_TIES = SQLDialect.supportedBy(H2, POSTGRES);
+ private static final Set SUPPORT_FULL_WITH_TIES = SQLDialect.supportedBy(H2, MARIADB, POSTGRES);
private static final Set EMULATE_DISTINCT_ON = SQLDialect.supportedBy(DERBY, FIREBIRD, HSQLDB, MARIADB, MYSQL, SQLITE);
static final Set NO_SUPPORT_FOR_UPDATE_OF_FIELDS = SQLDialect.supportedBy(MYSQL, POSTGRES);
@@ -1767,7 +1767,6 @@ final class SelectQueryImpl extends AbstractResultQuery imp
case CUBRID:
case FIREBIRD:
- case MARIADB:
case MYSQL: {
if (getLimit().isApplicable() && getLimit().withTies())
toSQLReferenceLimitWithWindowFunctions(context);
@@ -3824,7 +3823,7 @@ final class SelectQueryImpl extends AbstractResultQuery imp
// [#12328] Don't recurse into the RHS if the join does not affect the projection
j -> j.type != JoinType.LEFT_ANTI_JOIN && j.type != JoinType.LEFT_SEMI_JOIN,
null,
-
+
// TODO: PostgreSQL supports tables without columns, see e.g.
// https://blog.jooq.org/creating-tables-dum-and-dee-in-postgresql/
(r, t) -> r && t.fieldsRow().size() > 0
diff --git a/jOOQ/src/main/java/org/jooq/tools/jdbc/JDBCUtils.java b/jOOQ/src/main/java/org/jooq/tools/jdbc/JDBCUtils.java
index d107295b73..df06f8319c 100644
--- a/jOOQ/src/main/java/org/jooq/tools/jdbc/JDBCUtils.java
+++ b/jOOQ/src/main/java/org/jooq/tools/jdbc/JDBCUtils.java
@@ -392,6 +392,8 @@ public class JDBCUtils {
+
+
return MARIADB;
}