improve sql parser

This commit is contained in:
wenshao
2013-04-17 22:00:45 +08:00
parent 22340f0244
commit f5b968ba59
6 changed files with 98 additions and 0 deletions
@@ -83,6 +83,7 @@ import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLCharactorDataType;
import com.alibaba.druid.sql.ast.statement.SQLCheck;
import com.alibaba.druid.sql.ast.statement.SQLColumnCheck;
import com.alibaba.druid.sql.ast.statement.SQLColumnConstraint;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
import com.alibaba.druid.sql.ast.statement.SQLColumnPrimaryKey;
@@ -1333,6 +1334,13 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter {
print(" PRIMARY KEY");
return false;
}
@Override
public boolean visit(SQLColumnCheck x) {
print("CHECK ");
x.getExpr().accept(this);
return false;
}
@Override
public boolean visit(SQLColumnUniqueIndex x) {
@@ -70,6 +70,7 @@ import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLCharactorDataType;
import com.alibaba.druid.sql.ast.statement.SQLCheck;
import com.alibaba.druid.sql.ast.statement.SQLColumnCheck;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
import com.alibaba.druid.sql.ast.statement.SQLColumnPrimaryKey;
import com.alibaba.druid.sql.ast.statement.SQLColumnUniqueIndex;
@@ -469,4 +470,8 @@ public interface SQLASTVisitor {
boolean visit(SQLAlterTableEnableConstraint x);
void endVisit(SQLAlterTableEnableConstraint x);
boolean visit(SQLColumnCheck x);
void endVisit(SQLColumnCheck x);
}
@@ -70,6 +70,7 @@ import com.alibaba.druid.sql.ast.statement.SQLAssignItem;
import com.alibaba.druid.sql.ast.statement.SQLCallStatement;
import com.alibaba.druid.sql.ast.statement.SQLCharactorDataType;
import com.alibaba.druid.sql.ast.statement.SQLCheck;
import com.alibaba.druid.sql.ast.statement.SQLColumnCheck;
import com.alibaba.druid.sql.ast.statement.SQLColumnDefinition;
import com.alibaba.druid.sql.ast.statement.SQLColumnPrimaryKey;
import com.alibaba.druid.sql.ast.statement.SQLColumnUniqueIndex;
@@ -874,5 +875,14 @@ public class SQLASTVisitorAdapter implements SQLASTVisitor {
@Override
public void endVisit(SQLAlterTableEnableConstraint x) {
}
@Override
public boolean visit(SQLColumnCheck x) {
return true;
}
@Override
public void endVisit(SQLColumnCheck x) {
}
}