mysql parser refactor

This commit is contained in:
温少
2012-05-16 16:13:50 +08:00
parent c630a6b97b
commit 4b0b51656e
14 changed files with 533 additions and 198 deletions
@@ -69,6 +69,7 @@ import com.alibaba.druid.sql.ast.statement.SQLInsertStatement.ValuesClause;
import com.alibaba.druid.sql.ast.statement.SQLJoinTableSource;
import com.alibaba.druid.sql.ast.statement.SQLJoinTableSource.JoinType;
import com.alibaba.druid.sql.ast.statement.SQLAlterTableAddColumn;
import com.alibaba.druid.sql.ast.statement.SQLAlterTableDropColumnItem;
import com.alibaba.druid.sql.ast.statement.SQLSelect;
import com.alibaba.druid.sql.ast.statement.SQLSelectGroupByClause;
import com.alibaba.druid.sql.ast.statement.SQLSelectItem;
@@ -1013,6 +1014,13 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter {
print(")");
return false;
}
@Override
public boolean visit(SQLAlterTableDropColumnItem x) {
print("DROP COLUMN ");
x.getColumnName().accept(this);
return false;
}
@Override
public void endVisit(SQLAlterTableAddColumn x) {
@@ -52,6 +52,7 @@ import com.alibaba.druid.sql.ast.expr.SQLUnaryExpr;
import com.alibaba.druid.sql.ast.expr.SQLVariantRefExpr;
import com.alibaba.druid.sql.ast.statement.NotNullConstraint;
import com.alibaba.druid.sql.ast.statement.SQLAlterTableAddColumn;
import com.alibaba.druid.sql.ast.statement.SQLAlterTableDropColumnItem;
import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
@@ -340,4 +341,8 @@ public interface SQLASTVisitor {
boolean visit(SQLAlterTableAddColumn x);
void endVisit(SQLAlterTableAddColumn x);
boolean visit(SQLAlterTableDropColumnItem x);
void endVisit(SQLAlterTableDropColumnItem x);
}
@@ -51,6 +51,7 @@ 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.NotNullConstraint;
import com.alibaba.druid.sql.ast.statement.SQLAlterTableDropColumnItem;
import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
@@ -595,4 +596,14 @@ public class SQLASTVisitorAdapter implements SQLASTVisitor {
public void endVisit(SQLAlterTableAddColumn x) {
}
@Override
public boolean visit(SQLAlterTableDropColumnItem x) {
return true;
}
@Override
public void endVisit(SQLAlterTableDropColumnItem x) {
}
}