mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
support EnterpriseDB.
This commit is contained in:
@@ -23,6 +23,7 @@ import com.alibaba.druid.sql.ast.statement.SQLDescribeStatement;
|
||||
import com.alibaba.druid.sql.ast.statement.SQLObjectType;
|
||||
import com.alibaba.druid.sql.dialect.odps.visitor.OdpsASTVisitor;
|
||||
import com.alibaba.druid.sql.visitor.SQLASTVisitor;
|
||||
import com.alibaba.druid.util.JdbcConstants;
|
||||
|
||||
public class OdpsDescStmt extends SQLDescribeStatement {
|
||||
|
||||
@@ -30,6 +31,10 @@ public class OdpsDescStmt extends SQLDescribeStatement {
|
||||
|
||||
private List<SQLExpr> partition = new ArrayList<SQLExpr>();
|
||||
|
||||
public OdpsDescStmt() {
|
||||
this.setDbType(JdbcConstants.ODPS);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void accept0(SQLASTVisitor visitor) {
|
||||
accept0((OdpsASTVisitor) visitor);
|
||||
|
||||
@@ -53,7 +53,8 @@ public class SQLParserUtils {
|
||||
return new MySqlStatementParser(sql);
|
||||
}
|
||||
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)) {
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)
|
||||
|| JdbcUtils.ENTERPRISE_DB.equals(dbType)) {
|
||||
return new PGSQLStatementParser(sql);
|
||||
}
|
||||
|
||||
@@ -91,7 +92,8 @@ public class SQLParserUtils {
|
||||
return new MySqlExprParser(sql);
|
||||
}
|
||||
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)) {
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)
|
||||
|| JdbcUtils.ENTERPRISE_DB.equals(dbType)) {
|
||||
return new PGExprParser(sql);
|
||||
}
|
||||
|
||||
@@ -125,7 +127,8 @@ public class SQLParserUtils {
|
||||
return new MySqlLexer(sql);
|
||||
}
|
||||
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)) {
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)
|
||||
|| JdbcUtils.ENTERPRISE_DB.equals(dbType)) {
|
||||
return new PGLexer(sql);
|
||||
}
|
||||
|
||||
|
||||
@@ -58,9 +58,12 @@ public final class ExportParameterVisitorUtils {
|
||||
if (JdbcUtils.H2.equals(dbType)) {
|
||||
return new MySqlExportParameterVisitor(out);
|
||||
}
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)) {
|
||||
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)
|
||||
|| JdbcUtils.ENTERPRISE_DB.equals(dbType)) {
|
||||
return new PGExportParameterVisitor(out);
|
||||
}
|
||||
|
||||
if (JdbcUtils.SQL_SERVER.equals(dbType) || JdbcUtils.JTDS.equals(dbType)) {
|
||||
return new MSSQLServerExportParameterVisitor(out);
|
||||
}
|
||||
|
||||
@@ -90,7 +90,8 @@ public class ParameterizedOutputVisitorUtils {
|
||||
return new MySqlOutputVisitor(out, true);
|
||||
}
|
||||
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)) {
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)
|
||||
|| JdbcUtils.ENTERPRISE_DB.equals(dbType)) {
|
||||
return new PGOutputVisitor(out, true);
|
||||
}
|
||||
|
||||
|
||||
@@ -90,6 +90,7 @@ import com.alibaba.druid.sql.visitor.functions.Trim;
|
||||
import com.alibaba.druid.sql.visitor.functions.Ucase;
|
||||
import com.alibaba.druid.sql.visitor.functions.Unhex;
|
||||
import com.alibaba.druid.util.HexBin;
|
||||
import com.alibaba.druid.util.JdbcConstants;
|
||||
import com.alibaba.druid.util.JdbcUtils;
|
||||
import com.alibaba.druid.util.Utils;
|
||||
import com.alibaba.druid.wall.spi.WallVisitorUtils;
|
||||
@@ -167,7 +168,8 @@ public class SQLEvalVisitorUtils {
|
||||
return new OracleEvalVisitor();
|
||||
}
|
||||
|
||||
if (JdbcUtils.POSTGRESQL.equals(dbType)) {
|
||||
if (JdbcConstants.POSTGRESQL.equals(dbType)
|
||||
|| JdbcConstants.ENTERPRISE_DB.equals(dbType)) {
|
||||
return new PGEvalVisitor();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user