sql parser support create database

This commit is contained in:
温少
2012-06-02 19:43:11 +08:00
parent 9a9aa1625c
commit 3e68ac4161
14 changed files with 312 additions and 149 deletions
@@ -74,6 +74,7 @@ import com.alibaba.druid.sql.ast.statement.SQLInsertStatement;
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.SQLCreateDatabaseStatement;
import com.alibaba.druid.sql.ast.statement.SQLReleaseSavePointStatement;
import com.alibaba.druid.sql.ast.statement.SQLRollbackStatement;
import com.alibaba.druid.sql.ast.statement.SQLSavePointStatement;
@@ -1116,4 +1117,11 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter {
print("*/");
return false;
}
@Override
public boolean visit(SQLCreateDatabaseStatement x) {
print("CREATE DATABASE ");
x.getName().accept(this);
return false;
}
}
@@ -58,6 +58,7 @@ import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
import com.alibaba.druid.sql.ast.statement.SQLCommentStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateDatabaseStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateViewStatement;
import com.alibaba.druid.sql.ast.statement.SQLDeleteStatement;
@@ -367,12 +368,16 @@ public interface SQLASTVisitor {
boolean visit(SQLRollbackStatement x);
void endVisit(SQLRollbackStatement x);
boolean visit(SQLReleaseSavePointStatement x);
void endVisit(SQLReleaseSavePointStatement x);
void endVisit(SQLCommentHint x);
boolean visit(SQLCommentHint x);
void endVisit(SQLCreateDatabaseStatement x);
boolean visit(SQLCreateDatabaseStatement x);
}
@@ -58,6 +58,7 @@ import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
import com.alibaba.druid.sql.ast.statement.SQLCommentStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateDatabaseStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateTableStatement;
import com.alibaba.druid.sql.ast.statement.SQLCreateViewStatement;
import com.alibaba.druid.sql.ast.statement.SQLDeleteStatement;
@@ -671,4 +672,14 @@ public class SQLASTVisitorAdapter implements SQLASTVisitor {
public void endVisit(SQLCommentHint x) {
}
@Override
public void endVisit(SQLCreateDatabaseStatement x) {
}
@Override
public boolean visit(SQLCreateDatabaseStatement x) {
return true;
}
}