mysql parser ddl support

This commit is contained in:
温少
2012-05-16 17:16:06 +08:00
parent c9614a5d2d
commit 7bc28d3b86
6 changed files with 104 additions and 8 deletions
@@ -70,6 +70,7 @@ 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.SQLDropIndexStatement;
import com.alibaba.druid.sql.ast.statement.SQLSelect;
import com.alibaba.druid.sql.ast.statement.SQLSelectGroupByClause;
import com.alibaba.druid.sql.ast.statement.SQLSelectItem;
@@ -1026,4 +1027,13 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter {
public void endVisit(SQLAlterTableAddColumn x) {
}
@Override
public boolean visit(SQLDropIndexStatement x) {
print("DROP INDEX ");
x.getIndexName().accept(this);
print(" ON ");
x.getTableName().accept(this);
return false;
}
}
@@ -60,6 +60,7 @@ import com.alibaba.druid.sql.ast.statement.SQLCommentStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateViewStatement;
import com.alibaba.druid.sql.ast.statement.SQLDeleteStatement;
import com.alibaba.druid.sql.ast.statement.SQLDropIndexStatement;
import com.alibaba.druid.sql.ast.statement.SQLDropTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLExprTableSource;
import com.alibaba.druid.sql.ast.statement.SQLInsertStatement;
@@ -345,4 +346,8 @@ public interface SQLASTVisitor {
boolean visit(SQLAlterTableDropColumnItem x);
void endVisit(SQLAlterTableDropColumnItem x);
boolean visit(SQLDropIndexStatement x);
void endVisit(SQLDropIndexStatement x);
}
@@ -59,6 +59,7 @@ import com.alibaba.druid.sql.ast.statement.SQLCommentStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateViewStatement;
import com.alibaba.druid.sql.ast.statement.SQLDeleteStatement;
import com.alibaba.druid.sql.ast.statement.SQLDropIndexStatement;
import com.alibaba.druid.sql.ast.statement.SQLDropTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLExprTableSource;
import com.alibaba.druid.sql.ast.statement.SQLInsertStatement;
@@ -606,4 +607,14 @@ public class SQLASTVisitorAdapter implements SQLASTVisitor {
public void endVisit(SQLAlterTableDropColumnItem x) {
}
@Override
public boolean visit(SQLDropIndexStatement x) {
return true;
}
@Override
public void endVisit(SQLDropIndexStatement x) {
}
}