Merge pull request #547 from yakolee/master

bugfix & improve sql parser
This commit is contained in:
Yako
2014-06-01 12:22:04 +08:00
20 changed files with 337 additions and 78 deletions
@@ -100,6 +100,7 @@ public class SQLServerLexer extends Lexer {
} else {
stringVal = subString(mark, bufPos);
token = Token.MULTI_LINE_COMMENT;
hasComment = true;
}
if (token != Token.HINT && !isAllowComment()) {
@@ -142,6 +143,7 @@ public class SQLServerLexer extends Lexer {
stringVal = subString(mark + 1, bufPos);
token = Token.LINE_COMMENT;
hasComment = true;
return;
}
}
@@ -22,6 +22,7 @@ import com.alibaba.druid.sql.ast.expr.SQLIntegerExpr;
import com.alibaba.druid.sql.ast.expr.SQLNCharExpr;
import com.alibaba.druid.sql.ast.expr.SQLNullExpr;
import com.alibaba.druid.sql.ast.expr.SQLNumberExpr;
import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.visitor.ParameterizedOutputVisitorUtils;
import com.alibaba.druid.sql.visitor.ParameterizedVisitor;
@@ -90,5 +91,13 @@ public class SQLServerParameterizedOutputVisitor extends SQLServerOutputVisitor
return ParameterizedOutputVisitorUtils.visit(this, x);
}
public boolean visit(SQLVariantRefExpr x) {
if (!ParameterizedOutputVisitorUtils.checkParameterize(x) || x.getName().equalsIgnoreCase("?")) {
return super.visit(x);
}
return ParameterizedOutputVisitorUtils.visit(this, x);
}
}