bug fixed for oracle sql parser

This commit is contained in:
温少
2012-02-28 18:37:05 +08:00
parent 4a0343f572
commit b7e4de2501
35 changed files with 1221 additions and 198 deletions
@@ -53,6 +53,7 @@ import com.alibaba.druid.sql.ast.expr.SQLQueryExpr;
import com.alibaba.druid.sql.ast.expr.SQLSomeExpr;
import com.alibaba.druid.sql.ast.expr.SQLUnaryExpr;
import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.NotNullConstraint;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnConstraint;
@@ -746,7 +747,7 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter {
}
@Override
public boolean visit(SQLSetStatement.Item x) {
public boolean visit(SQLAssignItem x) {
x.getTarget().accept(this);
print(" = ");
x.getValue().accept(this);
@@ -50,6 +50,7 @@ import com.alibaba.druid.sql.ast.expr.SQLQueryExpr;
import com.alibaba.druid.sql.ast.expr.SQLSomeExpr;
import com.alibaba.druid.sql.ast.expr.SQLUnaryExpr;
import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.NotNullConstraint;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
@@ -281,9 +282,9 @@ public interface SQLASTVisitor {
boolean visit(SQLSetStatement x);
void endVisit(SQLSetStatement.Item x);
void endVisit(SQLAssignItem x);
boolean visit(SQLSetStatement.Item x);
boolean visit(SQLAssignItem x);
void endVisit(SQLCallStatement x);
@@ -50,6 +50,7 @@ import com.alibaba.druid.sql.ast.expr.SQLQueryExpr;
import com.alibaba.druid.sql.ast.expr.SQLSomeExpr;
import com.alibaba.druid.sql.ast.expr.SQLUnaryExpr;
import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.NotNullConstraint;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
@@ -443,12 +444,12 @@ public class SQLASTVisitorAdapter implements SQLASTVisitor {
}
@Override
public void endVisit(SQLSetStatement.Item x) {
public void endVisit(SQLAssignItem x) {
}
@Override
public boolean visit(SQLSetStatement.Item x) {
public boolean visit(SQLAssignItem x) {
return true;
}
@@ -20,6 +20,7 @@ import com.alibaba.druid.sql.ast.expr.SQLInSubQueryExpr;
import com.alibaba.druid.sql.ast.expr.SQLIntegerExpr;
import com.alibaba.druid.sql.ast.expr.SQLMethodInvokeExpr;
import com.alibaba.druid.sql.ast.expr.SQLPropertyExpr;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
import com.alibaba.druid.sql.ast.statement.SQLCreateTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLDeleteStatement;
@@ -677,7 +678,7 @@ public class SchemaStatVisitor extends SQLASTVisitorAdapter {
setMode(x, Mode.Delete);
String ident = ((SQLIdentifierExpr) x.getTableName()).getName();
String ident = x.getTableName().toString();
currentTableLocal.set(ident);
TableStat stat = tableStats.get(ident);
@@ -753,4 +754,9 @@ public class SchemaStatVisitor extends SQLASTVisitorAdapter {
return false;
}
@Override
public boolean visit(SQLCallStatement x) {
return false;
}
}