sql parser refactor

This commit is contained in:
温少
2012-05-20 14:10:35 +08:00
15 changed files with 46 additions and 66 deletions
@@ -6,7 +6,6 @@ import com.alibaba.druid.sql.ast.statement.SQLSelectQuery;
import com.alibaba.druid.sql.dialect.sqlserver.ast.SQLServerSelect;
import com.alibaba.druid.sql.dialect.sqlserver.ast.SQLServerSelectQueryBlock;
import com.alibaba.druid.sql.dialect.sqlserver.ast.Top;
import com.alibaba.druid.sql.parser.Lexer;
import com.alibaba.druid.sql.parser.ParserException;
import com.alibaba.druid.sql.parser.SQLExprParser;
import com.alibaba.druid.sql.parser.SQLSelectParser;
@@ -15,12 +14,11 @@ import com.alibaba.druid.sql.parser.Token;
public class SQLServerSelectParser extends SQLSelectParser {
public SQLServerSelectParser(String sql){
super(new SQLServerLexer(sql));
this.lexer.nextToken();
super(new SQLServerExprParser(sql));
}
public SQLServerSelectParser(Lexer lexer){
super(lexer);
public SQLServerSelectParser(SQLExprParser exprParser){
super(exprParser);
}
public SQLSelect select() throws ParserException {
@@ -22,17 +22,15 @@ import com.alibaba.druid.sql.parser.SQLStatementParser;
public class SQLServerStatementParser extends SQLStatementParser {
public SQLServerStatementParser(String sql){
super(new SQLServerLexer(sql));
this.lexer.nextToken();
this.exprParser = new SQLServerExprParser(lexer);
super(new SQLServerExprParser(sql));
}
public SQLSelectParser createSQLSelectParser() {
return new SQLServerSelectParser(this.lexer);
return new SQLServerSelectParser(this.exprParser);
}
public SQLServerStatementParser(Lexer lexer){
super(lexer);
super(new SQLServerExprParser(lexer));
}
}