mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
improved sql parser.
This commit is contained in:
@@ -23,6 +23,7 @@ public class H2Lexer extends Lexer {
|
||||
map.put("USING", Token.USING);
|
||||
|
||||
map.put("ROW", Token.ROW);
|
||||
map.put("LIMIT", Token.LIMIT);
|
||||
|
||||
DEFAULT_H2_KEYWORDS = new Keywords(map);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.alibaba.druid.sql.ast.statement.SQLSelect;
|
||||
import com.alibaba.druid.sql.dialect.h2.ast.H2MergeStatement;
|
||||
import com.alibaba.druid.sql.parser.*;
|
||||
import com.alibaba.druid.util.FnvHash;
|
||||
import com.alibaba.druid.util.JdbcConstants;
|
||||
|
||||
public class H2StatementParser extends SQLStatementParser {
|
||||
public H2StatementParser(String sql) {
|
||||
@@ -32,6 +33,7 @@ public class H2StatementParser extends SQLStatementParser {
|
||||
accept(Token.INTO);
|
||||
|
||||
SQLReplaceStatement stmt = new SQLReplaceStatement();
|
||||
stmt.setDbType(JdbcConstants.H2);
|
||||
|
||||
SQLName tableName = exprParser.name();
|
||||
stmt.setTableName(tableName);
|
||||
|
||||
@@ -1960,4 +1960,8 @@ public class Lexer {
|
||||
|
||||
return buf.toString();
|
||||
}
|
||||
|
||||
public String getSource() {
|
||||
return text;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -310,7 +310,7 @@ public class SQLSelectParser extends SQLParser {
|
||||
return withQueryClause;
|
||||
}
|
||||
|
||||
protected void parseWhere(SQLSelectQueryBlock queryBlock) {
|
||||
public void parseWhere(SQLSelectQueryBlock queryBlock) {
|
||||
if (lexer.token == Token.WHERE) {
|
||||
lexer.nextToken();
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.alibaba.druid.sql.ast.*;
|
||||
import com.alibaba.druid.sql.ast.expr.*;
|
||||
import com.alibaba.druid.sql.ast.statement.*;
|
||||
import com.alibaba.druid.sql.ast.statement.SQLCreateTriggerStatement.TriggerType;
|
||||
import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlSelectQueryBlock;
|
||||
import com.alibaba.druid.sql.dialect.oracle.parser.OracleExprParser;
|
||||
import com.alibaba.druid.util.FnvHash;
|
||||
import com.alibaba.druid.util.JdbcConstants;
|
||||
|
||||
Reference in New Issue
Block a user