diff --git a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java index 4c0781932e..39b0841064 100644 --- a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTOutputVisitor.java @@ -1192,6 +1192,16 @@ public class SQLASTOutputVisitor extends SQLASTVisitorAdapter implements Printab return false; } + public boolean visit(NullConstraint x) { + if (x.getName() != null) { + print0(ucase ? "CONSTRAINT " : "constraint "); + x.getName().accept(this); + print(' '); + } + print0(ucase ? "NULL" : "null"); + return false; + } + @Override public boolean visit(SQLUnionQuery x) { x.getLeft().accept(this); diff --git a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitor.java b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitor.java index 0f641957e7..61df27ff28 100644 --- a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitor.java +++ b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitor.java @@ -716,4 +716,9 @@ public interface SQLASTVisitor { boolean visit(SQLErrorLoggingClause x); void endVisit(SQLErrorLoggingClause x); + + boolean visit(NullConstraint x); + + void endVisit(NullConstraint x); + } diff --git a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitorAdapter.java b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitorAdapter.java index fb20641240..182962c8df 100644 --- a/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitorAdapter.java +++ b/src/main/java/com/alibaba/druid/sql/visitor/SQLASTVisitorAdapter.java @@ -1565,4 +1565,13 @@ public class SQLASTVisitorAdapter implements SQLASTVisitor { public void endVisit(SQLErrorLoggingClause x) { } + + @Override + public boolean visit(NullConstraint x) { + return true; + } + + @Override + public void endVisit(NullConstraint x) { + } }