diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/AbstractGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/AbstractGenerator.java
index a831a75bcf..cbb94eee75 100644
--- a/jOOQ-codegen/src/main/java/org/jooq/codegen/AbstractGenerator.java
+++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/AbstractGenerator.java
@@ -473,7 +473,8 @@ abstract class AbstractGenerator implements Generator {
public boolean generateTables() {
// [#5525] When DAOs or records are generated, tables must be generated, too
- return generateTables || generateRecords || generateDaos;
+ // [#12992] When indexes are generated, tables must be generated.
+ return generateTables || generateRecords || generateDaos || generateIndexes;
}
@Override
diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java
index 20625e48bb..eaa8e85529 100644
--- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java
+++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java
@@ -459,7 +459,8 @@ public class JavaGenerator extends AbstractGenerator {
log.info(" table-valued functions", generateTableValuedFunctions());
log.info(" tables", generateTables()
+ ((!generateTables && generateRecords) ? " (forced to true because of )" :
- ((!generateTables && generateDaos) ? " (forced to true because of )" : "")));
+ ((!generateTables && generateDaos) ? " (forced to true because of )" :
+ ((!generateTables && generateIndexes) ? " (forced to true because of )" : ""))));
log.info(" udts", generateUDTs());
log.info(" relations", generateRelations()
+ ((!generateRelations && generateTables) ? " (forced to true because of )" :