diff -r 3380ae5275be -r 7f81cfa150d0 java/sql-dk/src/main/java/info/globalcode/sql/dk/formatting/AbstractFormatter.java --- a/java/sql-dk/src/main/java/info/globalcode/sql/dk/formatting/AbstractFormatter.java Mon Apr 29 01:27:26 2019 +0200 +++ b/java/sql-dk/src/main/java/info/globalcode/sql/dk/formatting/AbstractFormatter.java Tue Apr 30 19:49:17 2019 +0200 @@ -41,12 +41,21 @@ private String currentQuery; private int currentColumnsCount; private int currentRowCount; + private int resultSetCount; public AbstractFormatter(FormatterContext formatterContext) { this.formatterContext = formatterContext; state.push(State.ROOT); } + protected String getCurrentRelationName() { + if (getFormatterContext().getRelationNames() == null || getFormatterContext().getRelationNames().size() < resultSetCount) { + return "r" + resultSetCount; + } else { + return getFormatterContext().getRelationNames().get(resultSetCount - 1); + } + } + /* * root * .batch @@ -126,6 +135,7 @@ @Override public void writeStartBatch() { pushState(State.BATCH, EnumSet.of(State.ROOT)); + resultSetCount = 0; } @Override @@ -156,6 +166,7 @@ @Override public void writeStartResultSet(ColumnsHeader header) { pushState(State.RESULT_SET, EnumSet.of(State.STATEMENT)); + resultSetCount++; currentRowCount = 0; currentColumnsHeader = header; }