mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
bug fixed for SQLSelect.toString(). for issue #2096
This commit is contained in:
@@ -21,6 +21,7 @@ import java.util.List;
|
||||
import com.alibaba.druid.sql.SQLUtils;
|
||||
import com.alibaba.druid.sql.ast.*;
|
||||
import com.alibaba.druid.sql.dialect.oracle.ast.OracleSQLObject;
|
||||
import com.alibaba.druid.sql.visitor.SQLASTOutputVisitor;
|
||||
import com.alibaba.druid.sql.visitor.SQLASTVisitor;
|
||||
import com.alibaba.druid.util.JdbcConstants;
|
||||
|
||||
@@ -143,6 +144,26 @@ public class SQLSelect extends SQLObjectImpl {
|
||||
return true;
|
||||
}
|
||||
|
||||
public void output(StringBuffer buf) {
|
||||
String dbType = null;
|
||||
|
||||
SQLObject parent = this.getParent();
|
||||
if (parent instanceof SQLStatement) {
|
||||
dbType = ((SQLStatement) parent).getDbType();
|
||||
}
|
||||
|
||||
if (dbType == null && parent instanceof OracleSQLObject) {
|
||||
dbType = JdbcConstants.ORACLE;
|
||||
}
|
||||
|
||||
if (dbType == null && query instanceof SQLSelectQueryBlock) {
|
||||
dbType = ((SQLSelectQueryBlock) query).dbType;
|
||||
}
|
||||
|
||||
SQLASTOutputVisitor visitor = SQLUtils.createOutputVisitor(buf, dbType);
|
||||
this.accept(visitor);
|
||||
}
|
||||
|
||||
public String toString() {
|
||||
SQLObject parent = this.getParent();
|
||||
if (parent instanceof SQLStatement) {
|
||||
|
||||
Reference in New Issue
Block a user