Skip to content

DROP DEFAULT cannot be parsed #1517

@jackiezh

Description

@jackiezh

Describe the bug
ALTER COLUMN xxx DROP DEFAULT cannot be parsed.

To Reproduce
Steps to reproduce the behavior:

  1. Example SQL
    ALTER TABLE table_a ALTER COLUMN col_a DROP DEFAULT;
    ALTER TABLE table_a ALTER col_a DROP DEFAULT;

  2. Parsing this SQL using JSqlParser with this statements
    analizeSQL("ALTER TABLE table_a ALTER COLUMN col_a DROP DEFAULT");
    analizeSQL("ALTER TABLE table_a ALTER col_a DROP DEFAULT");

  3. Exception
    // analizeSQL("ALTER TABLE table_a ALTER COLUMN col_a DROP DEFAULT");
    net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "DEFAULT" "DEFAULT"
    at line 1, column 45.

Was expecting one of:

"NOT"
"NULL"

at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:31468)
at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:31301)
at net.sf.jsqlparser.parser.CCJSqlParser.AlterExpressionColumnDropNotNull(CCJSqlParser.java:16732)
at net.sf.jsqlparser.parser.CCJSqlParser.AlterExpression(CCJSqlParser.java:17027)
at net.sf.jsqlparser.parser.CCJSqlParser.AlterTable(CCJSqlParser.java:17947)
at net.sf.jsqlparser.parser.CCJSqlParser.SingleStatement(CCJSqlParser.java:267)
at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:153)
at net.sf.jsqlparser.parser.CCJSqlParserUtil.parseStatement(CCJSqlParserUtil.java:188)

// analizeSQL("ALTER TABLE table_a ALTER col_a DROP DEFAULT");
net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "DROP" "DROP"
at line 1, column 33.

Was expecting:

"COMMENT"

at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:31468)
at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:31301)
at net.sf.jsqlparser.parser.CCJSqlParser.AlterExpression(CCJSqlParser.java:17489)
at net.sf.jsqlparser.parser.CCJSqlParser.AlterTable(CCJSqlParser.java:17947)
at net.sf.jsqlparser.parser.CCJSqlParser.SingleStatement(CCJSqlParser.java:267)
at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:153)
at net.sf.jsqlparser.parser.CCJSqlParserUtil.parseStatement(CCJSqlParserUtil.java:188)

System

  • Database you are using: PostgreSQL
  • Java Version: java-1.8
  • JSqlParser version: 4.4

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions