Can use calcite-server parse DDLs, code :

SqlParser.Config sqlParserConfig = SqlParser.configBuilder()
        .setConformance(SqlConformanceEnum.MYSQL_5)
        .setLex(Lex.MYSQL)
        .build(); 
InputStream  inputStream = new ByteArrayInputStream(query.getBytes());
SqlDdlParserImpl parser = new SqlDdlParserImpl(inputStream);
parser.setConformance(parserConfig.conformance());
parser.setIdentifierMaxLength(parserConfig.identifierMaxLength());
parser.setQuotedCasing(parserConfig.quotedCasing());
parser.setUnquotedCasing(parserConfig.unquotedCasing());
SqlNode  sqlNode = parser.parseSqlStmtEof();






------------------ ???????? ------------------
??????: "Dilip Raj Baral"<di...@diliprajbaral.com>;
????????: 2018??12??16??(??????) ????6:19
??????: "dev"<dev@calcite.apache.org>;
????: "Dilip Raj Baral"<rajb.di...@gmail.com>; 
????: Can??t seem to parse DDL staements



Hi, team.

I have been using Apache Calcite for about two weeks now for one of the 
projects at my company. I have found it fun and pretty useful so far. I have 
been able to parse DMLs very smoothly. However, when I tried to parse DDLs like 
CREATE TABLE, ALTER TABLE, etc., the SqlParser.parseStmt() or 
SqlParser.parseQuery() failed.

I have detailed the specifics in the following SO question.

https://stackoverflow.com/questions/53801005/apache-calcite-cant-seem-to-parse-ddl-statements

Looking forward to a suggestion.

Best regards,
Dilip Raj Baral
https://diliprajbaral.com

Reply via email to