From f490ac8a67ed44b5d15c82dbeb9c2ea830531299 Mon Sep 17 00:00:00 2001 From: wenshao Date: Sat, 27 Sep 2014 17:01:20 +0800 Subject: [PATCH 1/2] bug fixed for schema stat visitor --- .../java/com/alibaba/druid/sql/visitor/SchemaStatVisitor.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/alibaba/druid/sql/visitor/SchemaStatVisitor.java b/src/main/java/com/alibaba/druid/sql/visitor/SchemaStatVisitor.java index 7153bf58cc..6f24538a2c 100644 --- a/src/main/java/com/alibaba/druid/sql/visitor/SchemaStatVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/visitor/SchemaStatVisitor.java @@ -964,6 +964,7 @@ public class SchemaStatVisitor extends SQLASTVisitorAdapter { x.getOrderBy().setParent(x); } + accept(x.getWithSubQuery()); accept(x.getQuery()); String originalTable = getCurrentTable(); From d4259426583f3e7cbab2d93ef55d6e175943cf98 Mon Sep 17 00:00:00 2001 From: wenshao Date: Sat, 27 Sep 2014 17:01:47 +0800 Subject: [PATCH 2/2] bug fixed for schema stat visitor --- .../oracle/visitor/OracleSchemaStatVisitor.java | 15 +-------------- 1 file changed, 1 insertion(+), 14 deletions(-) diff --git a/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleSchemaStatVisitor.java b/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleSchemaStatVisitor.java index 7a6f2049c0..a6ba5053cd 100644 --- a/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleSchemaStatVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/dialect/oracle/visitor/OracleSchemaStatVisitor.java @@ -265,20 +265,7 @@ public class OracleSchemaStatVisitor extends SchemaStatVisitor implements Oracle } public boolean visit(OracleSelect x) { - setCurrentTable(x); - - if (x.getOrderBy() != null) { - x.getOrderBy().setParent(x); - } - - accept(x.getWithSubQuery()); - accept(x.getQuery()); - - setCurrentTable(x, (String) x.getQuery().getAttribute("table")); - - accept(x.getOrderBy()); - - return false; + return visit((SQLSelect) x); } public void endVisit(SQLSelect x) {