diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java
index daa9f6785e..263d83ccff 100644
--- a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java
+++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java
@@ -897,6 +897,12 @@ public abstract class AbstractDatabase implements Database {
while (it2.hasNext()) {
ForcedType type = it2.next();
+ if (type.getExpressions() != null) {
+ type.setExpression(type.getExpressions());
+ type.setExpressions(null);
+ log.warn("DEPRECATED", "The element in is deprecated. Use instead: " + toString(type));
+ }
+
if (StringUtils.isBlank(type.getName())) {
if (StringUtils.isBlank(type.getUserType())) {
log.warn("Bad configuration for . Either or is required: " + toString(type));
@@ -1233,13 +1239,7 @@ public abstract class AbstractDatabase implements Database {
public final ForcedType getConfiguredForcedType(Definition definition, DataTypeDefinition definedType) {
forcedTypeLoop:
for (ForcedType forcedType : getConfiguredForcedTypes()) {
- String expression = forcedType.getExpression();
-
- if (forcedType.getExpressions() != null) {
- expression = forcedType.getExpressions();
- log.warn("DEPRECATED", "The element in is deprecated. Use instead");
- }
-
+ String expression = StringUtils.defaultIfNull(forcedType.getExpressions(), forcedType.getExpression());
String types = forcedType.getTypes();
if (expression != null) {