diff --git a/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLTableDefinition.java index 42e4e339bf..e31f7d1c1d 100644 --- a/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLTableDefinition.java +++ b/jOOQ-meta/src/main/java/org/jooq/meta/mysql/MySQLTableDefinition.java @@ -113,7 +113,6 @@ public class MySQLTableDefinition extends AbstractTableDefinition { boolean displayWidths = getDatabase().integerDisplayWidths(); // [#6492] MariaDB supports a standard IS_GENERATED, but MySQL doesn't (yet) - boolean generated = record.get(COLUMNS.EXTRA) != null && record.get(COLUMNS.EXTRA).toUpperCase().contains("GENERATED"); GenerationOption generationOption = "VIRTUAL GENERATED".equalsIgnoreCase(record.get(COLUMNS.EXTRA)) ? GenerationOption.VIRTUAL @@ -121,6 +120,9 @@ public class MySQLTableDefinition extends AbstractTableDefinition { ? GenerationOption.STORED : null; + // [#13818] Some DEFAULT expressions (e.g. CURRENT_TIMESTAMP) produce a DEFAULT_GENERATED value in EXTRA + boolean generated = generationOption != null; + columnTypeFix: if (unsigned || displayWidths) { if (asList("tinyint", "smallint", "mediumint", "int", "bigint").contains(dataType.toLowerCase())) {